1 |
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 4.0//EN" "https://www.web3d.org/specifications/x3d-4.0.dtd">
|
3 | <X3D profile='Interchange' version='4.0' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-4.0.xsd'> |
4 | <head> |
5 | <component level='1' name='Text'/> |
6 | <component level='2' name='Grouping'/> |
7 | <component level='3' name='Navigation'/> |
8 | <meta name='title' content='X3dMeshDesignPattern.x3d'/> |
9 | <meta name='description' content='Candidate design pattern for 3D scanner outputs to consistently define the elements of an X3D mesh.'/> |
10 | <meta name='creator' content='Don Brutzman, Vince Marchetti, Roy Walmsley, Nicholas Polys'/> |
11 | <meta name='created' content='4 June 2017'/> |
12 | <meta name='modified' content='13 October 2023'/> |
13 | <meta name=' TODO ' content=' Upgrade and verify X3D v4.0 XML DTD and Schema to validate '/> |
14 | <meta name='reference' content='X3dMeshDesignPattern.txt'/> |
15 | <meta name='Image' content='X3dMeshDesignPattern.png'/> |
16 | <meta name=' warning ' content=' Under development. Note that proposed design pattern for Normal inside PointSet or LineSet/IndexedLineSet is accepted in X3D 4.0 but is not allowed in X3D v3.3. '/> |
17 | <meta name='reference' content='Web3D 2017 Workshop on 3D Scanning: Use Cases, Workflow and Profile Requirements for X3D'/> |
18 | <meta name='reference' content='http://web3d2017.web3d.org/program'/> |
19 | <meta name='generator' content='X3D-Edit 4.0, https://savage.nps.edu/X3D-Edit'/> |
20 | <meta name='identifier' content='https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/Scanning/X3dMeshDesignPattern.x3d'/> |
21 | <meta name='license' content='../license.html'/> |
22 | </head> |
23 | <Scene> |
24 | <WorldInfo title='X3dMeshDesignPattern.x3d'/> |
25 | <Group> |
26 | <MetadataSet containerField='metadata' name='X3dMesh'> |
27 | <!-- enter other Metadata nodes and values here, vocabulary TBD --> |
28 | </MetadataSet> |
29 | <Switch whichChoice='2'> |
30 | <Shape> |
31 | <PointSet> |
32 | <!-- Currently invalid in X3D DTD: Normal node must be first to be allowed inside IndexedLineSet or LineSet --> |
33 | <!-- Of note: MeshLab allows assigning normals to a point cloud --> |
34 |
<!-- Normal
VertexNormals is a DEF node that has 2 USE nodes: USE_1, USE_2 --> <Normal DEF='VertexNormals'/> |
35 |
<!-- Color
VertexColors is a DEF node that has 2 USE nodes: USE_1, USE_2 --> <Color DEF='VertexColors' color='1 0 0 0 1 0 0 0 1 1 1 1'/> |
36 |
<!-- Coordinate
VertexValues is a DEF node that has 2 USE nodes: USE_1, USE_2 --> <Coordinate DEF='VertexValues' point='1 1 0 1 -1 0 -1 -1 0 -1 1 0'/> |
37 | <!-- Currently invalid in X3D v3.3: Normal node not allowed inside PointSet --> |
38 | </PointSet> |
39 | </Shape> |
40 | <Shape> |
41 | <IndexedLineSet coordIndex='0 1 2 3 0 -1'> |
42 | <!-- Currently invalid in X3D DTD: Normal node must be first to be allowed inside IndexedLineSet or LineSet --> |
43 | <Normal USE='VertexNormals'/> |
44 | <Coordinate USE='VertexValues'/> |
45 | <Color USE='VertexColors'/> |
46 | </IndexedLineSet> |
47 | </Shape> |
48 | <Shape> |
49 | <IndexedFaceSet solid='false' coordIndex='0 1 2 3 0 -1'> |
50 | <Coordinate USE='VertexValues'/> |
51 | <Color USE='VertexColors'/> |
52 | <Normal USE='VertexNormals'/> |
53 | </IndexedFaceSet> |
54 | </Shape> |
55 | </Switch> |
56 | <ViewpointGroup description='Viewpoints at appropriate distance from model' containerField='children'> |
57 | <Viewpoint description='Front view' position='0 0 4'/> |
58 | </ViewpointGroup> |
59 | </Group> |
60 | <!-- Default scene display --> |
61 | <Background skyColor='1 1 1'/> |
62 | <Transform DEF='AvoidCoplanarAliasing' translation='0 0 0.1'> |
63 | <Shape> |
64 | <Text string='"X3D" "Mesh" "Design" "Pattern"'> |
65 | <FontStyle family='"SANS"' justify='"MIDDLE" "MIDDLE"' size='0.4' style='BOLD'/> |
66 | </Text> |
67 | <Appearance> |
68 | <Material diffuseColor='0.3 0.7 0.7'/> |
69 | </Appearance> |
70 | </Shape> |
71 | </Transform> |
72 | </Scene> |
73 | </X3D> |
<!--
Color legend: X3D terminology
<X3dNode
DEF='idName' field='value'/>
matches XML terminology
<XmlElement
DEF='idName' attribute='value'/>
(Light-blue background: event-based behavior node or statement)
(Grey background inside box: inserted documentation)
(Magenta background: X3D Extensibility)
-->
<!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->