Télécharger atiso.eso

Retour à la liste

Numérotation des lignes :

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

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