andreasplesch / OCCToX3D

convert OCC (step, iges, stl ..) to X3D
https://mybinder.org/v2/gh/andreasplesch/OCCtoX3D/conda2
GNU Lesser General Public License v2.1
5 stars 1 forks source link

Missing x3d revolution node ? #9

Open tpaviot opened 4 years ago

tpaviot commented 4 years ago

In the latest standard revision (3.3), I can see an Extrusion node (https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Extrusion). However, I can't find the Revolution, that would make possible to generate a 3d geometry by rotating a face around an axis, or create a 2d geometry by rotating a curve around an axis. occt handles that type of surface:

enum GeomAbs_SurfaceType
{
GeomAbs_Plane,
GeomAbs_Cylinder,
GeomAbs_Cone,
GeomAbs_Sphere,
GeomAbs_Torus,
GeomAbs_BezierSurface,
GeomAbs_BSplineSurface,
GeomAbs_SurfaceOfRevolution,
GeomAbs_SurfaceOfExtrusion,
GeomAbs_OffsetSurface,
GeomAbs_OtherSurface
};

Is there any on going work about that (may be the 4.0 version) ?

andreasplesch commented 4 years ago

Yes, there is no Revolution node in X3D. Generally, the tendency has been in X3D to rely more on the modelers to provide tessellated geometry, and focus more on event processing and dynamic aspects of a scene.

x3dom has a few more, non-standard geometric primitives.

This includes SolidOfRevolution: https://doc.x3dom.org/author/Geometry3DExt/SolidOfRevolution.html

For plane, there is also non-standard Plane node: https://doc.x3dom.org/author/Geometry3D/Plane.html For standard X3D there is 2DRectangle which can be transformed: https://doc.x3dom.org/author/Geometry2D/Rectangle2D.html

For Torus, there is a non-standard Torus node: https://doc.x3dom.org/author/Geometry3D/Torus.html

There is no OffsetSurface equivalent.