<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile='Immersive'  version='3.0 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation =' https://www.web3d.org/specifications/x3d-3.0.xsd ' >
<head>
<meta name='titlecontent=' NurbsExternPrototypes.x3d '/>
<meta name='descriptioncontent='Non-Uniform Rational B-Spline (NURBS) external prototype definitions, used for building VRML 97 signatures for inclusion in X3dToVrml97 conversion stylesheet.'/>
<meta name='creatorcontent='Don Brutzman'/>
<meta name='revisorcontent='Alan Shaffer'/>
<meta name='createdcontent='28 February 2003'/>
<meta name='modifiedcontent='20 October 2019'/>
<meta name=' warning content=' under development, needs to be upgraded to final version of X3D NURBS nodes '/>
<meta name='infocontent='.wrl url links intentionally precede .x3d links, X3D-Edit stylesheet X3dToVrml97.xslt automatically inserts VRML97 translations of these external prototype declarations upon encountering any DIS nodes.'/>
<meta name='referencecontent=' NurbsPrototypes.x3d '/>
<meta name='referencecontent=' https://www.web3d.org/files/specifications/19775-1/V3.3/Part01/components/nurbs.html '/>
<meta name='subjectcontent='NURBS Prototypes'/>
<meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsExternPrototypes.x3d '/>
<meta name='generatorcontent='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/>
<meta name='licensecontent=' ../license.html'/>
</head>
<!-- -->
<Scene>
<WorldInfo title='NurbsExternPrototypes.x3d'/>
<ExternProtoDeclare name='Contour2Dappinfo='Contour2D node groups a set of curve segments (either NurbsCurve2D or ContourPolyline2D nodes) to a composite contour in consecutive order according to the topology of the contour. The children shall form a closed loop with the first point of the first child repeated as the last point of the last child and the last point of a segment repeated as the first point of the consecutive one.'  documentation=' https://www.web3d.org/technicalinfo/specifications/ISO_IEC_19775/Part01/components/nurbs.html#Contour2D '
  url=' "NurbsPrototypes.x3d#Contour2D" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#Contour2D" "NurbsPrototypes.wrl#Contour2D" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#Contour2D" ' >
<field name='addChildrentype='MFNodeaccessType='inputOnly'
 appinfo='[NurbsCurve|ContourPolyline2D]' />

<field name='removeChildrentype='MFNodeaccessType='inputOnly'
 appinfo='[NurbsCurve|ContourPolyline2D]' />

<field name='childrentype='MFNodeaccessType='initializeOnly'
 appinfo='[NurbsCurve|ContourPolyline2D] default []' />

<field name='set_childrentype='MFNodeaccessType='inputOnly'/>
<field name='children_changedtype='MFNodeaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='ContourPolyline2D'
  url=' "NurbsPrototypes.x3d#ContourPolyline2D" "../NURBS/NurbsPrototypes.x3d#ContourPolyline2D" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#ContourPolyline2D" "NurbsPrototypes.wrl#ContourPolyline2D" "../NURBS/NurbsPrototypes.wrl#ContourPolyline2D" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#ContourPolyline2D" ' >
<field name='pointtype='MFVec2faccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='set_pointtype='MFVec2faccessType='inputOnly'/>
<field name='point_changedtype='MFVec2faccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='CoordinateDouble'
  url=' "NurbsPrototypes.x3d#CoordinateDouble" "../NURBS/NurbsPrototypes.x3d#CoordinateDouble" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#CoordinateDouble" "NurbsPrototypes.wrl#CoordinateDouble" "../NURBS/NurbsPrototypes.wrl#CoordinateDouble" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#CoordinateDouble" ' >
<field name='pointtype='MFVec3faccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='set_pointtype='MFVec3faccessType='inputOnly'/>
<field name='point_changedtype='MFVec3faccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsCurve'
  url=' "NurbsPrototypes.x3d#NurbsCurve" "../NURBS/NurbsPrototypes.x3d#NurbsCurve" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsCurve" "NurbsPrototypes.wrl#NurbsCurve" "../NURBS/NurbsPrototypes.wrl#NurbsCurve" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsCurve" ' >
<field name='controlPointtype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DCoordinateNode] default []' />

<field name='tessellationtype='SFInt32accessType='initializeOnly'
 appinfo='range (-∞,∞) default 0' />

<field name='weighttype='MFDoubleaccessType='initializeOnly'
 appinfo='range (0,∞) default []' />

<field name='closedtype='SFBoolaccessType='initializeOnly'
 appinfo='default false' />

<field name='knottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='ordertype='SFInt32accessType='initializeOnly'
 appinfo='range [2,∞) default 3' />

<field name='set_controlPointtype='SFNodeaccessType='inputOnly'/>
<field name='controlPoint_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_tessellationtype='SFInt32accessType='inputOnly'/>
<field name='tessellation_changedtype='SFInt32accessType='outputOnly'/>
<field name='set_weighttype='MFDoubleaccessType='inputOnly'/>
<field name='weight_changedtype='MFDoubleaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsCurve2D'
  url=' "NurbsPrototypes.x3d#NurbsCurve2D" "../NURBS/NurbsPrototypes.x3d#NurbsCurve2D" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsCurve2D" "NurbsPrototypes.wrl#NurbsCurve2D" "../NURBS/NurbsPrototypes.wrl#NurbsCurve2D" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsCurve2D" ' >
<field name='controlPointtype='MFVec2faccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='tessellationtype='SFInt32accessType='initializeOnly'
 appinfo='range (-∞,∞) default 0' />

<field name='weighttype='MFDoubleaccessType='initializeOnly'
 appinfo='range (0,∞) default []' />

<field name='knottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='ordertype='SFInt32accessType='initializeOnly'
 appinfo='range [2,∞) default 3' />

<field name='closedtype='SFBoolaccessType='initializeOnly'
 appinfo='default false' />

<field name='set_controlPointtype='MFVec2faccessType='inputOnly'/>
<field name='controlPoint_changedtype='MFVec2faccessType='outputOnly'/>
<field name='set_tessellationtype='SFInt32accessType='inputOnly'/>
<field name='tessellation_changedtype='SFInt32accessType='outputOnly'/>
<field name='set_weighttype='MFDoubleaccessType='inputOnly'/>
<field name='weight_changedtype='MFDoubleaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsOrientationInterpolator'
  url=' "NurbsPrototypes.x3d#NurbsOrientationInterpolator" "../NURBS/NurbsPrototypes.x3d#NurbsOrientationInterpolator" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsOrientationInterpolator" "NurbsPrototypes.wrl#NurbsOrientationInterpolator" "../NURBS/NurbsPrototypes.wrl#NurbsOrientationInterpolator" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsOrientationInterpolator" ' >
<field name='set_fractiontype='SFFloataccessType='inputOnly'
 appinfo='range (-∞,∞)' />

<field name='controlPointtype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DCoordinateNode] default []' />

<field name='knottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='ordertype='SFInt32accessType='initializeOnly'
 appinfo='range (2,∞) default 3' />

<field name='weighttype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='value_changedtype='SFRotationaccessType='outputOnly'/>
<field name='set_controlPointtype='SFNodeaccessType='inputOnly'/>
<field name='controlPoint_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_knottype='MFDoubleaccessType='inputOnly'/>
<field name='knot_changedtype='MFDoubleaccessType='outputOnly'/>
<field name='set_ordertype='SFInt32accessType='inputOnly'/>
<field name='order_changedtype='SFInt32accessType='outputOnly'/>
<field name='set_weighttype='MFDoubleaccessType='inputOnly'/>
<field name='weight_changedtype='MFDoubleaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsPatchSurface'
  url=' "NurbsPrototypes.x3d#NurbsPatchSurface" "../NURBS/NurbsPrototypes.x3d#NurbsPatchSurface" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsPatchSurface" "NurbsPrototypes.wrl#NurbsPatchSurface" "../NURBS/NurbsPrototypes.wrl#NurbsPatchSurface" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsPatchSurface" ' >
<field name='controlPointtype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DCoordinateNode] default []' />

<field name='texCoordtype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DTextureCoordinateNode|NurbsTextureCoordinate] default []' />

<field name='uTessellationtype='SFInt32accessType='initializeOnly'
 appinfo='range (-∞,∞) default 0' />

<field name='vTessellationtype='SFInt32accessType='initializeOnly'
 appinfo='range (-∞,∞) default 0' />

<field name='weighttype='MFDoubleaccessType='initializeOnly'
 appinfo='range (0,∞) default []' />

<field name='solidtype='SFBoolaccessType='initializeOnly'
 appinfo='default true' />

<field name='uClosedtype='SFBoolaccessType='initializeOnly'
 appinfo='default false' />

<field name='uDimensiontype='SFInt32accessType='initializeOnly'
 appinfo='range [0,∞) default 0' />

<field name='uKnottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='uOrdertype='SFInt32accessType='initializeOnly'
 appinfo='range [2,∞) default 3' />

<field name='vClosedtype='SFBoolaccessType='initializeOnly'
 appinfo='default false' />

<field name='vDimensiontype='SFInt32accessType='initializeOnly'
 appinfo='range [0,∞) default 0' />

<field name='vKnottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='vOrdertype='SFInt32accessType='initializeOnly'
 appinfo='range [2,∞) default 3' />

<field name='set_controlPointtype='SFNodeaccessType='inputOnly'/>
<field name='controlPoint_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_texCoordtype='SFNodeaccessType='inputOnly'/>
<field name='texCoord_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_uTessellationtype='SFInt32accessType='inputOnly'/>
<field name='uTessellation_changedtype='SFInt32accessType='outputOnly'/>
<field name='set_vTessellationtype='SFInt32accessType='inputOnly'/>
<field name='vTessellation_changedtype='SFInt32accessType='outputOnly'/>
<field name='set_weighttype='MFDoubleaccessType='inputOnly'/>
<field name='weight_changedtype='MFDoubleaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsPositionInterpolator'
  url=' "NurbsPrototypes.x3d#NurbsPositionInterpolator" "../NURBS/NurbsPrototypes.x3d#NurbsPositionInterpolator" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsPositionInterpolator" "NurbsPrototypes.wrl#NurbsPositionInterpolator" "../NURBS/NurbsPrototypes.wrl#NurbsPositionInterpolator" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsPositionInterpolator" ' >
<field name='set_fractiontype='SFFloataccessType='inputOnly'
 appinfo='range (-∞,∞)' />

<field name='controlPointtype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DCoordinateNode] default []' />

<field name='knottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='ordertype='SFInt32accessType='initializeOnly'
 appinfo='range (2,∞) default 3' />

<field name='weighttype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='value_changedtype='SFVec3faccessType='outputOnly'/>
<field name='set_controlPointtype='SFNodeaccessType='inputOnly'/>
<field name='controlPoint_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_knottype='MFDoubleaccessType='inputOnly'/>
<field name='knot_changedtype='MFDoubleaccessType='outputOnly'/>
<field name='set_ordertype='SFInt32accessType='inputOnly'/>
<field name='order_changedtype='SFInt32accessType='outputOnly'/>
<field name='set_weighttype='MFDoubleaccessType='inputOnly'/>
<field name='weight_changedtype='MFDoubleaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsSet'
  url=' "NurbsPrototypes.x3d#NurbsSet" "../NURBS/NurbsPrototypes.x3d#NurbsSet" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsSet" "NurbsPrototypes.wrl#NurbsSet" "../NURBS/NurbsPrototypes.wrl#NurbsSet" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsSet" ' >
<field name='addGeometrytype='MFNodeaccessType='inputOnly'
 appinfo='[NurbsPatchSurface]' />

<field name='removeGeometrytype='MFNodeaccessType='inputOnly'
 appinfo='[NurbsPatchSurface]' />

<field name='geometrytype='MFNodeaccessType='initializeOnly'
 appinfo='[NurbsPatchSurface] default []' />

<field name='tessellationScaletype='SFFloataccessType='initializeOnly'
 appinfo='range (0,∞) default 1.0' />

<field name='bboxCentertype='SFVec3faccessType='initializeOnly'
 appinfo='range (-∞,∞) default [0 0 0]' />

<field name='bboxSizetype='SFVec3faccessType='initializeOnly'
 appinfo='range [0,∞); [-1 -1 -1] default [-1 -1 -1]' />

<field name='set_geometrytype='MFNodeaccessType='inputOnly'/>
<field name='geometry_changedtype='MFNodeaccessType='outputOnly'/>
<field name='set_tessellationScaletype='SFFloataccessType='inputOnly'/>
<field name='tessellationScale_changedtype='SFFloataccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsSurfaceInterpolator'
  url=' "NurbsPrototypes.x3d#NurbsSurfaceInterpolator" "../NURBS/NurbsPrototypes.x3d#NurbsSurfaceInterpolator" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsSurfaceInterpolator" "NurbsPrototypes.wrl#NurbsSurfaceInterpolator" "../NURBS/NurbsPrototypes.wrl#NurbsSurfaceInterpolator" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsSurfaceInterpolator" ' >
<field name='set_fractiontype='SFVec2faccessType='inputOnly'
 appinfo='range (-∞,∞)' />

<field name='controlPointtype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DCoordinateNode] default []' />

<field name='weighttype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='position_changedtype='SFVec3faccessType='outputOnly'/>
<field name='normal_changedtype='SFVec3faccessType='outputOnly'/>
<field name='uDimensiontype='SFInt32accessType='initializeOnly'
 appinfo='range [0,∞) default 0' />

<field name='uKnottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='uOrdertype='SFInt32accessType='initializeOnly'
 appinfo='range [2,∞) default 3' />

<field name='vDimensiontype='SFInt32accessType='initializeOnly'
 appinfo='range [0,∞) default 0' />

<field name='vKnottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='vOrdertype='SFInt32accessType='initializeOnly'
 appinfo='range [2∞) default 3' />

<field name='set_controlPointtype='SFNodeaccessType='inputOnly'/>
<field name='controlPoint_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_weighttype='MFDoubleaccessType='inputOnly'/>
<field name='weight_changedtype='MFDoubleaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsSweptSurface'
  url=' "NurbsPrototypes.x3d#NurbsSweptSurface" "../NURBS/NurbsPrototypes.x3d#NurbsSweptSurface" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsSweptSurface" "NurbsPrototypes.wrl#NurbsSweptSurface" "../NURBS/NurbsPrototypes.wrl#NurbsSweptSurface" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsSweptSurface" ' >
<field name='crossSectionCurvetype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DNurbsControlCurveNode] default []' />

<field name='trajectoryCurvetype='SFNodeaccessType='initializeOnly'
 appinfo='[NurbsCurve] default []' />

<field name='ccwtype='SFBoolaccessType='initializeOnly'
 appinfo='default true' />

<field name='solidtype='SFBoolaccessType='initializeOnly'
 appinfo='default true' />

<field name='set_crossSectionCurvetype='SFNodeaccessType='inputOnly'/>
<field name='crossSectionCurve_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_trajectoryCurvetype='SFNodeaccessType='inputOnly'/>
<field name='trajectoryCurve_changedtype='SFNodeaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsSwungSurface'
  url=' "NurbsPrototypes.x3d#NurbsSwungSurface" "../NURBS/NurbsPrototypes.x3d#NurbsSwungSurface" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsSwungSurface" "NurbsPrototypes.wrl#NurbsSwungSurface" "../NURBS/NurbsPrototypes.wrl#NurbsSwungSurface" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsSwungSurface" ' >
<field name='profileCurvetype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DNurbsControlCurveNode] default []' />

<field name='trajectoryCurvetype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DNurbsControlCurveNode] default []' />

<field name='ccwtype='SFBoolaccessType='initializeOnly'
 appinfo='default true' />

<field name='solidtype='SFBoolaccessType='initializeOnly'
 appinfo='default true' />

<field name='set_profileCurvetype='SFNodeaccessType='inputOnly'/>
<field name='profileCurve_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_trajectoryCurvetype='SFNodeaccessType='inputOnly'/>
<field name='trajectoryCurve_changedtype='SFNodeaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsTextureCoordinate'
  url=' "NurbsPrototypes.x3d#NurbsTextureCoordinate" "../NURBS/NurbsPrototypes.x3d#NurbsTextureSurface" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsTextureCoordinate" "NurbsPrototypes.wrl#NurbsTextureCoordinate" "../NURBS/NurbsPrototypes.wrl#NurbsTextureCoordinate" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsTextureCoordinate" ' >
<field name='controlPointtype='MFVec2faccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='weighttype='MFFloataccessType='initializeOnly'
 appinfo='range (0,∞) default []' />

<field name='uDimensiontype='SFInt32accessType='initializeOnly'
 appinfo='range [0,∞) default 0' />

<field name='uKnottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='uOrdertype='SFInt32accessType='initializeOnly'
 appinfo='range [2∞) default 3' />

<field name='vDimensiontype='SFInt32accessType='initializeOnly'
 appinfo='range [0,∞) default 0' />

<field name='vKnottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='vOrdertype='SFInt32accessType='initializeOnly'
 appinfo='range [2,∞) default 3' />

<field name='set_controlPointtype='MFVec2faccessType='inputOnly'/>
<field name='controlPoint_changedtype='MFVec2faccessType='outputOnly'/>
<field name='set_weighttype='MFFloataccessType='inputOnly'/>
<field name='weight_changedtype='MFFloataccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<ExternProtoDeclare name='NurbsTrimmedSurface'
  url=' "NurbsPrototypes.x3d#NurbsTrimmedSurface" "../NURBS/NurbsPrototypes.x3d#NurbsTrimmedSurface" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.x3d#NurbsTrimmedSurface" "NurbsPrototypes.wrl#NurbsTrimmedSurface" "../NURBS/NurbsPrototypes.wrl#NurbsTrimmedSurface" "https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsPrototypes.wrl#NurbsTrimmedSurface" ' >
<!-- No attributes, node-type children and events only. -->
<field name='addTrimmingContourtype='MFNodeaccessType='inputOnly'
 appinfo='[Contour2D]' />

<field name='removeTrimmingContourtype='MFNodeaccessType='inputOnly'
 appinfo='[Contour2D]' />

<field name='controlPointtype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DCoordinateNode] default []' />

<field name='texCoordtype='SFNodeaccessType='initializeOnly'
 appinfo='[X3DTextureCoordinateNode|NurbsTextureCoordinate] default []' />

<field name='trimmingContourtype='MFNodeaccessType='initializeOnly'
 appinfo='[Contour2D] default []' />

<field name='uTessellationtype='SFInt32accessType='initializeOnly'
 appinfo='range (-∞,∞) default 0' />

<field name='vTessellationtype='SFInt32accessType='initializeOnly'
 appinfo='range (-∞,∞) default 0' />

<field name='weighttype='MFDoubleaccessType='initializeOnly'
 appinfo='range (0,∞) default []' />

<field name='solidtype='SFBoolaccessType='initializeOnly'
 appinfo='default true' />

<field name='uClosedtype='SFBoolaccessType='initializeOnly'
 appinfo='default false' />

<field name='uDimensiontype='SFInt32accessType='initializeOnly'
 appinfo='range [0,∞) default 0' />

<field name='uKnottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='uOrdertype='SFInt32accessType='initializeOnly'
 appinfo='range [2,∞) default 3' />

<field name='vClosedtype='SFBoolaccessType='initializeOnly'
 appinfo='default false' />

<field name='vDimensiontype='SFInt32accessType='initializeOnly'
 appinfo='range [0,∞) default 0' />

<field name='vKnottype='MFDoubleaccessType='initializeOnly'
 appinfo='range (-∞,∞) default []' />

<field name='vOrdertype='SFInt32accessType='initializeOnly'
 appinfo='range [2,∞) default 3' />

<field name='set_controlPointtype='SFNodeaccessType='inputOnly'/>
<field name='controlPoint_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_texCoordtype='SFNodeaccessType='inputOnly'/>
<field name='texCoord_changedtype='SFNodeaccessType='outputOnly'/>
<field name='set_trimmingContourtype='MFNodeaccessType='inputOnly'/>
<field name='trimmingContour_changedtype='MFNodeaccessType='outputOnly'/>
<field name='set_uTessellationtype='SFInt32accessType='inputOnly'/>
<field name='uTessellation_changedtype='SFInt32accessType='outputOnly'/>
<field name='set_vTessellationtype='SFInt32accessType='inputOnly'/>
<field name='vTessellation_changedtype='SFInt32accessType='outputOnly'/>
<field name='set_weighttype='MFDoubleaccessType='inputOnly'/>
<field name='weight_changedtype='MFDoubleaccessType='outputOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only' />
</ExternProtoDeclare>
<Shape>
<Appearance>
<Material diffuseColor='0.8 0.6 0.2'/>
</Appearance>
<Text string='"NurbsExternPrototypes is a" "developmental file for producing" "EXTERNPROTO signatures" "in VRML 97 syntax."'>
<FontStyle justify='"MIDDLE" "MIDDLE"size='0.7'/>
</Text>
</Shape>
</Scene>
</X3D>
<!--

Index for ExternProtoDeclare definitions: Contour2D, ContourPolyline2D, CoordinateDouble, NurbsCurve, NurbsCurve2D, NurbsOrientationInterpolator, NurbsPatchSurface, NurbsPositionInterpolator, NurbsSet, NurbsSurfaceInterpolator, NurbsSweptSurface, NurbsSwungSurface, NurbsTextureCoordinate, NurbsTrimmedSurface
-->
-->

<!-- Online at
https://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsExternPrototypesIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsExternPrototypes.x3d -->

<!-- Color legend: X3D terminology <X3dNode field='value'/> matches XML terminology <XmlElement attribute='value'/>
(Light-blue background: event-based behavior node or statement) (Grey background inside box: inserted documentation) (Magenta background: X3D Extensibility)
    <ProtoDeclare name='ProtoName'> <field name='fieldName'/> </ProtoDeclare> -->

to top <!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->