Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2009:12_16

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
commit:2009:12_16 [2009/12/15 16:56] – created jchampscommit:2009:12_16 [2016/03/30 15:23] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +====== Commit 2009-12-16 ======
 +
 +===== Modifs =====
 +
 +==== Surface cylindrique ====
 +
 +Ajout de l'objet géométrique ''Cylinder'' qui peut être créé de deux façons: l'axe et le rayon ou alors, l'axe, le rayon et un point de la génératrice défini dans le ''pointset'', par exemple:
 +
 +    c1 = Cylinder(1, curveset(1), 1.0)
 +    c2 = Cylinder(2, curveset(1), 1.0, pointset(2))
 +    surfaceset = geometry.getSurfaceSet()
 +    surfaceset.add( c1 )
 +    surfaceset.add( c2 )
 +
 +La courbe 1 est l'axe du cylindre et le rayon du cylindre est de 1. Le point 2 est situé dans le plan perpendiculaire à l'axe passant par le premier point de l'axe à une distance égale au rayon du cylindre du premier point de l'axe.
 +
 +Le fait d'ajouter un point du ''pointset'' au constructeur du cylindre permet d'imposer une rotation au cylindre. En effet, on ne sait pas, à l'heure actuelle, recréer un nouveau point de la DB à l'intérieur de l'objet cylindre.  
 +
 +Comme ce point est assez difficile à définir quand on n'a pas de cylindre parallèle à un axe, on peut ajouter un point avec des coordonnées quelconques et Metafor le remettra à la bonne place tout seul comme un grand au début du calcul avec un petit ''WARNING_MESSAGE'' pour signaler que le point a été changé de place (voir ''apps.qs.contactCylProj0Point'').
 +
 +J'ai également ajouté la possibilité de considérer le cylindre comme une surface infinie ou une surface finie limitée par la longueur de l'axe par la commande:
 +
 +    c1.setProjType(projType)
 +
 +  * ''projType = 0'' => la surface est limitée par la longueur de l'axe
 +  * ''projType = 1'' => la surface est infinie
 +
 +J'ai illustré ces deux possibilités sur les deux figures ci-dessous. A quoi ça sert, vous demandez-vous avec la sagacité qui vous caractérise tous (sauf Geoffrey qui ne mange pas assez de poisson)? Ca sert à pouvoir importer des surfaces cylindriques de stp2e qui ont une longueur d'axe unitaire. Donc, par défaut, on met ''projType'' à 1 dans l'export step. Les esprits les plus avertis (donc pas Geoffrey) auront donc directement compris que j'ai exporté les surfaces cylindriques de stp2e.
 +
 +{{:commit:2009:cylindreproj0.png?200|projType = 0}}{{:commit:2009:cylindreproj1.jpg?200|projType = 0}}
 +
 +===== Fichiers ajoutés/retirés =====
 +
 +
 +  + apps/qs/contactCylProj0.py
 +  + apps/qs/contactCylProj0Point.py
 +  + apps/qs/contactCylProj1.py
 +  + apps/qs/contactCylProj1Point.py
 +  + mtGeo/mtGeoCylinder.cpp
 +  + mtGeo/mtGeoCylinder.h
 +  + mtGeo/mtGeoCylinderProjectionOperator.cpp
 +  + mtGeo/mtGeoCylinderProjectionOperator.h
 +  + mtGeo/mtGeoCylinderProjectionOperator.inl
 +  - apps/monosMeca/tracRotHill48v2Mat.py
 +
 +
 + --- //[[ppjeunechamps@ulg.ac.be|Pierre-Paul Jeunechamps]] 2009/12/16 16:03//
  

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki