Télécharger @visor.procedur

Retour à la liste

Numérotation des lignes :

  1. * @VISOR PROCEDUR AM 94/10/14 21:15:11 1279
  2. *-----------------------------------------------------------
  3. ****** PROCEDURE @VISOR ******
  4. *-----------------------------------------------------------
  5. *
  6. * CETTE PROCEDURE A ETE MISE GRACIEUSEMENT
  7. * A DISPOSITION DE LA COMMUNAUTE CASTEM2000
  8. * PAR DELERUYELLE Fr. (SOCOTEC-INDUSTRIE à l'IPSN/DES)
  9. *
  10. *-----------------------------------------------------------
  11. * VISUALISER L ORIENTATION DES ELEMENTS
  12. *----------------------------------------------------------
  13. 'DEBP' @VISOR SU*'MAILLAGE' KA/'FLOTTANT' MACOUL/'MOT' ;
  14. 'SI' ('NON' ('EXISTE' MACOUL)) ; MACOUL = 'JAUN' ; 'FINSI' ;
  15. 'SI' ('NON' ('EXISTE' KA)) ; KA = 2. / 3. ; 'FINSI' ;
  16. TLN = 'TABL' ;
  17. TLN. 'TRI3' = 'LECT' 1 2 3 ;
  18. TLN. 'QUA4' = TLN. 'TRI3' ;
  19. TLN. 'TRI6' = 'LECT' 1 3 5 ;
  20. TLN. 'QUA8' = TLN. 'TRI6' ;
  21. VDI = 'VALE' DIME ;
  22. LM = SU 'ELEM' 'TYPE' ;
  23. KM = 0 ;
  24. 'REPE' BOUM ('DIME' LM) ;
  25. KM = KM + 1 ;
  26. MM = 'EXTR' LM KM ;
  27. LI = SU 'ELEM' MM ;
  28. MESS '*** visor *** Traitement de' ('NBEL' LI) MM ;
  29.  
  30. 'SI' (('EGA' MM 'SEG2') 'OU' ('EGA' MM 'SEG3')) ;
  31. * TRAITEMENT DES SEG2 ET SEG3
  32. NEL = 'NBEL' LI ; KEL = 0 ;
  33. 'REPE' BOUEL NEL ;
  34. KEL = KEL + 1 ;
  35. E = LI 'ELEM' KEL ; P1 = E 'POIN' 'INIT' ; P2 = E 'POIN' 'FINA' ;
  36. G = 'BARY' E ; U = P2 'MOIN' P1 ; XL = 'NORM' U ; U = U * (1. / XL) ;
  37. 'DEPL' G 'MOIN' (U * (KA * XL / 2.)) ;
  38. V = U * (KA * XL) ;
  39. 'SI' ('EGA' ('TYPE' CHF) 'MOT ') ;
  40. CHF = 'MANU' 'CHPO' G 3 'FX' ('COOR' 1 V) 'FY' ('COOR' 2 V)
  41. 'FZ' ('COOR' 3 V) 'NATURE' 'DIFFUS' ;
  42. 'SINON' ;
  43. CHF = CHF 'ET'
  44. ('MANU' 'CHPO' G 3 'FX' ('COOR' 1 V) 'FY' ('COOR' 2 V)
  45. 'FZ' ('COOR' 3 V) 'NATURE' 'DIFFUS') ;
  46. 'FINSI' ;
  47. 'FIN' BOUEL ;
  48.  
  49. 'SINON' ;
  50.  
  51. 'SI' (('EGA' MM 'TRI3') 'OU' ('EGA' MM 'TRI6') 'OU' ('EGA' MM 'QUA4')
  52. 'OU' ('EGA' MM 'QUA8')) ;
  53. * TRAITEMENT DES TRIA ET QUAD
  54.  
  55. 'SI' (VDI 'EGA' 2) ;
  56. ** SURFACE EN 2D
  57. NEL = 'NBEL' LI ; KEL = 0 ;
  58. 'REPE' BOUEL2 NEL ;
  59. KEL = KEL + 1 ;
  60. E = LI 'ELEM' KEL ; G = 'BARY' E ;
  61. EP = 'CHAN' 'POI1' E ;
  62. P1 = (EP 'ELEM' ('EXTR' TLN.MM 1)) 'POIN' 'INIT' ;
  63. P2 = (EP 'ELEM' ('EXTR' TLN.MM 2)) 'POIN' 'INIT' ;
  64. P3 = (EP 'ELEM' ('EXTR' TLN.MM 3)) 'POIN' 'INIT' ;
  65. U12 = P2 'MOIN' P1 ;
  66. U23 = P3 'MOIN' P2 ;
  67. ZPV = (('COOR' 1 U12) * ('COOR' 2 U23)) -
  68. (('COOR' 2 U12) * ('COOR' 1 U23)) ;
  69. XLL = 'ABS' ZPV ; ZV = ZPV * ((XLL ** -0.5) * KA) ;
  70. 'DEPL' G 'MOIN' (0. (ZV / 2.)) ;
  71. 'SI' ('EGA' ('TYPE' CHF) 'MOT ') ;
  72. CHF = 'MANU' 'CHPO' G 3 'FX' 0. 'FY' ZV 'FZ' 0. 'NATURE' 'DIFFUS' ;
  73. 'SINON' ;
  74. CHF = CHF 'ET'
  75. ('MANU' 'CHPO' G 3 'FX' 0. 'FY' ZV 'FZ' 0. 'NATURE' 'DIFFUS') ;
  76. 'FINSI' ;
  77. 'FIN' BOUEL2 ;
  78.  
  79. 'SINON' ;
  80. ** SURFACE EN 3D
  81. NEL = 'NBEL' LI ; KEL = 0 ;
  82. 'REPE' BOUEL3 NEL ;
  83. KEL = KEL + 1 ;
  84. E = LI 'ELEM' KEL ; G = 'BARY' E ;
  85. EP = 'CHAN' 'POI1' E ;
  86. P1 = (EP 'ELEM' ('EXTR' TLN.MM 1)) 'POIN' 'INIT' ;
  87. P2 = (EP 'ELEM' ('EXTR' TLN.MM 2)) 'POIN' 'INIT' ;
  88. P3 = (EP 'ELEM' ('EXTR' TLN.MM 3)) 'POIN' 'INIT' ;
  89. U12 = P2 'MOIN' P1 ;
  90. U23 = P3 'MOIN' P2 ;
  91. V = U12 'PVEC' U23 ; XLL = 'NORM' V ;
  92. V = V * ((XLL ** -0.5) * KA) ;
  93. 'SI' ('EGA' ('TYPE' CHF) 'MOT ') ;
  94. CHF = 'MANU' 'CHPO' G 3 'FX' ('COOR' 1 V) 'FY' ('COOR' 2 V)
  95. 'FZ' ('COOR' 3 V) 'NATURE' 'DIFFUS' ;
  96. 'SINON' ;
  97. CHF = CHF 'ET'
  98. ('MANU' 'CHPO' G 3 'FX' ('COOR' 1 V) 'FY' ('COOR' 2 V)
  99. 'FZ' ('COOR' 3 V) 'NATURE' 'DIFFUS') ;
  100. 'FINSI' ;
  101. 'FIN' BOUEL3 ;
  102. 'FINSI' ;
  103.  
  104. 'SINON' ;
  105. * ELEMENT PAS PREVU
  106. 'MESS' 'On ne sait pas visualiser l orientation des ' MM ;
  107. 'FINSI' ;
  108. 'FINSI' ;
  109. 'FIN' BOUM ;
  110.  
  111. * VECTEUR
  112. 'SI' ('EGA' ('TYPE' CHF) 'CHPOINT ') ;
  113. 'SI' (VDI 'EGA' 2) ;
  114. VCHF = 'VECT' CHF 1. 'FX' 'FY' MACOUL ;
  115. 'SINON' ;
  116. VCHF = 'VECT' CHF 1. 'FX' 'FY' 'FZ' MACOUL ;
  117. 'FINSI' ;
  118. 'FINSI' ;
  119. 'MENA' ;
  120. 'FINP' VCHF ;
  121.  

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