1 : C COUPEJ SOURCE CHAT 05/01/12 22:24:40 5004 2 : SUBROUTINE COUPEJ(XYZ1,XYZ2,XYZ3,XYZ4,DIS1,DIS2,DIS3,DIS4, 3 : > MELEME,IELEM,JCOLOR) 4 : C 5 : C Esclave de COUPE 6 : C Ajout de 2 elements correspondant a la coupe par un cote 7 : C du tetraedre par un plan. XYZ1, DIS1 et 2 sont les ccordonnees 8 : C de la pointe et la distance au plan pour les points du premier 9 : C segment. 3 et 4 correspondent aux autres points 10 : C 11 : IMPLICIT INTEGER(I-N) 12 : IMPLICIT REAL*8(A-H,O-Z) 13 : -INC CCOPTIO 14 : -INC SMCOORD 15 : -INC SMELEME 16 : C 17 : DIMENSION XYZ1(4),XYZ2(4),XYZ3(4),XYZ4(4) 18 : C 19 : NBPTI=XCOOR(/1)/4 20 : NBPTS=NBPTI+4 21 : SEGADJ,MCOORD 22 : C 23 : COEFF=ABS(DIS1)/(ABS(DIS1)+ABS(DIS3)) 24 : NBPTI=NBPTI+1 25 : IREF=(NBPTI-1)*4 26 : DO IE1=1,4 27 : XCOOR(IREF+IE1)=XYZ1(IE1)+COEFF*(XYZ3(IE1)-XYZ1(IE1)) 28 : ENDDO 29 : C 30 : COEFF=ABS(DIS1)/(ABS(DIS1)+ABS(DIS4)) 31 : NBPTI=NBPTI+1 32 : IREF=(NBPTI-1)*4 33 : DO IE1=1,4 34 : XCOOR(IREF+IE1)=XYZ1(IE1)+COEFF*(XYZ4(IE1)-XYZ1(IE1)) 35 : ENDDO 36 : C 37 : COEFF=ABS(DIS2)/(ABS(DIS2)+ABS(DIS3)) 38 : NBPTI=NBPTI+1 39 : IREF=(NBPTI-1)*4 40 : DO IE1=1,4 41 : XCOOR(IREF+IE1)=XYZ2(IE1)+COEFF*(XYZ3(IE1)-XYZ2(IE1)) 42 : ENDDO 43 : C 44 : COEFF=ABS(DIS2)/(ABS(DIS2)+ABS(DIS4)) 45 : NBPTI=NBPTI+1 46 : IREF=(NBPTI-1)*4 47 : DO IE1=1,4 48 : XCOOR(IREF+IE1)=XYZ2(IE1)+COEFF*(XYZ4(IE1)-XYZ2(IE1)) 49 : ENDDO 50 : C 51 : NBPTI=NBPTI-4 52 : IELEM=IELEM+1 53 : NUM(1,IELEM)=NBPTI+1 54 : NUM(2,IELEM)=NBPTI+2 55 : NUM(3,IELEM)=NBPTI+4 56 : ICOLOR(IELEM)=JCOLOR 57 : IELEM=IELEM+1 58 : NUM(1,IELEM)=NBPTI+1 59 : NUM(2,IELEM)=NBPTI+4 60 : NUM(3,IELEM)=NBPTI+3 61 : ICOLOR(IELEM)=JCOLOR 62 : C 63 : RETURN 64 : END 65 : 66 :
© Cast3M 2003 - All rights reserved.
Disclaimer