Télécharger @enca.procedur

Retour à la liste

Numérotation des lignes :

  1. * @ENCA PROCEDUR AM 95/05/02 21:15:33 1649
  2. DEBPROC @ENCA TAIL1*'FLOTTANT' MAIL1*'MAILLAGE' VEC1*'POINT';
  3. * [][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]
  4. * D. DUREISSEIX L.M.T. STRUCTURES & C.M.A.O. le 23/03/93
  5. *
  6. * Procedure pour construire un vrai ENCAstrement en 2D
  7. *
  8. * on envoie
  9. * TAIL1 FLOTTANT pour definir la taille
  10. * MAIL1 MAILLAGE ligne sur laquelle il y a encastrement
  11. * VEC1 POINT vecteur pour l'orientation des hachures
  12. * (normale interieure)
  13. * on recupere
  14. * PTF1 MAILLAGE definissant l'encastrement
  15. * ======================================================================
  16. VEC1 = VEC1 / ('NORME' VEC1);
  17. 'OUBLIE' PTF1;
  18. NMAIL1 = 'CHAN' 'POI1' MAIL1;
  19. NNO1 = 'NBNO' NMAIL1;
  20. N1 = 1;
  21. 'REPETE' BLO1 (NNO1 - 1);
  22. N1 = N1 + 1;
  23. P1 = NMAIL1 'POINT' (N1 - 1);
  24. P2 = NMAIL1 'POINT' N1;
  25. VEC2 = P2 'MOINS' P1;
  26. VECT2 = VEC2 / ('NORME' VEC2);
  27. DIST1 = 'NORME' VEC2;
  28. D1 = 0.;
  29. 'REPETE' BLO2 (('ENTIER' (DIST1 / TAIL1)) + 1);
  30. PT1 = P1 'PLUS' (D1 * VECT2);
  31. * 'SI' (('NORME' (P2 'MOINS' PT1)) < (TAIL1 / 3.));
  32. * 'QUITTER' BLO2;
  33. * 'FINSI';
  34. PT2 = (PT1 'PLUS' ((TAIL1 * 1.5) * VECT2))
  35. 'MOINS' ((TAIL1 * 1.5) * VEC1);
  36. 'SI' ('EXISTE' PTF1);
  37. PTF1 = PTF1 'ET' ('MANU' 'SEG2' PT1 PT2);
  38. 'SINON';
  39. PTF1 = ('MANU' 'SEG2' PT1 PT2);
  40. 'FINSI';
  41. D1 = D1 + TAIL1;
  42. 'FIN' BLO2;
  43. 'FIN' BLO1;
  44. *
  45. * 'MENAGE';
  46. 'FINPROC' PTF1;
  47.  

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