Télécharger voro2d.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier voro2d.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. *
  5. *----------------------------------------------------------------------*
  6. * voro3d.dgibi est un exemple d'utilisation dans un cas bidimensionel *
  7. * de la procedure MAILVORO de maillage d'agregats cubiques de polyedres*
  8. * de Voronoi. Cette procedure fait appel a l'operateur VORO *
  9. * La procedure @POINTIR permet de "tirer" aleatoirement un ensemble *
  10. * de points servant de germe de la partition de Voronoi. *
  11. *----------------------------------------------------------------------*
  12. *
  13. *
  14. *
  15. *
  16. *----------------------------------------------------------------------*
  17. * Maillage d'un agregat 2D de polyedres de Voronoi *
  18. *----------------------------------------------------------------------*
  19. *
  20. *-------------------- Parametres de la realisation --------------------*
  21. * *
  22. * NBG1 : Nombre de polyedres. *
  23. * DEXC1 : Distance d'exclusion entre points germes des polyedres. *
  24. * Attention, si la distance est trop importante, le nombre *
  25. * de polyedres demandes ne pourra pas etre atteint. *
  26. * Par defaut, vaut 1/5 de la taille moyenne des polyedres. *
  27. * ITRAC1 : VRAI => affichage resultats. *
  28. NBG1 = 50;
  29. DEXC1 = 0.05;
  30. ITRAC = FAUX;
  31. *
  32. OPTI 'ECHO' 1 ;
  33. *
  34. OPTI 'DIME' 2 'ELEM' 'TRI3' ;
  35. *
  36. *----------------------------------------------------------------------*
  37. * Definition du contour de l'agregat *
  38. *----------------------------------------------------------------------*
  39.  
  40. ** CONTOUR SIMPLE (CARRE UNITAIRE)
  41. SURF1 = (D 1 (0. 0.) (1. 0.)) TRAN 1 (0. 1.) ;
  42. CON1 = CONT SURF1 ;
  43.  
  44. ** CONTOUR CONCAVE (ETOILE A N BRANCHES)
  45. N = 5 ;
  46. R1 = 0.5 ;
  47. R2 = 0.2 ;
  48. P0 = 0.5 0.5 ;
  49. P1 = P0 PLUS (0. R1) ;
  50. P11 = P0 PLUS (0. R2) ;
  51. P11 = P11 TOUR (0.5*360./N) P0 ;
  52. PA = P1 ;
  53. PB = P11 ;
  54. MP1 = PA ET PB ;
  55. REPE B1 (N-1);
  56. PC = PA TOUR (360./N) P0 ;
  57. PD = PB TOUR (360./N) P0 ;
  58. MP1 = MP1 ET PC ET PD ;
  59. PA = PC ;
  60. PB = PD ;
  61. FIN B1 ;
  62. CON2 = QUEL 'SEG2' MP1 ;
  63. CON2 = D 1 CON2 P1 ;
  64. *----------------------------------------------------------------------*
  65. * Tirage des points germes des polyedres *
  66. *----------------------------------------------------------------------*
  67. *
  68. 'SAUT' 1 'LIGN' ;
  69. 'MESS' '***** Tirage des points germes des polyedres' ;
  70. *
  71. MAIL1 = @POINTIR 'EXCL' NBG1 'SPHE' DEXC1 ;
  72. *
  73. ** PARTITIONS DE VORONOI
  74. TAB0 = VORO MAIL1 CON1 ;
  75. A0 = TAB0 . 'VISU' ;
  76. ** MAILLAGE DE LA PARTITION DE VORONOI
  77. TAB1 = MAILVORO TAB0 CON1 'COUL';
  78. *
  79. SI ITRAC;
  80. V1 = TAB1 . 'MAIL' ;
  81. TRAC 'FACE' V1 'TITR' 'Maillage de la partition de Voronoi' ;
  82. FINS;
  83. *
  84. ** PARTITIONS DE VORONOI
  85. TAB0 = VORO MAIL1 CON2 ;
  86. A0 = TAB0 . 'VISU' ;
  87. ** MAILLAGE DE LA PARTITION DE VORONOI
  88. TAB1 = MAILVORO TAB0 CON2 'COUL' ;
  89. SI ITRAC;
  90. V1 = TAB1 . 'MAIL' ;
  91. TRAC 'FACE' V1 'TITR' 'Maillage de la partition de Voronoi' ;
  92. FINS;
  93.  
  94.  
  95.  
  96.  
  97.  
  98. FIN;
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  

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