| 1 |
<?xml version="1.0" encoding="UTF-8"?>
|
| 2 |
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
|
| 3 | <X3D profile='Core' version='3.0' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.0.xsd'> |
| 4 | <head> |
| 5 | <component level='3'/> |
| 6 | <component name='Geometry2D'/> |
| 7 | <component level='3' name='Geometry2D'/> |
| 8 | <component level='3' name='Geometry2D'/> |
| 9 | <unit category='angle' conversionFactor='-1' name='nonPositiveConversionFactor'/> |
| 10 | <unit category='angle' conversionFactor='-1' name='nonPositiveConversionFactor'/> |
| 11 | <meta name='title' content=' TestSchematronDiagnostics.x3d '/> |
| 12 | <meta name='description' content='Test Schematron diagnostics capabilities for detecting various content errors and style warnings.'/> |
| 13 | <meta name='description' content='Second meta tag to test warning that two description meta tags are present.'/> |
| 14 | <meta name='creator' content='Don Brutzman'/> |
| 15 | <meta name='created' content='19 October 2008'/> |
| 16 | <meta name='modified' content='25 October 2020'/> |
| 17 | <meta name=' warning ' content=' The regex is not finding IllegalMinusSignsTest. '/> |
| 18 | <meta name=' error ' content=' Test scene with many errors, primarily intended to exercise most of the rules in the X3D Schematron diagnostic set. '/> |
| 19 | <meta name=' warning ' content=' Test scene with many warnings embedded in comments. '/> |
| 20 | <meta name='hint' content='Test scene with many hints embedded in comments.'/> |
| 21 | <meta name='info' content='Perhaps the most erroneous X3D scene in the world!'/> |
| 22 | <meta name='info' content='Perhaps the most erroneous X3D scene in the world!'/> |
| 23 | <meta name='reference' content='https://www.web3d.org/x3d/tools/schematron/X3dSchematronValidityChecks.sch'/> |
| 24 | <meta name='reference' content=' https://www.web3d.org/x3d/tools/schematron/X3dSchematron.html '/> |
| 25 | <meta name='reference' content='https://www.web3d.org/x3d/content/examples/X3dResources.html#QualityAssurance'/> |
| 26 | <meta name='identifier' content=' https://www.web3d.org/x3d/content/examples/Basic/development/TestSchematronDiagnostics.x3d '/> |
| 27 | <meta name='generator' content='X3D-Edit 3.3, https://www.web3d.org/x3d/tools/X3D-Edit'/> |
| 28 | <meta name='license' content='../license.html'/> |
| 29 | </head> |
HAnimHumanoid model visualization reports: JimDandy HAnimHumanoid Report, JimDandy HAnimHumanoid Report
Event Graph ROUTE Table shows event connections.
-->
<!--
DEF nodes index:
"QuotedDEF",
AnchorBookmark,
AppearanceWithProtoInstanceChild,
BackgroundColorProblems,
BackgroundWithParentLOD,
BadBoundingBoxValues,
BadChild,
BadContainerField,
BadNameBadFieldValueNameMissingInitialization,
BothUrlAndCDATA,
CADFaceMultipleShapeChildren,
CADFaceOneShapeChild,
CaseSensitive,
CharacterBeforeQuotes,
ChildrenCorrectContainerField,
ChildrenIncorrectContainerField,
Clock,
ColorInterpolatorColorProblems,
containerFieldNot_shape,
ContainsISchildButNoParentProtoDeclare,
CountTests,
DEF,
DEF_USEinsideProtoDeclareScope,
DEFAppendedSpace,
DefaultImageData,
DEFcontainsUSEcopyOfSelf,
DEFEmbedded Space,
DEFoutsideProtoDeclareScope,
DEFPrependedSpace,
DeprecatedNodeUnquotedGeoSystem,
DirectionalLightColorProblems,
DistanceMismatchIllegalFieldOfView,
DoubleDeclaration2,
DoubleDEF,
DoubleDEF,
DuplicatedCoordinatePointArray,
DuplicatedDeclaration,
DuplicateImageData,
duplicateName1,
duplicateName2,
ElevationGridBadDimensions,
ElevationGridInsufficientHeights,
ElevationGridTooManyHeights,
Embedded Blanks DEF,
EmbeddedQuoteMarksOK,
EmptyColor,
EmptyCoordinate,
EmptyGroup,
EmptyGroupContainsComment,
EmptyGroupInsideSwitch,
EmptyNormal,
EmptyShapeWithCommentSilencesWarning,
EmptySwitchContainsROUTE,
EmptyTextureCoordinate,
EscapedQuoteMarkWarning,
ExtrusionCrossSectionMiscountSpineMismatchCrossSectionMiscount,
familyValuesMissingIntermediateQuotes,
FirstTitle,
FogColorProblems,
FogWithParentLOD,
FontStyleFieldsContainIllegalQuotes,
GeometryNodeCollisionParentNeedsParentShapeWithProxyContainerField,
GeometryNodeNeedsShapeParent,
hanim_HumanoidRoot,
hanim_Top_view,
HAnimCoordinateCorrectContainerField,
HAnimCoordinateDoubleCorrectContainerField,
HAnimCoordinateDoubleIncorrectContainerField,
HAnimCoordinateIncorrectContainerField,
HAnimNormalIncorrectContainerField,
HasCDATAwithoutEcmascriptHeader,
HasLegalCDATA,
HasUrlNoCDATA,
HelloWorld,
HumanoidCannotContainChildrenNodes,
IfsEmptyChildren,
IfsSingletonChildren,
IllegalBackgroundChild,
IllegalChild,
IllegalChildForLoadSensor,
IllegalChildrenContainerFields,
IllegalColorValuesMaterial,
IllegalCombinationDEFUSE,
IllegalDecimalPointsTest,
IllegalFields,
IllegalGeometryProxyNode,
IllegalHAnimDisplacerInHAnimSiteNode,
IllegalImageData,
IllegalInfoQuotes,
IllegalMetadataContainerField,
IllegalMinusSignsTest,
IllegalNameIllegalParent,
IllegalParent1,
IllegalParent2,
IllegalParent3,
IllegalParentChild-DEF-USE,
IllegalPlaneEquationValues,
IllegalTextureBackgroundChild,
IllegalTextureBackgroundChildContainerField,
IllegalValuesColor,
IllegalValuesColorRGBA,
ImageDataTest,
ImproperCapitalizationOfNodeName,
improperDEF,
ImproperDEFname,
IncorrectChildNodes,
incorrectlyNestedHumanoidMissingNameAttribute,
InterpolatorWithSingleKey,
JointInterpolator,
JointNameSegmentNameHierarchyTest,
LegalChild,
LegalChild1,
LegalChild2,
LegalChild3,
LegalGeoSystem,
MismatchedJointCenter_l_knee,
MismatchedJointCenter_r_knee,
MismatchedKeyArrays,
MismatchedKeyArraysSFVec3f,
MissingComponentH-AnimLevel1,
MissingIndex,
MissingNameAttributeCheckContainerField,
MissingParentShape,
NavigationInfoWithParentLOD,
NavigationInfoWithTypeALL,
NeedQuoteMarks,
negativeCenterHeight,
negativeTranslationHeight,
NoBackgroundChildrenAllowed,
NoChildAppearance,
NoChildGeometry,
noChildNodeforUSE,
NoChildren,
NoChildrenNoUrl,
NodeFollowsRoute1,
NodeFollowsRoute2,
NodeUrlVRML.wrl.PrecedingX3D.x3d,
NoImageData,
NoLocalFogV3.0,
NoMaterialNoTexture,
NoOutputROUTE,
NoParentSoundNode,
NormalPath,
NoROUTE,
NoROUTEs,
NoROUTEsNoKeyValueArray,
NoSpacesInDescription,
NoTextureChildren,
notUniqueName1,
notUniqueName2,
NoUrlIllegalChild,
NoUrlNoCDATA,
OI,
OnlyFieldDeclarationsAllowedInProtoInterface,
PeerBillboard,
PeerCylinderSensor,
PeerTouchSensor,
PointLightColorProblems,
PrototypeRootNode,
RecursiveInlineInvocation,
ReusableAudioClip,
rootNodeContainerFieldIsCorrect,
RouteButNoFields,
SecondTitle,
separateBackColorWrong,
SingleColor,
SingleCoordinate,
SingleNormal,
SingleProtoInstanceChild,
SingleTextureCoordinate,
SoundDefaults,
SoundMaxLessThanDefaultMin,
SoundMaxNegative,
SoundMinGreaterThanDefaultMax,
SoundMinGreaterThanMax,
SoundMinNegative,
SpotLightColorProblems,
StaticGroupChildTests,
StaticGroupDescendantsCannotConsumeEvents,
StaticGroupDescendantsCannotProduceEvents,
textureContainerField,
TextureCoordinateGeneratorIllegalMode,
TextureCoordinateGeneratorIllegalParameterCount,
TextureTransformWithNoSiblingTextureNode,
ThreeUnescapedQuoteMarksMissingSpaceEndsApostrophe,
UnquotedTypeAndTransitionTypeErrors,
UrlDotWrlPrecedesDotX3d,
USEandDEFtogether,
USEmismatchDEFnodeType,
USEoutsideProtoDeclareScope,
USEprecedesDEF,
USEwithChildElement,
watchListContainerField,
ZeroMagnitudeRotationAxes
Index for Viewpoint and ViewpointGroup nodes: DEFdescriptionMatch, hanim_Top_viewpoint, IllegalViewpointGroupChild, ISconnectDescription, OKviewpoint, ViewHumanoidMissingCenterOfRotation, ViewpointWithParentLOD
Index for ExternProtoDeclare definitions: DoubleDeclarationUrlMissingPoundProtoName, DoubleDeclarationUrlMissingPoundProtoName, DoubleMixedDeclaration, ExternProtoDeclareAfterInstance, ExternProtoDeclareBeforeInstance, ExternProtoDeclareUrlVRML.wrl.MissingX3D.x3d, ExternProtoDeclareUrlVRML.wrl.PrecedingX3D.x3d, X3D
Index for ProtoDeclare definitions: DoubleMixedDeclaration, DoubleProtoDeclaration, DoubleProtoDeclaration, EmptyProtoInterfaceEmptyProtoBody, IllegalProtoInterface, MissingProtoBody, ProtoDeclareAfterInstance, ProtoDeclareBeforeInstance, ReferenceTest, X3D
-->| 30 | <Scene USE='improperUSE'> |
| 31 | <!-- - illegal comment starts with extra hyphen - character --> |
| 32 | <!-- - illegal comment has intermediate paired-hyphen - - characters --> |
| 33 |
<!-- TouchSensor
IllegalCombinationDEFUSE is a DEF node that has 1 USE node: USE_1
<!-- ROUTE information for IllegalCombinationDEFUSE node: [no output ROUTE found] --> <TouchSensor USE='IllegalCombinationDEFUSE'/> |
| 34 |
<!-- ROUTE information for DoubleDEF node:
[no output ROUTE found] --> <CylinderSensor DEF='DoubleDEF' enabled='false'/> |
| 35 |
<!-- ROUTE information for DoubleDEF node:
[no output ROUTE found] --> <TimeSensor DEF='DoubleDEF'/> |
| 36 | <WorldInfo DEF='FirstTitle' title='title #1'/> |
| 37 | <WorldInfo DEF='SecondTitle' title='title #2'/> |
| 38 | <WorldInfo DEF='DEFPrependedSpace'/> |
| 39 | <WorldInfo DEF='DEFEmbedded Space'/> |
| 40 | <WorldInfo DEF='DEFAppendedSpace'/> |
| 41 | <WorldInfo DEF='IllegalInfoQuotes' info='"WorldInfo info strings need to be quoted"'/> |
| 42 | <WorldInfo DEF='IllegalChild'> |
| 43 | <WorldInfo/> |
| 44 | </WorldInfo> |
| 45 | <WorldInfo DEF='LegalChild'> |
| 46 | <MetadataString/> |
| 47 | </WorldInfo> |
| 48 | <Anchor DEF='NoChildrenNoUrl'/> |
| 49 | <Anchor DEF='AnchorBookmark' parameter='"target=unquoted"' url=' "#missingBookmark" '> |
| 50 | <Group/> |
| 51 | </Anchor> |
| 52 |
|
| 53 |
|
| 54 | <Inline DEF='NoUrlIllegalChild'> |
| 55 | <WorldInfo/> |
| 56 | </Inline> |
| 57 |
|
| 58 |
|
| 59 |
|
| 60 |
<!-- Shape
NoChildAppearance is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
<Shape DEF='NoChildAppearance'> |
| 61 | <Box/> |
| 62 | </Shape> |
| 63 | <Shape DEF='NoChildGeometry'> |
| 64 | |
| 65 | </Shape> |
| 66 | <!-- test no other fields if USE present --> |
| 67 | <Shape USE='NoChildAppearance'/> |
| 68 | <Shape USE='NoChildAppearance'/> |
| 69 | <Shape USE='NoChildAppearance'/> |
| 70 |
<!-- Shape
USEwithChildElement is a DEF node that has 1 USE node: USE_1 -->
<Shape DEF='USEwithChildElement'> |
| 71 | <Box/> |
| 72 | <Appearance DEF='AppearanceWithProtoInstanceChild'> |
| 73 | <ProtoInstance name='NodeSubstituteNoDeclaration'/> |
| 74 | </Appearance> |
| 75 | </Shape> |
| 76 | <Appearance DEF='MissingParentShape'/> |
| 77 | <Shape USE='USEwithChildElement'> |
| 78 | <Appearance USE='NoMaterialNoTexture'/> |
| 79 | </Shape> |
| 80 | <Shape DEF='SingleProtoInstanceChild'> |
| 81 | <ProtoInstance name='NodeSubstituteNoDeclaration'/> |
| 82 | </Shape> |
| 83 | <!-- no DEF name --> |
| 84 |
<!-- ROUTE information for NoOutputROUTE node:
[no output ROUTE found] --> <TimeSensor DEF='NoOutputROUTE'/> |
| 85 |
<!-- ROUTE information for Clock node:
[no output ROUTE found] --> <TimeSensor DEF='Clock' cycleInterval='100' loop='true'/> |
| 86 | <ColorInterpolator/> |
| 87 |
<!-- ROUTE information for InterpolatorWithSingleKey node:
[no input ROUTE found] [no output ROUTE found] --> <ColorInterpolator DEF='InterpolatorWithSingleKey' key='0'/> |
| 88 |
<!-- ROUTE information for ColorInterpolatorColorProblems node:
[no input ROUTE found] [no output ROUTE found] --> <ColorInterpolator DEF='ColorInterpolatorColorProblems' key='0' keyValue='-1 1.2 0.3 0.4'/> |
| 89 | <!-- no DEF name --> |
| 90 |
<!-- ROUTE information for NoROUTEsNoKeyValueArray node:
[no input ROUTE found] [no output ROUTE found] --> <PositionInterpolator DEF='NoROUTEsNoKeyValueArray' key='0 0'/> |
| 91 |
<!-- ROUTE information for MismatchedKeyArrays node:
[self-route from value_changed to set_fraction
]
[no input ROUTE found] [no output ROUTE found] -->
<ScalarInterpolator DEF='MismatchedKeyArrays' key='0' keyValue='0 0'/> |
| 92 |
<!-- ROUTE information for MismatchedKeyArraysSFVec3f node:
[self-route from value_changed to set_fraction
]
[no input ROUTE found] [no output ROUTE found] -->
<NormalInterpolator DEF='MismatchedKeyArraysSFVec3f' key='0 1' keyValue='0 0 0 1 1'/> |
| 93 | <!-- bogus ROUTEs to allow trapping deeper error --> |
| 94 | < ROUTE fromNode='MismatchedKeyArrays' fromField='value_changed' toNode='MismatchedKeyArrays' toField='set_fraction'/> |
| 95 | < ROUTE fromNode='MismatchedKeyArraysSFVec3f' fromField='value_changed' toNode='MismatchedKeyArraysSFVec3f' toField='set_fraction'/> |
| 96 | <BooleanSequencer/> |
| 97 |
<!-- ROUTE information for NoROUTEs node:
[no input ROUTE found] [no output ROUTE found] --> <BooleanSequencer DEF='NoROUTEs' key='0 0.5 1' keyValue='true false true'/> |
| 98 | <IntegerTrigger/> |
| 99 |
<!-- ROUTE information for NoROUTE node:
[no input ROUTE found] [no output ROUTE found] --> <IntegerTrigger DEF='NoROUTE'/> |
| 100 |
<!-- ROUTE information for OI node:
[no input ROUTE found] [no output ROUTE found] --> <OrientationInterpolator DEF='OI'/> |
| 101 |
<!-- ROUTE information for ChildrenIncorrectContainerField node:
[no output ROUTE found] --> <LoadSensor DEF='ChildrenIncorrectContainerField'> |
| 102 | <ImageTexture DEF='textureContainerField' url=' "http:/bogus" "https://www.web3d.org/x3d/content/examples/Basic/development/http:/bogus" '/> |
| 103 | </LoadSensor> |
| 104 |
<!-- ROUTE information for ChildrenCorrectContainerField node:
[no output ROUTE found] --> <LoadSensor DEF='ChildrenCorrectContainerField'> |
| 105 | <ImageTexture DEF='watchListContainerField' containerField='watchList'/> |
| 106 | </LoadSensor> |
| 107 |
<!-- ROUTE information for IncorrectChildNodes node:
[no output ROUTE found] --> <LoadSensor DEF='IncorrectChildNodes'> |
| 108 | <Group containerField='watchList'/> |
| 109 | <Anchor DEF='IllegalChildForLoadSensor'/> |
| 110 | </LoadSensor> |
| 111 | <Script DEF='HasLegalCDATA'> |
| 112 | <field name='duplicatedFieldName' type='SFBool' accessType='inputOnly'/> |
| 113 | <field name='duplicatedFieldName' type='SFBool' accessType='inputOnly'/> |
<![CDATA[
ecmascript:
function initialize()
{
// initialize() method silences ROUTE check
}
]]>
|
|
| 115 | </Script> |
| 116 | <Script DEF='HasCDATAwithoutEcmascriptHeader'> |
| 117 | <field name='noAccessType' type='SFBool'/> |
| 118 | <field name='noType' accessType='inputOnly'/> |
| 119 | <field type='noName' accessType='inputOnly'/> |
| 120 | <field name='neverSet' type='SFBool' accessType='outputOnly'/> |
<![CDATA[
ecmascript:
// empty Script body
]]>
|
|
| 122 | </Script> |
| 123 | <Script DEF='HasUrlNoCDATA' url=' "TestSchematronDiagnostics.js" "https://www.web3d.org/x3d/content/examples/Basic/development/TestSchematronDiagnostics.js" '> |
| 124 | </Script> |
| 124 | <Script DEF='NoUrlNoCDATA'> |
| 125 | </Script> |
| 125 | <Script DEF='BothUrlAndCDATA' url=' "TestSchematronDiagnostics.js" "https://www.web3d.org/x3d/content/examples/Basic/development/TestSchematronDiagnostics.js" '> |
| 126 | <field name='inputFunctionDefinedTwice' type='SFBool' accessType='inputOnly'/> |
| 127 | <field name='noInputFunctionAllowed' type='SFBool' accessType='outputOnly'/> |
<![CDATA[
ecmascript:
function set_noInputFunctionAllowed (newValue)
{
// cannot have input function for output field
}
function set_inputFunctionDefinedTwice (newValue)
{
// only one definition allowed; this is #1
}
function set_inputFunctionDefinedTwice (newValue)
{
// only one definition allowed; this is #2
}
]]>
|
|
| 129 | </Script> |
| 130 | <Script DEF='RouteButNoFields' url=' "TestSchematronDiagnostics.js" "https://www.web3d.org/x3d/content/examples/Basic/development/TestSchematronDiagnostics.js" '> |
| 131 | </Script> |
| 131 | < ROUTE fromNode='NoFields' fromField='blah' toNode='NoFields' toField='blah'/> |
| 132 | <ProtoInstance name='NoDeclaration'/> |
| 133 | <ProtoDeclare name='MissingProtoBody'/> |
| 134 |
<!-- WorldInfo
DEFoutsideProtoDeclareScope is a DEF node that has 1 USE node: USE_1 --> <WorldInfo DEF='DEFoutsideProtoDeclareScope'/> |
| 135 | <ProtoDeclare name='DoubleMixedDeclaration' DEF='DuplicatedDeclaration'> |
| 136 | <ProtoBody> |
| 137 | <Group/> |
| 138 | <Viewpoint DEF='ISconnectDescription'> |
| 139 | <IS> |
| 140 | <connect nodeField='description' protoField='description'/> |
| 141 | </IS> |
| 142 | </Viewpoint> |
| 143 | <!-- TODO not yet working... --> |
| 144 | <WorldInfo USE='DEFoutsideProtoDeclareScope'/> |
| 145 |
<!-- WorldInfo
USEoutsideProtoDeclareScope is a DEF node that has 1 USE node: USE_1 --> <WorldInfo DEF='USEoutsideProtoDeclareScope'/> |
| 146 |
<!-- WorldInfo
DEF_USEinsideProtoDeclareScope is a DEF node that has 1 USE node: USE_1 --> <WorldInfo DEF='DEF_USEinsideProtoDeclareScope'/> |
| 147 | <WorldInfo USE='DEF_USEinsideProtoDeclareScope'/> |
| 148 | </ProtoBody> |
| 149 | </ProtoDeclare> |
| 150 | <WorldInfo USE='USEoutsideProtoDeclareScope'/> |
| 151 | <ExternProtoDeclare name='DoubleMixedDeclaration' url=' http://bogus#DifferentRemotePrototypeName '/> |
| 152 | <ProtoInstance name='DoubleMixedDeclaration' DEF='DoubleDeclaration2'> |
| 153 | <fieldValue name='duplicatedFieldValueName' value='blah'/> |
| 154 | <fieldValue name='duplicatedFieldValueName'/> |
| 155 | <fieldValue value='noName'/> |
| 156 | </ProtoInstance> |
| 157 | <ProtoDeclare name='DoubleProtoDeclaration' url=' "http:/bogus" "https://www.web3d.org/x3d/content/examples/Basic/development/http:/bogus" '/> |
| 158 | <ProtoDeclare name='DoubleProtoDeclaration' url=' http:///bogus '/> |
| 159 | <ExternProtoDeclare name='DoubleDeclarationUrlMissingPoundProtoName' url=' http:///bogus '/> |
| 160 | <ExternProtoDeclare name='DoubleDeclarationUrlMissingPoundProtoName' url=' "http:/bogus" "https://www.web3d.org/x3d/content/examples/Basic/development/http:/bogus" '/> |
| 161 | <ProtoDeclare name='EmptyProtoInterfaceEmptyProtoBody'> |
| 162 | <ProtoInterface/> |
| 163 | <ProtoBody/> |
| 164 | </ProtoDeclare> |
| 165 | <ProtoDeclare name='IllegalProtoInterface'> |
| 166 | <ProtoInterface> |
| 167 | <Group DEF='OnlyFieldDeclarationsAllowedInProtoInterface'/> |
| 168 | </ProtoInterface> |
| 169 | <ProtoBody> |
| 170 | <Group/> |
| 171 | </ProtoBody> |
| 172 | </ProtoDeclare> |
| 173 | <ExternProtoDeclare name='ExternProtoDeclareBeforeInstance' url=' "httpsMissing" "https://www.web3d.org/x3d/content/examples/Basic/development/httpsMissing" '/> |
| 174 | <ProtoInstance name='ExternProtoDeclareBeforeInstance'/> |
| 175 | <ProtoInstance name='ExternProtoDeclareAfterInstance'/> |
| 176 | <ExternProtoDeclare name='ExternProtoDeclareAfterInstance' url=' "httpMissing" "https://www.web3d.org/x3d/content/examples/Basic/development/httpMissing" '/> |
| 177 | <ProtoDeclare name='ProtoDeclareBeforeInstance'> |
| 178 | <ProtoBody> |
| 179 | <Group/> |
| 180 | </ProtoBody> |
| 181 | </ProtoDeclare> |
| 182 | <ProtoInstance name='ProtoDeclareBeforeInstance'/> |
| 183 | <ProtoInstance name='ProtoDeclareAfterInstance'/> |
| 184 | <ProtoDeclare name='ProtoDeclareAfterInstance'> |
| 185 | <ProtoBody> |
| 186 | <Group> |
| 187 | <IS> |
| 188 | <connect nodeField='danglingConnectNodeField' protoField='danglingConnectProtoField'/> |
| 189 | </IS> |
| 190 | </Group> |
| 191 | </ProtoBody> |
| 192 | </ProtoDeclare> |
| 193 | <Group DEF='ContainsISchildButNoParentProtoDeclare'> |
| 194 | <IS> |
| 195 | <connect nodeField='isolatedConnectNodeField' protoField='isolatedConnectProtoField'/> |
| 196 | </IS> |
| 197 | </Group> |
| 198 | <!-- test isolated (invalid) connect element <connect nodeField="isolatedConnectNodeField" protoField="isolatedConnectProtoField"/> --> |
| 199 | <Shape DEF='BadBoundingBoxValues' bboxCenter='1a 2b 3c' bboxSize='-1 -2 -3'> |
| 200 | <Extrusion DEF='ExtrusionCrossSectionMiscountSpineMismatchCrossSectionMiscount' crossSection='1 2 3' orientation='0 0 1 0 0 0 1 0 0 0 1 0' scale='1 1 1 1 1 1 1 1 1 1 1 1' spine='0 0 0 0 2 0'/> |
| 201 | <!-- check for reserved word in DEF --> |
| 202 | <Appearance DEF='DEF'> |
| 203 | <TwoSidedMaterial DEF='separateBackColorWrong' backShininess='0.123'/> |
| 204 | </Appearance> |
| 205 | </Shape> |
| 206 | < ROUTE fromNode='blah' fromField='set_blah' toNode='bleah' toField='bleah_changed'/> |
| 207 | <Viewpoint DEF='OKviewpoint' description='this viewpoint is OK'/> |
| 208 | <Viewpoint DEF='DEFdescriptionMatch' description='DEFdescriptionMatch'/> |
| 209 | <OrthoViewpoint DEF='NoSpacesInDescription' description='NeedToPutSpacesInDescription'/> |
| 210 | <GeoViewpoint DEF='IllegalFields' navType='"OTHER"' containerField='children'/> |
| 211 | <GeoMetadata DEF='BadChild' containerField='children'> |
| 212 | <GeoViewpoint DEF='BadContainerField' containerField='children'/> |
| 213 | </GeoMetadata> |
| 214 | <!-- check for reserved word in name definitions --> |
| 215 | <ProtoDeclare name='X3D'> |
| 216 | <ProtoBody> |
| 217 | <Group DEF='PrototypeRootNode'/> |
| 218 | </ProtoBody> |
| 219 | </ProtoDeclare> |
| 220 | <ExternProtoDeclare name='X3D'> |
| 221 | <field name='X3D' type='SFBool' accessType='inputOnly'/> |
| 222 | </ExternProtoDeclare> |
| 223 | <ProtoInstance name='X3D' DEF='BadNameBadFieldValueNameMissingInitialization'> |
| 224 | <fieldValue name='X3D'/> |
| 225 | </ProtoInstance> |
| 226 | <ProtoInstance name='X3D'> |
| 227 | <fieldValue name='X3D' value='doubleInitialization'> |
| 228 | <Shape/> |
| 229 | </fieldValue> |
| 230 | </ProtoInstance> |
| 231 | <LOD> |
| 232 | <Background DEF='BackgroundWithParentLOD'/> |
| 233 | <Fog DEF='FogWithParentLOD'/> |
| 234 | <NavigationInfo DEF='NavigationInfoWithParentLOD'/> |
| 235 | <Viewpoint DEF='ViewpointWithParentLOD'/> |
| 236 | </LOD> |
| 237 | <ViewpointGroup DEF='IllegalViewpointGroupChild'> |
| 238 | <Transform/> |
| 239 | </ViewpointGroup> |
| 240 | <Shape> |
| 241 | <Box/> |
| 242 | <Appearance> |
| 243 | <PixelTexture DEF='NoImageData'/> |
| 244 | </Appearance> |
| 245 | </Shape> |
| 246 | <Shape> |
| 247 | <Box/> |
| 248 | <Appearance> |
| 249 | <PixelTexture DEF='IllegalImageData' image='1 a b c d'/> |
| 250 | </Appearance> |
| 251 | </Shape> |
| 252 | <Shape> |
| 253 | <Box/> |
| 254 | <Appearance> |
| 255 | <PixelTexture DEF='DefaultImageData'/> |
| 256 | </Appearance> |
| 257 | </Shape> |
| 258 | <Shape> |
| 259 | <Box/> |
| 260 | <Appearance> |
| 261 | <PixelTexture DEF='DuplicateImageData'/> |
| 262 | </Appearance> |
| 263 | </Shape> |
| 264 | <Shape> |
| 265 | <Box/> |
| 266 | <Appearance> |
| 267 | <PixelTexture DEF='ImageDataTest' image='1 1 1 0xAA'/> |
| 268 | </Appearance> |
| 269 | </Shape> |
| 270 |
<!-- WorldInfo
USEandDEFtogether is a DEF node that has 1 USE node: USE_1 --> <WorldInfo USE='USEandDEFtogether'/> |
| 271 | <WorldInfo USE='USEprecedesDEF'/> |
| 272 |
<!-- WorldInfo
USEprecedesDEF is a DEF node that has 1 USE node: USE_1 --> <WorldInfo DEF='USEprecedesDEF'/> |
| 273 | <WorldInfo USE='noDEFforUSE'/> |
| 274 |
<!-- WorldInfo
noChildNodeforUSE is a DEF node that has 1 USE node: USE_1 --> <WorldInfo DEF='noChildNodeforUSE'/> |
| 275 | <WorldInfo USE='noChildNodeforUSE'> |
| 276 | <MetadataSet> |
| 277 | <MetadataString name='someStringArray' value='"unquoted string values"'/> |
| 278 | </MetadataSet> |
| 279 | </WorldInfo> |
| 280 |
<!-- Group
DEFcontainsUSEcopyOfSelf is a DEF node that has 1 USE node: USE_1 -->
<Group DEF='DEFcontainsUSEcopyOfSelf'> |
| 281 | <Group USE='DEFcontainsUSEcopyOfSelf'/> |
| 282 | </Group> |
| 283 |
<!-- WorldInfo
USEmismatchDEFnodeType is a DEF node that has 1 USE node: USE_1 --> <WorldInfo DEF='USEmismatchDEFnodeType'/> |
| 284 | <Group USE='USEmismatchDEFnodeType'/> |
| 285 | <LocalFog DEF='NoLocalFogV3.0'/> |
| 286 | <PointLight/> |
| 287 | <Shape> |
| 288 | <IndexedFaceSet DEF='CountTests' creaseAngle='-1.234' coordIndex='0 1 2 -1'> |
| 289 | <Coordinate point='0 0 0 0 1 0 1 0 0 5'/> |
| 290 | <Color DEF='IllegalValuesColor' color='-1 2 3'/> |
| 291 | <ColorRGBA DEF='IllegalValuesColorRGBA' color='-1 1.2 0.3 0.4'/> |
| 292 | <TextureCoordinate/> |
| 293 | <TextureCoordinateGenerator/> |
| 294 | </IndexedFaceSet> |
| 295 | <Appearance USE='NoMaterialNoTexture'/> |
| 296 | </Shape> |
| 297 | <Shape> |
| 298 | <Text DEF='CharacterBeforeQuotes' string='x " "'> |
| 299 | <FontStyle family='"unquotedFontFamilyName"' justify='"unquotedIllegalJustification"'/> |
| 300 | </Text> |
| 301 | <Appearance USE='NoMaterialNoTexture'/> |
| 302 | </Shape> |
| 303 | <Shape> |
| 304 | <Text DEF='ThreeUnescapedQuoteMarksMissingSpaceEndsApostrophe' string='"" x" ''> |
| 305 | <FontStyle DEF='familyValuesMissingIntermediateQuotes' family='"SANS SERIF"' justify='"BEGIN" "BEGIN"'/> |
| 306 | </Text> |
| 307 | <Appearance USE='NoMaterialNoTexture'/> |
| 308 | </Shape> |
| 309 | <Shape> |
| 310 | <Text DEF='EscapedQuoteMarkWarning' string='"here is a single escaped \" quote mark character"'> |
| 311 | <FontStyle justify='"IllegalValue"'/> |
| 312 | </Text> |
| 313 | <Appearance USE='NoMaterialNoTexture'/> |
| 314 | </Shape> |
| 315 | <Shape> |
| 316 | <Text DEF='NeedQuoteMarks' string='"quote marks are required for single string"'> |
| 317 | <FontStyle/> |
| 318 | </Text> |
| 319 | <Appearance USE='NoMaterialNoTexture'/> |
| 320 | </Shape> |
| 321 | <Shape> |
| 322 | <Text DEF='EmbeddedQuoteMarksOK' string='"plain text with \"quote marks\" embedded"'> |
| 323 | <FontStyle DEF='FontStyleFieldsContainIllegalQuotes' language='"noquo"' style='"PLAIN"'/> |
| 324 | </Text> |
| 325 | <Appearance USE='NoMaterialNoTexture'/> |
| 326 | </Shape> |
| 327 | <Shape> |
| 328 | <IndexedQuadSet DEF='MissingIndex' ccw='true' colorPerVertex='true' normalPerVertex='true' solid='true'> |
| 329 | <Coordinate DEF='DuplicatedCoordinatePointArray' point='0 0 0 0 1 0 1 0 0 5'/> |
| 330 | </IndexedQuadSet> |
| 331 | <Appearance USE='NoMaterialNoTexture'/> |
| 332 | </Shape> |
| 333 |
<!-- ROUTE information for NormalPath node:
[no input ROUTE found] [no output ROUTE found] --> <NormalInterpolator DEF='NormalPath' key='0 0.5 1' keyValue='0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 5'/> |
| 334 | <GeoLocation DEF='LegalGeoSystem' geoCoords='36.607 -121.885 0.0' containerField='children'/> |
| 335 | <ProtoDeclare name='ReferenceTest'> |
| 336 | <ProtoInterface> |
| 337 | <field name='defaultTest' type='SInt32' value='78' accessType='initializeOnly'/> |
| 338 | <field name='incorrectInitializationSFColorRGBA' type='SFColorRGBA' value='1 1 1' accessType='initializeOnly'/> |
| 339 | </ProtoInterface> |
| 340 | <ProtoBody> |
| 341 | <Script url=' "http:///bogus" '> |
| 342 | <field name='missingInitializationValue1' type='SFBool' accessType='initializeOnly'/> |
| 343 | <field name='missingInitializationValue2' type='SFInt32' accessType='initializeOnly'/> |
| 344 | <field name='incorrectInitializationSFVec3f' type='SFVec3f' value='0.0' accessType='initializeOnly'/> |
| 345 | <field name='incorrectInitializationMFColor' type='MFColor' value='1 2 3 4 5 6 7' accessType='initializeOnly'/> |
| 346 | <field name='missingInitializationValueHasIS' type='SFBool' value='true' accessType='initializeOnly'/> |
| 347 | <fieldValue name='shouldBeField'/> |
| 348 | <IS> |
| 349 | <connect nodeField='missingInitializationValue2' protoField='defaultTest'/> |
| 350 | <connect nodeField='missingInitializationValueHasIS' protoField='test'/> |
| 351 | </IS> |
| 352 | </Script> |
| 353 | <!-- Subsequent nodes do not render, but still must be a valid X3D subgraph --> |
| 354 | </ProtoBody> |
| 355 | </ProtoDeclare> |
| 356 | <ProtoInstance name='ReferenceTest'> |
| 357 | <fieldValue name='defaultTest' value='78'/> |
| 358 | <fieldValue name='incorrectInitializationSFColorRGBA' value='1 1 1 1 1'/> |
| 359 | <field name='shouldBeFieldValue'/> |
| 360 | </ProtoInstance> |
| 361 | <Transform DEF='ZeroMagnitudeRotationAxes' scaleOrientation='0 0 0 0'/> |
| 362 | <Box DEF='GeometryNodeNeedsShapeParent'/> |
| 363 | <Collision DEF='IllegalGeometryProxyNode'> |
| 364 | <Box DEF='GeometryNodeCollisionParentNeedsParentShapeWithProxyContainerField' containerField='proxy'/> |
| 365 | </Collision> |
| 366 | <NavigationInfo DEF='UnquotedTypeAndTransitionTypeErrors' transitionType='"ALTERNATE"' type='OTHER'/> |
| 367 | <NavigationInfo DEF='NavigationInfoWithTypeALL' type='"ALL"'/> |
| 368 |
<!-- Group
IllegalParentChild-DEF-USE is a DEF node that has 1 USE node: USE_1 -->
<Group DEF='IllegalParentChild-DEF-USE'> |
| 369 | <Group USE='IllegalParentChild-DEF-USE'/> |
| 370 | </Group> |
| 371 | <CADLayer name='contains whitespace and incorrect boolean value' visible='true false wrong'/> |
| 372 | <Shape> |
| 373 | <ImageTexture DEF='IllegalParent1'/> |
| 374 | <MovieTexture DEF='IllegalParent2'/> |
| 375 | <PixelTexture DEF='IllegalParent3'/> |
| 376 | </Shape> |
| 377 | <Shape> |
| 378 |
<!-- TextureTransform
TextureTransformWithNoSiblingTextureNode is a DEF node that has 1 USE node: USE_1 --> <TextureTransform DEF='TextureTransformWithNoSiblingTextureNode'/> |
| 379 | </Shape> |
| 380 | <Shape> |
| 381 | <Appearance> |
| 382 | <TextureTransform USE='TextureTransformWithNoSiblingTextureNode'/> |
| 383 | <TextureCoordinateGenerator DEF='TextureCoordinateGeneratorIllegalMode' mode='Bogus'/> |
| 384 | <TextureCoordinateGenerator DEF='TextureCoordinateGeneratorIllegalParameterCount' mode='NOISE' parameter='1 2 3 4'/> |
| 385 | </Appearance> |
| 386 | </Shape> |
| 387 | <Shape> |
| 388 | <Appearance> |
| 389 | <MultiTexture DEF='NoTextureChildren' function='"BogusFunction1Value" "BogusFunction2Value" "' mode='"BogusMode1Value" BogusMode2Value"' source='"BogusSourceValue"'/> |
| 390 | </Appearance> |
| 391 | </Shape> |
| 392 | <Background DEF='NoBackgroundChildrenAllowed'> |
| 393 | <ImageTexture DEF='IllegalBackgroundChild'/> |
| 394 | </Background> |
| 395 | <TextureBackground> |
| 396 | <ImageTexture DEF='LegalChild1'/> |
| 397 | <MovieTexture DEF='LegalChild2'/> |
| 398 | <PixelTexture DEF='LegalChild3'/> |
| 399 | <Group DEF='IllegalTextureBackgroundChild'/> |
| 400 | <ImageTexture DEF='IllegalTextureBackgroundChildContainerField' containerField='frontUrl'/> |
| 401 | </TextureBackground> |
| 402 | <Group DEF='Embedded Blanks DEF'/> |
| 403 | <Group USE='Embedded Blanks USE'/> |
| 404 | <Group DEF='"QuotedDEF"'/> |
| 405 | <Group USE='"QuotedUSE"'/> |
| 406 | <MetadataSet> |
| 407 | <MetadataBoolean/> |
| 408 | <MetadataFloat containerField='value'/> |
| 409 | <MetadataDouble containerField='illegalName'/> |
| 410 | </MetadataSet> |
| 411 | <MetadataString DEF='IllegalMetadataContainerField' containerField='value'/> |
| 412 |
<!-- ROUTE information for IllegalDecimalPointsTest node:
[no input ROUTE found] [no output ROUTE found] --> <ScalarInterpolator DEF='IllegalDecimalPointsTest' key='0.00.5 1.0' keyValue='1 2 3'/> |
| 413 |
<!-- ROUTE information for IllegalMinusSignsTest node:
[no input ROUTE found] [no output ROUTE found] --> <ScalarInterpolator DEF='IllegalMinusSignsTest' key='0.0 0.5 1.0' keyValue='-1-2 3'/> |
| 414 | <!-- test of NeedsChildNode --> |
| 415 | <Group DEF='EmptyGroup'/> |
| 416 | <Switch whichChoice='-1'> |
| 417 | <!-- test of NeedsChildNode --> |
| 418 | <Group DEF='EmptyGroupInsideSwitch'/> |
| 419 | </Switch> |
| 420 | <Group DEF='EmptyGroupContainsComment'> |
| 421 | <!-- test of NeedsChildNode --> |
| 422 | </Group> |
| 423 | <Switch DEF='EmptySwitchContainsROUTE' whichChoice='-1'> |
| 424 | <!-- test of NeedsChildNode --> |
| 425 | < ROUTE fromNode='NoFields' fromField='blah' toNode='NoFields' toField='blah'/> |
| 426 | </Switch> |
| 427 | <CADLayer visible='false'> |
| 428 | <CADAssembly> |
| 429 | <CADPart> |
| 430 | <CADFace DEF='CADFaceOneShapeChild'> |
| 431 | <Transform containerField='shape'> |
| 432 | <Shape/> |
| 433 | </Transform> |
| 434 | </CADFace> |
| 435 | <CADFace DEF='CADFaceMultipleShapeChildren'> |
| 436 | <Transform DEF='containerFieldNot_shape'> |
| 437 | <Shape/> |
| 438 | <Shape/> |
| 439 | </Transform> |
| 440 | </CADFace> |
| 441 | </CADPart> |
| 442 | </CADAssembly> |
| 443 | </CADLayer> |
| 444 | <GeoOrigin DEF='DeprecatedNodeUnquotedGeoSystem' geoSystem='"GD WE"'/> |
| 445 | <Viewpoint DEF='ViewHumanoidMissingCenterOfRotation'/> |
| 446 | <Shape DEF='EmptyShapeWithCommentSilencesWarning'> |
| 447 | <!-- silence warning --> |
| 448 | </Shape> |
| 449 | <Shape> |
| 450 | <Appearance> |
| 451 | <Material DEF='IllegalColorValuesMaterial' diffuseColor='-1 1.2 0.3 0.4' emissiveColor='-1 1.2 0.3 0.4' specularColor='-1 1.2 0.3 0.4'/> |
| 452 | </Appearance> |
| 453 | </Shape> |
| 454 | <Background DEF='BackgroundColorProblems' groundColor='-1 1.2 0.3 0.4' skyColor='-1 1.2 0.3 0.4'/> |
| 455 | <Fog DEF='FogColorProblems' color='-1 1.2 0.3 0.4'/> |
| 456 | <DirectionalLight DEF='DirectionalLightColorProblems' color='-1 1.2 0.3 0.4'/> |
| 457 | <PointLight DEF='PointLightColorProblems' color='-1 1.2 0.3 0.4'/> |
| 458 | <SpotLight DEF='SpotLightColorProblems' color='-1 1.2 0.3 0.4'/> |
| 459 | <ClipPlane DEF='IllegalPlaneEquationValues' plane='1 2 3 4 5'/> |
| 460 | <HAnimHumanoid DEF='notUniqueName1' name='JimDandy' version='1.1'/> |
| 461 | <HAnimHumanoid DEF='notUniqueName2' name='JimDandy' version='2.0'> |
| 462 | <!-- keep the following Group node as first child so that it is reported by diagnostic test --> |
| 463 | <Group DEF='HumanoidCannotContainChildrenNodes' name='IllegalGroupChildrenNode'/> |
| 464 | <HAnimJoint containerField='skeleton' name='HumanoidRoot'> |
| 465 |
<!-- HAnimJoint
MissingComponentH-AnimLevel1 is a DEF node that has 1 USE node: USE_1 -->
<HAnimJoint DEF='MissingComponentH-AnimLevel1'> |
| 466 | <HAnimHumanoid DEF='incorrectlyNestedHumanoidMissingNameAttribute' version='2.0'/> |
| 467 | </HAnimJoint> |
| 468 |
<!-- HAnimJoint
MissingNameAttributeCheckContainerField is a DEF node that has 2 USE nodes: USE_1, USE_2 --> <HAnimJoint DEF='MissingNameAttributeCheckContainerField'/> |
| 469 | <HAnimJoint USE='MissingNameAttributeCheckContainerField'/> |
| 470 | <HanimJoint DEF='ImproperCapitalizationOfNodeName'/> |
| 471 |
<!-- HAnimJoint
duplicateName1 is a DEF node that has 2 USE nodes: USE_1, USE_2 --> <HAnimJoint DEF='duplicateName1' name='sacroiliac'/> |
| 472 |
<!-- HAnimJoint
duplicateName2 is a DEF node that has 1 USE node: USE_1 --> <HAnimJoint DEF='duplicateName2' name='sacroiliac'/> |
| 473 | <HAnimJoint USE='duplicateName1' containerField='joints'/> |
| 474 |
<!-- ROUTE information for JointInterpolator node:
[from value_changed to MissingNameAttribute.translation
]
[no input ROUTE found] -->
<PositionInterpolator DEF='JointInterpolator' key='0 0' keyValue='0 0 0 1 0 0'/> |
| 475 | < ROUTE fromNode='JointInterpolator' fromField='value_changed' toNode='MissingNameAttribute' toField='translation'/> |
| 476 |
<!-- HAnimJoint
ImproperDEFname is a DEF node that has 1 USE node: USE_1 --> <HAnimJoint DEF='ImproperDEFname' name='l_acromioclavicular'/> |
| 477 |
<!-- HAnimJoint
hanim_HumanoidRoot is a DEF node that has 1 USE node: USE_1 -->
<HAnimJoint DEF='hanim_HumanoidRoot' name='HumanoidRoot'> |
| 478 |
<!-- HAnimSegment
JointNameSegmentNameHierarchyTest is a DEF node that has 1 USE node: USE_1 -->
<HAnimSegment DEF='JointNameSegmentNameHierarchyTest' name='notSacrum'> |
| 479 | <!-- the following construct is OK and should not throw errors --> |
| 480 |
<!-- HAnimSite
hanim_Top_view is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
<HAnimSite DEF='hanim_Top_view' containerField='viewpoints' name='Top_view' rotation='1 0 0 -1.57' translation='0 3.5 0'> |
| 481 | <Viewpoint DEF='hanim_Top_viewpoint' centerOfRotation='0 0.9 0' description='Top' position='0 0 0'/> |
| 482 | </HAnimSite> |
| 483 | </HAnimSegment> |
| 484 |
<!-- HAnimJoint
negativeCenterHeight is a DEF node that has 1 USE node: USE_1 -->
<HAnimJoint DEF='negativeCenterHeight' center='0 -1 0' name='negativeCenterHeight'> |
| 485 |
<!-- HAnimSegment
IllegalChildrenContainerFields is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
<HAnimSegment DEF='IllegalChildrenContainerFields' name='IllegalChildrenContainerFields'> |
| 486 |
<!-- HAnimSite
negativeTranslationHeight is a DEF node that has 1 USE node: USE_1 -->
<HAnimSite DEF='negativeTranslationHeight' name='negativeTranslationHeight' translation='0 -1 0'> |
| 487 | <HAnimDisplacer DEF='IllegalHAnimDisplacerInHAnimSiteNode'/> |
| 488 | </HAnimSite> |
| 489 | <Coordinate/> |
| 490 | <CoordinateDouble/> |
| 491 | </HAnimSegment> |
| 492 | </HAnimJoint> |
| 493 |
<!-- HAnimJoint
MismatchedJointCenter_l_knee is a DEF node that has 1 USE node: USE_1 --> <HAnimJoint DEF='MismatchedJointCenter_l_knee' center='1 2 3' name='l_knee'/> |
| 494 |
<!-- HAnimJoint
MismatchedJointCenter_r_knee is a DEF node that has 1 USE node: USE_1 --> <HAnimJoint DEF='MismatchedJointCenter_r_knee' center='4 5 6' name='r_knee'/> |
| 495 | <HAnimJoint USE='IllegalEmbeddedHAnimUse'/> |
| 496 |
<!-- HAnimSite
IllegalNameIllegalParent is a DEF node that has 1 USE node: USE_1 --> <HAnimSite DEF='IllegalNameIllegalParent' name='IllegalNameIllegalParent'/> |
| 497 | <!-- TODO test IllegalEmbeddedHAnimUse in another HAnimHumanoid --> |
| 498 | </HAnimJoint> |
| 499 | </HAnimJoint> |
| 500 | <HAnimSite USE='hanim_Top_view' containerField='viewpoints'/> |
| 501 | <HAnimSite USE='hanim_Top_view' containerField='viewpoints'/> |
| 502 | <HAnimSegment USE='JointNameSegmentNameHierarchyTest' containerField='segments'/> |
| 503 | <HAnimSegment USE='IllegalChildrenContainerFields' containerField='segments'/> |
| 504 | <!-- test for duplicated USE node --> |
| 505 | <HAnimSegment USE='IllegalChildrenContainerFields' containerField='segments'/> |
| 506 | <Coordinate DEF='HAnimCoordinateCorrectContainerField' containerField='skinCoord' point='0 0 0'/> |
| 507 | <Coordinate DEF='HAnimCoordinateIncorrectContainerField'/> |
| 508 | <CoordinateDouble DEF='HAnimCoordinateDoubleCorrectContainerField' containerField='skinCoord' point='0 0 0'/> |
| 509 | <CoordinateDouble DEF='HAnimCoordinateDoubleIncorrectContainerField'/> |
| 510 | <Normal DEF='HAnimNormalIncorrectContainerField'/> |
| 511 | <HAnimJoint USE='MissingComponentH-AnimLevel1' containerField='joints'/> |
| 512 | <HAnimJoint USE='MissingNameAttributeCheckContainerField' containerField='joints'/> |
| 513 | <HAnimJoint USE='duplicateName1' containerField='joints'/> |
| 514 | <HAnimJoint USE='duplicateName2' containerField='joints'/> |
| 515 | <HAnimJoint USE='ImproperDEFname' containerField='joints'/> |
| 516 | <HAnimJoint USE='hanim_HumanoidRoot' containerField='joints'/> |
| 517 | <HAnimJoint USE='negativeCenterHeight' containerField='joints'/> |
| 518 | <HAnimJoint USE='MismatchedJointCenter_l_knee' containerField='joints'/> |
| 519 | <HAnimJoint USE='MismatchedJointCenter_r_knee' containerField='joints'/> |
| 520 | <HAnimSite USE='hanim_Top_view' containerField='sites'/> |
| 521 | <HAnimSite USE='negativeTranslationHeight' containerField='sites'/> |
| 522 | <HAnimSite USE='IllegalNameIllegalParent' containerField='sites'/> |
| 523 | </HAnimHumanoid> |
| 524 | <Sound DEF='NoChildren'/> |
| 525 | <AudioClip DEF='NoParentSoundNode' description='bad clip reference' url=' "blah" "https://www.web3d.org/x3d/content/examples/Basic/development/blah" '/> |
| 526 | <Sound class='must separate classes with;space characters' location='0 2 0'> |
| 527 | <AudioClip description='bad clip reference' url=' "blah" "https://www.web3d.org/x3d/content/examples/Basic/development/blah" '/> |
| 528 | </Sound> |
| 529 | <Sound DEF='SoundDefaults' location='0 2 0'> |
| 530 |
<!-- AudioClip
ReusableAudioClip is a DEF node that has 5 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5 --> <AudioClip DEF='ReusableAudioClip' description='reusable' url=' "../Vrml97Specification/click.wav" "https://www.web3d.org/x3d/content/examples/Basic/Vrml97Specification/click.wav" '/> |
| 531 | </Sound> |
| 532 | <Sound DEF='SoundMinNegative' location='0 2 0' minBack='-1' minFront='-1'> |
| 533 | <AudioClip USE='ReusableAudioClip'/> |
| 534 | </Sound> |
| 535 | <Sound DEF='SoundMaxNegative' location='0 2 0' maxBack='-10' maxFront='-10'> |
| 536 | <AudioClip USE='ReusableAudioClip'/> |
| 537 | </Sound> |
| 538 | <Sound DEF='SoundMinGreaterThanMax' location='0 2 0' maxBack='11' maxFront='11' minBack='12' minFront='12'> |
| 539 | <AudioClip USE='ReusableAudioClip'/> |
| 540 | </Sound> |
| 541 | <Sound DEF='SoundMinGreaterThanDefaultMax' location='0 2 0' minBack='13' minFront='13'> |
| 542 | <AudioClip USE='ReusableAudioClip'/> |
| 543 | </Sound> |
| 544 | <Sound DEF='SoundMaxLessThanDefaultMin' location='0 2 0' maxBack='0.5' maxFront='0.5'> |
| 545 | <AudioClip USE='ReusableAudioClip'/> |
| 546 | </Sound> |
| 547 | < ROUTE fromNode='DuplicateROUTE' fromField='test1' toNode='test2' toField='test3'/> |
| 548 | < ROUTE fromNode='DuplicateROUTE' fromField='test1' toNode='test2' toField='test3'/> |
| 549 | < ROUTE fromNode='DuplicateROUTE' fromField='test1' toNode='test2' toField='test3'/> |
| 550 | < ROUTE fromNode='NodeFollowsRoute1' fromField='children' toNode='NodeFollowsRoute2' toField='children'/> |
| 551 |
<!-- ROUTE information for NodeFollowsRoute1 node:
[from children to NodeFollowsRoute2.children
]
-->
<Group DEF='NodeFollowsRoute1'> |
| 552 |
<!-- ROUTE information for NodeFollowsRoute2 node:
[from NodeFollowsRoute1.children to children
]
-->
<Group DEF='NodeFollowsRoute2'> |
| 553 | <!-- silence warning --> |
| 554 | </Group> |
| 555 | </Group> |
| 556 | <Shape DEF='ElevationGridInsufficientHeights'> |
| 557 | <ElevationGrid solid='false' xSpacing='0' zDimension='3' zSpacing='0' height='1 2 3 4 5'/> |
| 558 | </Shape> |
| 559 | <Shape DEF='ElevationGridTooManyHeights'> |
| 560 | <ElevationGrid solid='false' xSpacing='-1' zDimension='3' zSpacing='-1' height='1 2 3 4 5 6 7'/> |
| 561 | </Shape> |
| 562 | <Shape DEF='ElevationGridBadDimensions'> |
| 563 | <ElevationGrid solid='false' xDimension='-2' zDimension='-3' height='1 2 3 4 5 6'/> |
| 564 | </Shape> |
| 565 | <StaticGroup DEF='StaticGroupChildTests' containerField='children'> |
| 566 | <Group> |
| 567 |
<!-- ROUTE information for StaticGroupDescendantsCannotProduceEvents node:
[no output ROUTE found] --> <TimeSensor DEF='StaticGroupDescendantsCannotProduceEvents'/> |
| 568 |
<!-- ROUTE information for StaticGroupDescendantsCannotConsumeEvents node:
[no input ROUTE found] [no output ROUTE found] --> <PositionInterpolator DEF='StaticGroupDescendantsCannotConsumeEvents'/> |
| 569 | <PositionInterpolator USE='StaticGroupDescendantsCannotBeUsed'/> |
| 570 | </Group> |
| 571 | <!-- note mistake capitalization, correct form is ROUTE --> |
| 572 | <Route fromField='fraction_changed' fromNode='StaticGroupDescendantsCannotProduceEvents' toField='set_fraction' toNode='StaticGroupDescendantsCannotConsumeEvents'/> |
| 573 | </StaticGroup> |
| 574 | <Group DEF='CaseSensitive'> |
| 575 | <!-- test case sensitivity of DEF/USE --> |
| 576 | </Group> |
| 577 | <Group USE='CASESENSITIVE'/> |
| 578 | <Group> |
| 579 |
<!-- ROUTE information for PeerTouchSensor node:
[no output ROUTE found] --> <TouchSensor DEF='PeerTouchSensor'/> |
| 580 |
<!-- ROUTE information for PeerCylinderSensor node:
[no output ROUTE found] --> <CylinderSensor DEF='PeerCylinderSensor'/> |
| 581 | <Billboard DEF='PeerBillboard'/> |
| 582 | </Group> |
| 583 |
|
| 584 | <Shape> |
| 585 | <IndexedFaceSet DEF='IfsEmptyChildren'> |
| 586 | <Coordinate DEF='EmptyCoordinate'/> |
| 587 | <Color DEF='EmptyColor'/> |
| 588 | <Normal DEF='EmptyNormal'/> |
| 589 | <TextureCoordinate DEF='EmptyTextureCoordinate'/> |
| 590 | </IndexedFaceSet> |
| 591 | </Shape> |
| 592 | <Shape> |
| 593 | <IndexedFaceSet DEF='IfsSingletonChildren'> |
| 594 | <Coordinate DEF='SingleCoordinate' point='1 2 3'/> |
| 595 | <Color DEF='SingleColor' color='0.1 0.2 0.3'/> |
| 596 | <Normal DEF='SingleNormal' vector='0 1 0'/> |
| 597 | <TextureCoordinate DEF='SingleTextureCoordinate' point='0.4 0.8'/> |
| 598 | </IndexedFaceSet> |
| 599 | </Shape> |
| 600 | <GeoLOD containerField='children'> |
| 601 | <Shape DEF='rootNodeContainerFieldIsCorrect'/> |
| 602 | </GeoLOD> |
| 603 | <TextureProjector/> |
| 604 | <TextureProjectorParallel DEF='DistanceMismatchIllegalFieldOfView' farDistance='.1' fieldOfView='1 2 3 4 5' nearDistance='20'/> |
| 605 | </Scene> |
| 606 | </X3D> |
HAnimHumanoid model visualization reports: JimDandy HAnimHumanoid Report, JimDandy HAnimHumanoid Report
Event Graph ROUTE Table shows event connections.
-->
<!--
DEF nodes index:
"QuotedDEF",
AnchorBookmark,
AppearanceWithProtoInstanceChild,
BackgroundColorProblems,
BackgroundWithParentLOD,
BadBoundingBoxValues,
BadChild,
BadContainerField,
BadNameBadFieldValueNameMissingInitialization,
BothUrlAndCDATA,
CADFaceMultipleShapeChildren,
CADFaceOneShapeChild,
CaseSensitive,
CharacterBeforeQuotes,
ChildrenCorrectContainerField,
ChildrenIncorrectContainerField,
Clock,
ColorInterpolatorColorProblems,
containerFieldNot_shape,
ContainsISchildButNoParentProtoDeclare,
CountTests,
DEF,
DEF_USEinsideProtoDeclareScope,
DEFAppendedSpace,
DefaultImageData,
DEFcontainsUSEcopyOfSelf,
DEFEmbedded Space,
DEFoutsideProtoDeclareScope,
DEFPrependedSpace,
DeprecatedNodeUnquotedGeoSystem,
DirectionalLightColorProblems,
DistanceMismatchIllegalFieldOfView,
DoubleDeclaration2,
DoubleDEF,
DoubleDEF,
DuplicatedCoordinatePointArray,
DuplicatedDeclaration,
DuplicateImageData,
duplicateName1,
duplicateName2,
ElevationGridBadDimensions,
ElevationGridInsufficientHeights,
ElevationGridTooManyHeights,
Embedded Blanks DEF,
EmbeddedQuoteMarksOK,
EmptyColor,
EmptyCoordinate,
EmptyGroup,
EmptyGroupContainsComment,
EmptyGroupInsideSwitch,
EmptyNormal,
EmptyShapeWithCommentSilencesWarning,
EmptySwitchContainsROUTE,
EmptyTextureCoordinate,
EscapedQuoteMarkWarning,
ExtrusionCrossSectionMiscountSpineMismatchCrossSectionMiscount,
familyValuesMissingIntermediateQuotes,
FirstTitle,
FogColorProblems,
FogWithParentLOD,
FontStyleFieldsContainIllegalQuotes,
GeometryNodeCollisionParentNeedsParentShapeWithProxyContainerField,
GeometryNodeNeedsShapeParent,
hanim_HumanoidRoot,
hanim_Top_view,
HAnimCoordinateCorrectContainerField,
HAnimCoordinateDoubleCorrectContainerField,
HAnimCoordinateDoubleIncorrectContainerField,
HAnimCoordinateIncorrectContainerField,
HAnimNormalIncorrectContainerField,
HasCDATAwithoutEcmascriptHeader,
HasLegalCDATA,
HasUrlNoCDATA,
HelloWorld,
HumanoidCannotContainChildrenNodes,
IfsEmptyChildren,
IfsSingletonChildren,
IllegalBackgroundChild,
IllegalChild,
IllegalChildForLoadSensor,
IllegalChildrenContainerFields,
IllegalColorValuesMaterial,
IllegalCombinationDEFUSE,
IllegalDecimalPointsTest,
IllegalFields,
IllegalGeometryProxyNode,
IllegalHAnimDisplacerInHAnimSiteNode,
IllegalImageData,
IllegalInfoQuotes,
IllegalMetadataContainerField,
IllegalMinusSignsTest,
IllegalNameIllegalParent,
IllegalParent1,
IllegalParent2,
IllegalParent3,
IllegalParentChild-DEF-USE,
IllegalPlaneEquationValues,
IllegalTextureBackgroundChild,
IllegalTextureBackgroundChildContainerField,
IllegalValuesColor,
IllegalValuesColorRGBA,
ImageDataTest,
ImproperCapitalizationOfNodeName,
improperDEF,
ImproperDEFname,
IncorrectChildNodes,
incorrectlyNestedHumanoidMissingNameAttribute,
InterpolatorWithSingleKey,
JointInterpolator,
JointNameSegmentNameHierarchyTest,
LegalChild,
LegalChild1,
LegalChild2,
LegalChild3,
LegalGeoSystem,
MismatchedJointCenter_l_knee,
MismatchedJointCenter_r_knee,
MismatchedKeyArrays,
MismatchedKeyArraysSFVec3f,
MissingComponentH-AnimLevel1,
MissingIndex,
MissingNameAttributeCheckContainerField,
MissingParentShape,
NavigationInfoWithParentLOD,
NavigationInfoWithTypeALL,
NeedQuoteMarks,
negativeCenterHeight,
negativeTranslationHeight,
NoBackgroundChildrenAllowed,
NoChildAppearance,
NoChildGeometry,
noChildNodeforUSE,
NoChildren,
NoChildrenNoUrl,
NodeFollowsRoute1,
NodeFollowsRoute2,
NodeUrlVRML.wrl.PrecedingX3D.x3d,
NoImageData,
NoLocalFogV3.0,
NoMaterialNoTexture,
NoOutputROUTE,
NoParentSoundNode,
NormalPath,
NoROUTE,
NoROUTEs,
NoROUTEsNoKeyValueArray,
NoSpacesInDescription,
NoTextureChildren,
notUniqueName1,
notUniqueName2,
NoUrlIllegalChild,
NoUrlNoCDATA,
OI,
OnlyFieldDeclarationsAllowedInProtoInterface,
PeerBillboard,
PeerCylinderSensor,
PeerTouchSensor,
PointLightColorProblems,
PrototypeRootNode,
RecursiveInlineInvocation,
ReusableAudioClip,
rootNodeContainerFieldIsCorrect,
RouteButNoFields,
SecondTitle,
separateBackColorWrong,
SingleColor,
SingleCoordinate,
SingleNormal,
SingleProtoInstanceChild,
SingleTextureCoordinate,
SoundDefaults,
SoundMaxLessThanDefaultMin,
SoundMaxNegative,
SoundMinGreaterThanDefaultMax,
SoundMinGreaterThanMax,
SoundMinNegative,
SpotLightColorProblems,
StaticGroupChildTests,
StaticGroupDescendantsCannotConsumeEvents,
StaticGroupDescendantsCannotProduceEvents,
textureContainerField,
TextureCoordinateGeneratorIllegalMode,
TextureCoordinateGeneratorIllegalParameterCount,
TextureTransformWithNoSiblingTextureNode,
ThreeUnescapedQuoteMarksMissingSpaceEndsApostrophe,
UnquotedTypeAndTransitionTypeErrors,
UrlDotWrlPrecedesDotX3d,
USEandDEFtogether,
USEmismatchDEFnodeType,
USEoutsideProtoDeclareScope,
USEprecedesDEF,
USEwithChildElement,
watchListContainerField,
ZeroMagnitudeRotationAxes
Index for Viewpoint and ViewpointGroup nodes: DEFdescriptionMatch, hanim_Top_viewpoint, IllegalViewpointGroupChild, ISconnectDescription, OKviewpoint, ViewHumanoidMissingCenterOfRotation, ViewpointWithParentLOD
Index for ExternProtoDeclare definitions: DoubleDeclarationUrlMissingPoundProtoName, DoubleDeclarationUrlMissingPoundProtoName, DoubleMixedDeclaration, ExternProtoDeclareAfterInstance, ExternProtoDeclareBeforeInstance, ExternProtoDeclareUrlVRML.wrl.MissingX3D.x3d, ExternProtoDeclareUrlVRML.wrl.PrecedingX3D.x3d, X3D
Index for ProtoDeclare definitions: DoubleMixedDeclaration, DoubleProtoDeclaration, DoubleProtoDeclaration, EmptyProtoInterfaceEmptyProtoBody, IllegalProtoInterface, MissingProtoBody, ProtoDeclareAfterInstance, ProtoDeclareBeforeInstance, ReferenceTest, X3D
-->============================================================================================================================= HAnimHumanoid notUniqueName1 skeleton holds X3D3 HAnim1 joints/segments. [key] jointname : segmentname ^ sitename [nodes] HAnimJoint (0), : HAnimSegment (0), % HAnimDisplacer (0), $ HAnimMotion (0), ^ HAnimSite (0), @ skin nodes (0) ============================================================================================================================= HAnimHumanoid DEF='notUniqueName1 name='JimDandy' loa='' skeleton =============================================================================================================================
The following inset decorates the original HAnimHumanoid skeleton with additional visualization shapes. Authors can copy/paste this version to assist in visually diagnosing skeleton correctness.
Key to author-assist additions inserted in the HAnimHumanoid skeleton:
| <HAnimHumanoid DEF='notUniqueName1' name='JimDandy' version ='1.1' > | |
| 31 | <!-- - illegal comment starts with extra hyphen - character --> |
| 32 | <!-- - illegal comment has intermediate paired-hyphen - - characters --> |
| 66 | <!-- test no other fields if USE present --> |
| 83 | <!-- no DEF name --> |
| 89 | <!-- no DEF name --> |
| 93 | <!-- bogus ROUTEs to allow trapping deeper error --> |
| 198 | <!-- test isolated (invalid) connect element <connect nodeField="isolatedConnectNodeField" protoField="isolatedConnectProtoField"/> --> |
| 214 | <!-- check for reserved word in name definitions --> |
| 414 | <!-- test of NeedsChildNode --> |
|
</HAnimHumanoid> |
|
============================================================================================================================= HAnimHumanoid notUniqueName2 skeleton holds X3D3 HAnim2 joints/segments/sites. [key] jointname : segmentname ^ sitename [nodes] HAnimJoint (8), : HAnimSegment (2), % HAnimDisplacer (0), $ HAnimMotion (0), ^ HAnimSite (3), @ skin nodes (0) ============================================================================================================================= HAnimHumanoid DEF='notUniqueName2 name='JimDandy' loa='' skeleton HumanoidRoot | (HAnimJoint/@name not found) ============================================================================================================================= HAnimHumanoid incorrectlyNestedHumanoidMissingNameAttribute skeleton holds X3D3 HAnim2 joints/segments. [key] jointname : segmentname ^ sitename [nodes] HAnimJoint (0), : HAnimSegment (0), % HAnimDisplacer (0), $ HAnimMotion (0), ^ HAnimSite (0), @ skin nodes (0) ============================================================================================================================= | | HAnimHumanoid DEF='incorrectlyNestedHumanoidMissingNameAttribute name='' loa='' skeleton ============================================================================================================================= | (HAnimJoint/@name not found) | sacroiliac | sacroiliac | l_acromioclavicular | HumanoidRoot : notSacrum ^ Top_view | negativeCenterHeight : IllegalChildrenContainerFields ^ negativeTranslationHeight % | l_knee | r_knee % HAnimSite negativeTranslationHeight holds 1 HAnimDisplacer node: HAnimDisplacer DEF='IllegalHAnimDisplacerInHAnimSiteNode' ^ HAnimJoint HumanoidRoot holds 1 HAnimSite node: IllegalNameIllegalParent ^ HAnimSegment notSacrum holds 1 HAnimSite node: Top_view ^ HAnimSegment IllegalChildrenContainerFields holds 1 HAnimSite node: negativeTranslationHeight =============================================================================================================================
The following inset decorates the original HAnimHumanoid skeleton with additional visualization shapes. Authors can copy/paste this version to assist in visually diagnosing skeleton correctness.
Key to author-assist additions inserted in the HAnimHumanoid skeleton:
| <HAnimHumanoid DEF='notUniqueName2' name='JimDandy' version ='2.0' > | |||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||
| 31 | <!-- - illegal comment starts with extra hyphen - character --> | ||||||||||||||||||||||||||||||||||||
| 32 | <!-- - illegal comment has intermediate paired-hyphen - - characters --> | ||||||||||||||||||||||||||||||||||||
| 66 | <!-- test no other fields if USE present --> | ||||||||||||||||||||||||||||||||||||
| 83 | <!-- no DEF name --> | ||||||||||||||||||||||||||||||||||||
| 89 | <!-- no DEF name --> | ||||||||||||||||||||||||||||||||||||
| 93 | <!-- bogus ROUTEs to allow trapping deeper error --> | ||||||||||||||||||||||||||||||||||||
| 198 | <!-- test isolated (invalid) connect element <connect nodeField="isolatedConnectNodeField" protoField="isolatedConnectProtoField"/> --> | ||||||||||||||||||||||||||||||||||||
| 214 | <!-- check for reserved word in name definitions --> | ||||||||||||||||||||||||||||||||||||
| 414 | <!-- test of NeedsChildNode --> | ||||||||||||||||||||||||||||||||||||
|
500 |
<HAnimSite USE='hanim_Top_view' containerField='viewpoints'/>
|
501 |
<HAnimSite USE='hanim_Top_view' containerField='viewpoints'/>
|
502 |
<HAnimSegment USE='JointNameSegmentNameHierarchyTest' containerField='segments'/>
|
503 |
<HAnimSegment USE='IllegalChildrenContainerFields' containerField='segments'/>
|
504 |
<!-- test for duplicated USE node -->
|
505 |
<HAnimSegment USE='IllegalChildrenContainerFields' containerField='segments'/>
|
511 |
<HAnimJoint USE='MissingComponentH-AnimLevel1' containerField='joints'/>
|
512 |
<HAnimJoint USE='MissingNameAttributeCheckContainerField' containerField='joints'/>
|
513 |
<HAnimJoint USE='duplicateName1' containerField='joints'/>
|
514 |
<HAnimJoint USE='duplicateName2' containerField='joints'/>
|
515 |
<HAnimJoint USE='ImproperDEFname' containerField='joints'/>
|
516 |
<HAnimJoint USE='hanim_HumanoidRoot' containerField='joints'/>
|
517 |
<HAnimJoint USE='negativeCenterHeight' containerField='joints'/>
|
518 |
<HAnimJoint USE='MismatchedJointCenter_l_knee' containerField='joints'/>
|
519 |
<HAnimJoint USE='MismatchedJointCenter_r_knee' containerField='joints'/>
|
520 |
<HAnimSite USE='hanim_Top_view' containerField='sites'/>
|
521 |
<HAnimSite USE='negativeTranslationHeight' containerField='sites'/>
|
522 |
<HAnimSite USE='IllegalNameIllegalParent' containerField='sites'/>
|
|
|
|
</HAnimHumanoid> |
|||||||||||||||||||||||||||||||||||||
Event Graph ROUTE Table entries with 10 ROUTE connections total, showing X3D event-model relationships for this scene.
Each row shows an event cascade that may occur during a single timestamp interval between frame renderings, as part of the X3D execution model.
|
PeerTouchSensor
TouchSensor |
No direct ROUTE connection found for events to/from this node. |
|
Clock
TimeSensor |
No direct ROUTE connection found for events to/from this node. |
|
DoubleDEF
TimeSensor |
No direct ROUTE connection found for events to/from this node. |
|
NoOutputROUTE
TimeSensor |
No direct ROUTE connection found for events to/from this node. |
|
StaticGroupDescendantsCannotProduceEvents
TimeSensor |
No direct ROUTE connection found for events to/from this node. |
|
BothUrlAndCDATA
Script |
No direct ROUTE connection found for events to/from this node. This Script has no direct access to other nodes. |
|
HasLegalCDATA
Script |
No direct ROUTE connection found for events to/from this node. This Script has no direct access to other nodes. |
|
HasUrlNoCDATA
Script |
No direct ROUTE connection found for events to/from this node. This Script has no direct access to other nodes. |
|
RouteButNoFields
Script |
No direct ROUTE connection found for events to/from this node. This Script has no direct access to other nodes. |
| line 73
ProtoInstance NodeSubstituteNoDeclaration |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
| line 81
ProtoInstance NodeSubstituteNoDeclaration |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
| line 132
ProtoInstance NoDeclaration |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
| line 174
ProtoInstance ExternProtoDeclareBeforeInstance |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
| line 175
ProtoInstance ExternProtoDeclareAfterInstance |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
| line 182
ProtoInstance ProtoDeclareBeforeInstance |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
| line 183
ProtoInstance ProtoDeclareAfterInstance |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
| line 226
ProtoInstance X3D |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declaration with direct access to other nodes, and thus has potential to produce run-time animation. |
| line 356
ProtoInstance ReferenceTest |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
|
BadNameBadFieldValueNameMissingInitialization
ProtoInstance X3D |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
|
DoubleDeclaration2
ProtoInstance DoubleMixedDeclaration |
No direct ROUTE connection found for events to/from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation. |
<!--
Color-coding 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)
<ProtoInstance name='ProtoName'>
<field name='fieldName'/> </ProtoInstance>
-->
<!--
For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints.
-->