<xs:element name="LinePickSensor">
<xs:annotation>
<xs:appinfo>
<xs:attribute name="pickedNormal" type="MFVec3f" fixed="outputOnlyField"/>
<xs:attribute name="pickedPoint" type="MFVec3f" fixed="outputOnlyField"/>
<xs:attribute name="pickedTextureCoordinate" type="MFVec3f" fixed="outputOnlyField"/>
<xs:attribute name="componentName" type="xs:NMTOKEN" fixed="Picking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
</xs:appinfo>
<xs:documentation source="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/picking.html#LinePickSensor"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="X3DPickSensorNode">
<xs:sequence>
<!-- TODO determine whether strict ordering can be relaxed -->
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>pickingGeometry</xs:documentation>
</xs:annotation>
<xs:element ref="LineSet"/>
<xs:element ref="IndexedLineSet"/>
<!-- if ProtoInstance is used as pickingGeometry, it can be picked up in next choice definitions -->
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>pickTarget</xs:documentation>
</xs:annotation>
<xs:group ref="PickSensorGroupingNodeContentModel"/>
<xs:element ref="Shape"/>
<xs:element ref="ProtoInstance">
<xs:annotation>
<xs:documentation>Appropriately typed substitution node</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element> |