Overview: X3DOM and CAD support
X3dToX3dom.xslt is an XSLT 2 stylesheet which will generate an HTML5 document embedding an X3D input model. This stylesheet can be run using a stand-alone XSLT2 engine or from within the X3D-Edit tool.
- CadTeapot Copied from the Web3D Basic Examples CadTeapot model but modified so that each of the Appearance nodes for the 4 parts of the teapot is independently defined.
These pages were generated using a modification of the X3dToX3dom.xslt script (modified XSLT stylesheet here). These pages load the CADGeometry extension to X3DOM after loading the X3DOM core classes.
- laser_assembly page The laser_assembly model embedded in a web page rendered with X3DOM.
- CadTeapot page The CadTeapot model embedded in a web page rendered with X3DOM.
X3DOM -- Product structure pages
- retention_clip A product structure containing nested assemblies.
This excerpt illustrates the method used to create the HTML part-structure tool in the XHTML examples for product structure that appear above. Those examples are created when exporting the original X3D model (containing CAD nodes) to the HTML+X3D .xhtml product structure node.
Future work: the DOM lets you save new attributes without difficult. Therefore, original values for transparency might be retained in memory while the widget changes other transparency values from 1.0 to 0.2 (or whatever) for visualization, then allows restoration of original values (perhaps by another button or link).
- Incorporate the product structure display (on the HTML page) as an option in the X3dToX3dom stylesheet.
- Setup a SourceForge project for ProductStructure, other scripts useful
- Prepare a x3dom folder with examples and scripts to be included ( with local URL references from .xhtml to .js scripts) to be placed in the http://www.web3d.org/x3d/content/examples/Basic/CAD/x3dom folder
- The product-structure functionality will be integrated into the X3dToX3dom.xslt stylesheet so that the HTML widget can be available for any X3D export.
- Implement the other CAD-related nodes needed for addtion to the X3DOM nodes list:
- QuadSet, IndexedQuadSet, ClipPlane, NURBS Component nodes