[X3D-Public] Announcement: view3dscene 3.13.0 - Mac OS X, networking, more

Michalis Kamburelis michalis.kambi at gmail.com
Thu Aug 22 12:26:23 PDT 2013


Vincent Marchetti wrote:
> http://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsTrimmedSurface.x3d
> When a NurbsTrimmedSurface is loaded, view3dscene generates a warning:
> "Unknown X3D field name (indicated by containerField value) "geometry" by node "NurbsCurve2D" inside node "Contour2D"
> This is spurious, the nodes in the examples follow the v 3.2 specs for the NURBS component: http://www.web3d.org/files/specifications/19775-1/V3.2/Part01/components/nurbs.html
>

Wow, many thanks for testing view3dscene, I'm glad you found it good :)

As for the warning around NurbsCurve2D: view3dscene follows here the 
specification to the letter, as far as I see. The fact that nodes 
arrangement in 
http://www.web3d.org/x3d/content/examples/Basic/NURBS/NurbsTrimmedSurface.x3d 
follows the specification doesn't necessarily mean that explicit 
containerField="xxx" is not needed. The X3D XML encoding specification 
says that NurbsCurve2D by default is looking for a "geometry" field in 
parent node:

- X3D 3.2: 
http://www.web3d.org/files/specifications/19776-1/V3.2/Part01/EncodingOfNodes.html#NurbsCurve2D
- X3D 3.3: 
http://www.web3d.org/files/specifications/19776-1/V3.3/Part01/EncodingOfNodes.html#NurbsCurve2D

So, if you use NurbsCurve2D and want it to attach to Contour2D.children 
field, you really should write it like this in XML:

<Contour2D>
   <NurbsCurve2D containerField="children" ..>
   ...
</Contour2D>

So says the specification :)

It's another matter whether the specification is right. IMHO it would 
make sense to change X3D XML encoding spec in X3D 3.4 to say that 
NurbsCurve2D.containerField by default is "children". And when this rule 
will be added to view3dscene, the warning will disappear :)

Michalis



More information about the X3D-Public mailing list