Télécharger atiso.eso

Retour à la liste

Numérotation des lignes :

  1. C ATISO SOURCE JC220346 17/08/03 21:15:01 9524
  2. C
  3. SUBROUTINE ATISO(MELEME,ICPR,XPROJ,VCPCHA,VCHC,IVU,PTI,NISO,MCOUP,
  4. > mcham,BLOK)
  5. CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  6. C C
  7. C APPEL DU TRACE DES ISOVALEURS D UN OBJET DE TYPE CHAMPOINT C
  8. C ==>EN DIMENSION 2 ET 3 C
  9. C ==>AVEC VERIFICATIOM SI ICACHE=1 SI LES FACES SONT VISIBLES OU C
  10. C NON C
  11. C C
  12. C AOUT 85 C
  13. CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  14. C
  15. IMPLICIT INTEGER(I-N)
  16. SEGMENT ICPR(0)
  17. SEGMENT VCPCHA(XCOOR(/1)/(IDIM+1))
  18. SEGMENT XPROJ(3,ICPR(/1))
  19. SEGMENT IVU(ICPR(/1))
  20. REAL BLOK
  21. REAL VCHC
  22. DIMENSION VCHC(*)
  23. DIMENSION XX(4),YY(4),ZZ(4),VV(4)
  24. -INC CCOPTIO
  25. -INC CCGEOME
  26. -INC SMELEME
  27. -INC SMCHPOI
  28. -INC SMCOORD
  29. -INC SMLREEL
  30. -INC SMCHAML
  31. C
  32. C ON FAIT LE TRACER DES ISOVALEURS D UN CHAMPOINT ou d'un chamelem
  33. C SI ON EST EN OPTION ISOV SURF ON VA APPELE FACED2
  34. C
  35. C SG Pourquoi separe-t-on le cas ISOTYP=0 et les autres ?
  36. C Cela semble etre essentiellement du au fait que tciso ne gere pas
  37. C bien ISOTYP=0. Egalement, il y a le trace des labels au bord
  38. C gestion des enveloppes egalement ?
  39. *dbg Write(ioimp,*) 'coucou atiso'
  40. IF (ISOTYP.GT.0) THEN
  41. CALL FACED2(MELEME,XPROJ,ICPR,VCHC,VCPCHA,PTI,NISO,IVU,MCOUP
  42. $ ,mcham,BLOK)
  43. RETURN
  44. ENDIF
  45. SEGACT ICPR
  46. NELEM=0
  47. IPT1=MELEME
  48. SEGACT MELEME
  49. DO 3101 IOB=1,MAX(1,LISOUS(/1))
  50. IF (LISOUS(/1).NE.0) THEN
  51. IPT1=LISOUS(IOB)
  52. SEGACT IPT1
  53. ENDIF
  54. NELEM=NELEM+IPT1.NUM(/2)
  55. 3101 CONTINUE
  56. C
  57. C ON TRAVAILLE PAR OBJET ELEMENTAIRE
  58. C
  59. IPT1=MELEME
  60. DO 20100 IOB=1,MAX(1,LISOUS(/1))
  61. IF (LISOUS(/1).NE.0) IPT1=LISOUS(IOB)
  62. if (mcham.ne.0) melval=lisref(iob)
  63. IF (KSURF(IPT1.ITYPEL).EQ.0) GOTO 20150
  64. NBELEM=IPT1.NUM(/2)
  65. NBFAC=LTEL(1,IPT1.ITYPEL)
  66. IAD=LTEL(2,IPT1.ITYPEL)-1
  67. IF (NBFAC.EQ.0) GOTO 20150
  68. DO 20200 IFAC=1,NBFAC
  69. ITYP=LDEL(1,IAD+IFAC)
  70. JAD=LDEL(2,IAD+IFAC)-1
  71. IDEP=KDFAC(2,ITYP)
  72. IFEP=IDEP+3*(KDFAC(3,ITYP)-1)
  73. IF (ITYP.EQ.1.OR.ITYP.EQ.3.OR.ITYP.EQ.7.OR.ITYP.EQ.8) THEN
  74. DO 20225 ITRIAN=IDEP,IFEP,3
  75. IAFA=LFAC(JAD+KFAC(ITRIAN))
  76. IBFA=LFAC(JAD+KFAC(ITRIAN+1))
  77. ICFA=LFAC(JAD+KFAC(ITRIAN+2))
  78. if(mcham.ne.0) then
  79. iafam=min(iafa,velche(/1))
  80. ibfam=min(ibfa,velche(/1))
  81. icfam=min(icfa,velche(/1))
  82. endif
  83. DO 20226 IEL=1,NBELEM
  84. ielm=iel
  85. if(mcham.ne.0) then
  86. ielm=min(iel,velche(/2))
  87. endif
  88. IA=ICPR(IPT1.NUM(IAFA,IEL))
  89. IB=ICPR(IPT1.NUM(IBFA,IEL))
  90. IC=ICPR(IPT1.NUM(ICFA,IEL))
  91. IF (IVU(IA).EQ.1.AND.IVU(IB).EQ.1.AND.IVU(IC).EQ.1)
  92. $ THEN
  93. XX(1)=XPROJ(1,IA)
  94. XX(2)=XPROJ(1,IB)
  95. XX(3)=XPROJ(1,IC)
  96. YY(1)=XPROJ(2,IA)
  97. YY(2)=XPROJ(2,IB)
  98. YY(3)=XPROJ(2,IC)
  99. ZZ(1)=XPROJ(3,IA)
  100. ZZ(2)=XPROJ(3,IB)
  101. ZZ(3)=XPROJ(3,IC)
  102. if (mcham.eq.0) then
  103. VV(1)=VCPCHA(IPT1.NUM(IAFA,IEL))
  104. VV(2)=VCPCHA(IPT1.NUM(IBFA,IEL))
  105. VV(3)=VCPCHA(IPT1.NUM(ICFA,IEL))
  106. else
  107. VV(1)=velche(IAFAm,IELm)
  108. VV(2)=velche(IBFAm,IELm)
  109. VV(3)=velche(ICFAm,IELm)
  110. endif
  111. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  112. ENDIF
  113. 20226 continue
  114. 20225 CONTINUE
  115. ELSEIF (ITYP.EQ.2) THEN
  116. * cas des quadrangles on rajoute un point au milieu
  117. DO 20235 IEL=1,NBELEM
  118. IAFA=LFAC(JAD+1)
  119. IBFA=LFAC(JAD+2)
  120. ICFA=LFAC(JAD+3)
  121. IDFA=LFAC(JAD+4)
  122. if(mcham.ne.0) then
  123. ielm=min(iel,velche(/2))
  124. iafam=min(iafa,velche(/1))
  125. ibfam=min(ibfa,velche(/1))
  126. icfam=min(icfa,velche(/1))
  127. idfam=min(idfa,velche(/1))
  128. endif
  129. ia=icpr(ipt1.num(iafa,iel))
  130. ib=icpr(ipt1.num(ibfa,iel))
  131. ic=icpr(ipt1.num(icfa,iel))
  132. id=icpr(ipt1.num(idfa,iel))
  133. IF (IVU(IA).EQ.1.AND.IVU(IB).EQ.1.AND.IVU(IC).EQ.1
  134. $ .and.IVU(Id).EQ.1) THEN
  135. xxm=(XPROJ(1,IA)+XPROJ(1,IB)
  136. $ +XPROJ(1,IC)+XPROJ(1,ID))/4
  137. yym=(XPROJ(2,IA)+XPROJ(2,IB)
  138. $ +XPROJ(2,IC)+XPROJ(2,ID))/4
  139. zzm=(XPROJ(3,IA)+XPROJ(3,IB)
  140. $ +XPROJ(3,IC)+XPROJ(3,ID))/4
  141. if (mcham.eq.0) then
  142. vvm=(VCPCHA(ipt1.num(iafa,iel))
  143. $ +VCPCHA(ipt1.num(ibfa,iel))
  144. $ +VCPCHA(ipt1.num(icfa,iel))
  145. $ +VCPCHA(ipt1.num(idfa,iel)))/4
  146. else
  147. vvm=(velche(iafam,ielm)+velche(ibfam,ielm)
  148. * +velche(icfam,ielm)+velche(idfam,ielm))/4
  149. endif
  150. XX(1)=XPROJ(1,IA)
  151. XX(2)=XPROJ(1,IB)
  152. YY(1)=XPROJ(2,IA)
  153. YY(2)=XPROJ(2,IB)
  154. ZZ(1)=XPROJ(3,IA)
  155. ZZ(2)=XPROJ(3,IB)
  156. if (mcham.eq.0) then
  157. VV(1)=VCPCHA(IPT1.NUM(IAFA,IEL))
  158. VV(2)=VCPCHA(IPT1.NUM(IBFA,IEL))
  159. else
  160. VV(1)=velche(IAFAm,IELm)
  161. VV(2)=velche(IBFAm,IELm)
  162. endif
  163. XX(3)=XXM
  164. YY(3)=YYM
  165. ZZ(3)=ZZM
  166. VV(3)=VVM
  167. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  168. XX(2)=XPROJ(1,ID)
  169. YY(2)=XPROJ(2,ID)
  170. ZZ(2)=XPROJ(3,ID)
  171. if (mcham.eq.0) then
  172. VV(2)=VCPCHA(IPT1.NUM(IDFA,IEL))
  173. else
  174. VV(2)=velche(IDFAm,IELm)
  175. endif
  176. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  177. XX(1)=XPROJ(1,IC)
  178. YY(1)=XPROJ(2,IC)
  179. ZZ(1)=XPROJ(3,IC)
  180. if (mcham.eq.0) then
  181. VV(1)=VCPCHA(IPT1.NUM(ICFA,IEL))
  182. else
  183. VV(1)=velche(ICFAm,IELm)
  184. endif
  185. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  186. XX(2)=XPROJ(1,IB)
  187. YY(2)=XPROJ(2,IB)
  188. ZZ(2)=XPROJ(3,IB)
  189. if (mcham.eq.0) then
  190. VV(2)=VCPCHA(IPT1.NUM(IBFA,IEL))
  191. else
  192. VV(2)=velche(IBFAm,IELm)
  193. endif
  194. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  195. ENDIF
  196. 20235 CONTINUE
  197. ELSEIF (ITYP.EQ.4) THEN
  198. * cas des quadrangles a 8 noeuds on decoupe en 4 triangles et un
  199. * quadrangle.
  200. DO 20237 IEL=1,NBELEM
  201. IAFA=LFAC(JAD+1)
  202. IBFA=LFAC(JAD+2)
  203. ICFA=LFAC(JAD+3)
  204. IDFA=LFAC(JAD+4)
  205. IEFA=LFAC(JAD+5)
  206. IFFA=LFAC(JAD+6)
  207. IGFA=LFAC(JAD+7)
  208. IHFA=LFAC(JAD+8)
  209. if(mcham.ne.0) then
  210. ielm=min(iel,velche(/2))
  211. iafam=min(iafa,velche(/1))
  212. ibfam=min(ibfa,velche(/1))
  213. icfam=min(icfa,velche(/1))
  214. idfam=min(idfa,velche(/1))
  215. iefam=min(iefa,velche(/1))
  216. iffam=min(iffa,velche(/1))
  217. igfam=min(igfa,velche(/1))
  218. ihfam=min(ihfa,velche(/1))
  219. endif
  220. ia=icpr(ipt1.num(iafa,iel))
  221. ib=icpr(ipt1.num(ibfa,iel))
  222. ic=icpr(ipt1.num(icfa,iel))
  223. id=icpr(ipt1.num(idfa,iel))
  224. ie=icpr(ipt1.num(iefa,iel))
  225. if=icpr(ipt1.num(iffa,iel))
  226. ig=icpr(ipt1.num(igfa,iel))
  227. ih=icpr(ipt1.num(ihfa,iel))
  228. IF (IVU(IA).EQ.1.AND.IVU(IB).EQ.1.AND.IVU(IH).EQ.1)
  229. $ then
  230. XX(1)=XPROJ(1,IA)
  231. XX(2)=XPROJ(1,IB)
  232. XX(3)=XPROJ(1,IH)
  233. YY(1)=XPROJ(2,IA)
  234. YY(2)=XPROJ(2,IB)
  235. YY(3)=XPROJ(2,IH)
  236. ZZ(1)=XPROJ(3,IA)
  237. ZZ(2)=XPROJ(3,IB)
  238. ZZ(3)=XPROJ(3,IH)
  239. if (mcham.eq.0) then
  240. VV(1)=VCPCHA(IPT1.NUM(IAFA,IEL))
  241. VV(2)=VCPCHA(IPT1.NUM(IBFA,IEL))
  242. VV(3)=VCPCHA(IPT1.NUM(IHFA,IEL))
  243. else
  244. VV(1)=velche(IAFAm,IELm)
  245. VV(2)=velche(IBFAm,IELm)
  246. VV(3)=velche(IHFAm,IELm)
  247. endif
  248. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  249. ENDIF
  250. IF (IVU(IB).EQ.1.AND.IVU(IC).EQ.1.AND.IVU(ID).EQ.1)
  251. $ then
  252. XX(1)=XPROJ(1,IB)
  253. XX(2)=XPROJ(1,IC)
  254. XX(3)=XPROJ(1,ID)
  255. YY(1)=XPROJ(2,IB)
  256. YY(2)=XPROJ(2,IC)
  257. YY(3)=XPROJ(2,ID)
  258. ZZ(1)=XPROJ(3,IB)
  259. ZZ(2)=XPROJ(3,IC)
  260. ZZ(3)=XPROJ(3,ID)
  261. if (mcham.eq.0) then
  262. VV(1)=VCPCHA(IPT1.NUM(IBFA,IEL))
  263. VV(2)=VCPCHA(IPT1.NUM(ICFA,IEL))
  264. VV(3)=VCPCHA(IPT1.NUM(IDFA,IEL))
  265. else
  266. VV(1)=velche(IBFAm,IELm)
  267. VV(2)=velche(ICFAm,IELm)
  268. VV(3)=velche(IDFAm,IELm)
  269. endif
  270. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  271. ENDIF
  272. IF (IVU(ID).EQ.1.AND.IVU(IE).EQ.1.AND.IVU(IF).EQ.1)
  273. $ then
  274. XX(1)=XPROJ(1,ID)
  275. XX(2)=XPROJ(1,IE)
  276. XX(3)=XPROJ(1,IF)
  277. YY(1)=XPROJ(2,ID)
  278. YY(2)=XPROJ(2,IE)
  279. YY(3)=XPROJ(2,IF)
  280. ZZ(1)=XPROJ(3,ID)
  281. ZZ(2)=XPROJ(3,IE)
  282. ZZ(3)=XPROJ(3,IF)
  283. if (mcham.eq.0) then
  284. VV(1)=VCPCHA(IPT1.NUM(IDFA,IEL))
  285. VV(2)=VCPCHA(IPT1.NUM(IEFA,IEL))
  286. VV(3)=VCPCHA(IPT1.NUM(IFFA,IEL))
  287. else
  288. VV(1)=velche(IDFAm,IELm)
  289. VV(2)=velche(IEFAm,IELm)
  290. VV(3)=velche(IFFAm,IELm)
  291. endif
  292. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  293. ENDIF
  294. IF (IVU(IF).EQ.1.AND.IVU(IG).EQ.1.AND.IVU(IH).EQ.1)
  295. $ then
  296. XX(1)=XPROJ(1,IF)
  297. XX(2)=XPROJ(1,IG)
  298. XX(3)=XPROJ(1,IH)
  299. YY(1)=XPROJ(2,IF)
  300. YY(2)=XPROJ(2,IG)
  301. YY(3)=XPROJ(2,IH)
  302. ZZ(1)=XPROJ(3,IF)
  303. ZZ(2)=XPROJ(3,IG)
  304. ZZ(3)=XPROJ(3,IH)
  305. if (mcham.eq.0) then
  306. VV(1)=VCPCHA(IPT1.NUM(IFFA,IEL))
  307. VV(2)=VCPCHA(IPT1.NUM(IGFA,IEL))
  308. VV(3)=VCPCHA(IPT1.NUM(IHFA,IEL))
  309. else
  310. VV(1)=velche(IFFAm,IELm)
  311. VV(2)=velche(IGFAm,IELm)
  312. VV(3)=velche(IHFAm,IELm)
  313. endif
  314. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  315. ENDIF
  316. * cas du quadrangle on rajoute un point central
  317. xxm=-0.25*XPROJ(1,IA)+0.5*XPROJ(1,IB)
  318. * -0.25*XPROJ(1,IC)+0.5*XPROJ(1,ID)
  319. * -0.25*XPROJ(1,IE)+0.5*XPROJ(1,IF)
  320. * -0.25*XPROJ(1,IG)+0.5*XPROJ(1,IH)
  321. yym=-0.25*XPROJ(2,IA)+0.5*XPROJ(2,IB)
  322. * -0.25*XPROJ(2,IC)+0.5*XPROJ(2,ID)
  323. * -0.25*XPROJ(2,IE)+0.5*XPROJ(2,IF)
  324. * -0.25*XPROJ(2,IG)+0.5*XPROJ(2,IH)
  325. zzm=-0.25*XPROJ(3,IA)+0.5*XPROJ(3,IB)
  326. * -0.25*XPROJ(3,IC)+0.5*XPROJ(3,ID)
  327. * -0.25*XPROJ(3,IE)+0.5*XPROJ(3,IF)
  328. * -0.25*XPROJ(3,IG)+0.5*XPROJ(3,IH)
  329. if (mcham.eq.0) then
  330. vvm=-0.25*VCPCHA(ipt1.num(iafa,iel))
  331. $ +0.5*VCPCHA(ipt1.num(ibfa,iel))
  332. $ -0.25*VCPCHA(ipt1.num(icfa,iel))
  333. $ +0.5*VCPCHA(ipt1.num(idfa,iel))
  334. $ -0.25*VCPCHA(ipt1.num(iefa,iel))
  335. $ +0.5*VCPCHA(ipt1.num(iffa,iel))
  336. $ -0.25*VCPCHA(ipt1.num(igfa,iel))
  337. $ +0.5*VCPCHA(ipt1.num(ihfa,iel))
  338. else
  339. vvm=-0.25*velche(iafam,ielm)
  340. $ +0.5*velche(ibfam,ielm)
  341. * -0.25*velche(icfam,ielm)
  342. $ +0.5*velche(idfam,ielm)
  343. $ -0.25*velche(iefam,ielm)
  344. $ +0.5*velche(iffam,ielm)
  345. $ -0.25*velche(igfam,ielm)
  346. $ +0.5*velche(ihfam,ielm)
  347. endif
  348. IAFA=LFAC(JAD+2)
  349. IBFA=LFAC(JAD+4)
  350. ICFA=LFAC(JAD+6)
  351. IDFA=LFAC(JAD+8)
  352. if(mcham.ne.0) then
  353. iafam=min(iafa,velche(/1))
  354. ibfam=min(ibfa,velche(/1))
  355. icfam=min(icfa,velche(/1))
  356. idfam=min(idfa,velche(/1))
  357. endif
  358. ia=icpr(ipt1.num(iafa,iel))
  359. ib=icpr(ipt1.num(ibfa,iel))
  360. ic=icpr(ipt1.num(icfa,iel))
  361. id=icpr(ipt1.num(idfa,iel))
  362. IF (IVU(IA).EQ.1.AND.IVU(IB).EQ.1.AND.IVU(IC).EQ.1
  363. $ .and.IVU(Id).EQ.1) THEN
  364. XX(1)=XPROJ(1,IA)
  365. XX(2)=XPROJ(1,IB)
  366. YY(1)=XPROJ(2,IA)
  367. YY(2)=XPROJ(2,IB)
  368. ZZ(1)=XPROJ(3,IA)
  369. ZZ(2)=XPROJ(3,IB)
  370. if (mcham.eq.0) then
  371. VV(1)=VCPCHA(IPT1.NUM(IAFA,IEL))
  372. VV(2)=VCPCHA(IPT1.NUM(IBFA,IEL))
  373. else
  374. VV(1)=velche(IAFAm,IELm)
  375. VV(2)=velche(IBFAm,IELm)
  376. endif
  377. XX(3)=XXM
  378. YY(3)=YYM
  379. ZZ(3)=ZZM
  380. VV(3)=VVM
  381. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  382. XX(2)=XPROJ(1,ID)
  383. YY(2)=XPROJ(2,ID)
  384. ZZ(2)=XPROJ(3,ID)
  385. if (mcham.eq.0) then
  386. VV(2)=VCPCHA(IPT1.NUM(IDFA,IEL))
  387. else
  388. VV(2)=velche(IDFAm,IELm)
  389. endif
  390. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  391. XX(1)=XPROJ(1,IC)
  392. YY(1)=XPROJ(2,IC)
  393. ZZ(1)=XPROJ(3,IC)
  394. if (mcham.eq.0) then
  395. VV(1)=VCPCHA(IPT1.NUM(ICFA,IEL))
  396. else
  397. VV(1)=velche(ICFAm,IELm)
  398. endif
  399. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  400. XX(2)=XPROJ(1,IB)
  401. YY(2)=XPROJ(2,IB)
  402. ZZ(2)=XPROJ(3,IB)
  403. if (mcham.eq.0) then
  404. VV(2)=VCPCHA(IPT1.NUM(IBFA,IEL))
  405. else
  406. VV(2)=velche(IBFAm,IELm)
  407. endif
  408. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  409. ENDIF
  410. 20237 CONTINUE
  411. ELSEIF (ITYP .EQ. 6) THEN
  412. *
  413. * Element polygone
  414. *
  415. NBCOT = IPT1.NUM(/1)
  416. DO 20300 IEL=1,NBELEM
  417. *
  418. * Recherche des coordonnees et valeurs au centre du polygone
  419. *
  420. XXM = 0.
  421. YYM = 0.
  422. ZZM = 0.
  423. VVM = 0.
  424. IVUE = 1
  425. DO 20330 ICT = 1, NBCOT
  426. *
  427. NUPT = IPT1.NUM(ICT, IEL)
  428. IDPT = ICPR(NUPT)
  429. XXM = XPROJ(1,IDPT) + XXM
  430. YYM = XPROJ(2,IDPT) + YYM
  431. ZZM = XPROJ(3,IDPT) + ZZM
  432. IF (MCHAM.EQ.0) THEN
  433. VVM = VCPCHA(NUPT) + VVM
  434. ELSE
  435. VVM = VELCHE(ICT, IEL) + VVM
  436. ENDIF
  437. IF (IVU(IDPT).NE.1) IVUE = 0
  438. *
  439. 20330 CONTINUE
  440. *
  441. IF (IVUE.EQ.1) THEN
  442. *
  443. XX(3)=XXM/NBCOT
  444. YY(3)=YYM/NBCOT
  445. ZZ(3)=ZZM/NBCOT
  446. VV(3)=VVM/NBCOT
  447. *
  448. NUPT2 = IPT1.NUM(NBCOT, IEL)
  449. ID2 = ICPR(NUPT2)
  450. XX(2)=XPROJ(1,ID2)
  451. YY(2)=XPROJ(2,ID2)
  452. ZZ(2)=XPROJ(3,ID2)
  453. IF (MCHAM.EQ.0) THEN
  454. VV(2) = VCPCHA(NUPT2)
  455. ELSE
  456. C## MC VV(2) = VELCHE(ICT2, IEL)
  457. VV(2) = VELCHE(NBCOT, IEL)
  458. ENDIF
  459. *
  460. * Boucle sur tous les triangles
  461. *
  462. DO 20360 , ICT = 1, NBCOT
  463. *
  464. NUPT1 = IPT1.NUM(ICT, IEL)
  465. ID1 = ICPR(NUPT1)
  466. *
  467. XX(1)=XPROJ(1,ID1)
  468. YY(1)=XPROJ(2,ID1)
  469. ZZ(1)=XPROJ(3,ID1)
  470. IF (MCHAM.EQ.0) THEN
  471. VV(1)= VCPCHA(NUPT1)
  472. ELSE
  473. VV(1) = VELCHE(ICT, IEL)
  474. ENDIF
  475. CALL TRISO(VCHC,XX,YY,ZZ,VV,3,NISO)
  476. XX(2)= XX(1)
  477. YY(2)= YY(1)
  478. ZZ(2)= ZZ(1)
  479. VV(2)= VV(1)
  480. *
  481. 20360 CONTINUE
  482. *
  483. ENDIF
  484. *
  485. 20300 CONTINUE
  486. ENDIF
  487. 20200 CONTINUE
  488. 20150 CONTINUE
  489. IF (LISOUS(/1).NE.0) SEGDES IPT1
  490. 20100 CONTINUE
  491. * METTRE LES LABELS SUR LES ISO QUI COUPENT LE CONTOUR
  492. CALL TRCISO(MELEME,VCPCHA,ICPR,XPROJ,NISO,VCHC,IVU)
  493. SEGDES MELEME
  494. SEGDES ICPR
  495. RETURN
  496. END
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales