<xs:element name="NurbsSweptSurface">
<xs:annotation>
<xs:appinfo>
<xs:element name="crossSectionCurve" type="SFNode" fixed="inputOutputField" default="X3DNurbsControlCurveNode"/>
<xs:element name="trajectoryCurve" type="SFNode" fixed="inputOutputField" default="NurbsCurve"/>
<xs:attribute name="componentName" type="xs:NMTOKEN" fixed="NURBS"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="3"/>
</xs:appinfo>
<xs:documentation source="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/nurbs.html#NurbsSweptSurface"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="X3DParametricGeometryNode">
<xs:choice minOccurs="0" maxOccurs="2">
<xs:element ref="ContourPolyline2D">
<xs:annotation>
<xs:documentation>crossSectionCurve</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="NurbsCurve2D">
<xs:annotation>
<xs:documentation>crossSectionCurve</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="NurbsCurve">
<xs:annotation>
<xs:documentation>trajectoryCurve</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="ProtoInstance">
<xs:annotation>
<xs:documentation>Appropriately typed substitution node</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:attribute name="ccw" type="SFBool" default="true"/>
<xs:attribute name="solid" type="SFBool" default="true"/>
<xs:attribute name="containerField" type="xs:NMTOKEN" default="geometry"/>
</xs:extension>
<!-- TODO see if nondeterministic content model can avoid improper selection of child nodes -->
</xs:complexContent>
</xs:complexType>
</xs:element> |