[X3D-Public] [Cad] CAD examples errors; CAD working group call today
Don Brutzman
brutzman at nps.edu
Thu Apr 25 15:28:15 PDT 2013
On 4/25/2013 6:18 AM, Don Brutzman wrote:
> cc: CAD
>
> we have another weekly call planned for today, 1400 pacific/1700 eastern.
attendees: Hyo, Dick, and Don
> am hoping we can review progress on X3DOM CAD component readiness and
> QuadSet/IndexedQuadSet strategies.
not addressed... Vince we miss you!
Hyo reported a new problem: Transform validation is not accepting
CADPart as a child.
According to the specification, that should be OK. I will review
DOCTYPE and Schema validation for the apparent omission error.
32.4.4 CADPart
CADPart : X3DGroupingNode, X3DProductStructureChildNode {
http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/components/CADGeometry.html#CADPart
> would also like to review Michalis' excellent comments.
> [...]
Michalis there are a number of good fixes here to apply to our example
scenes... I will make them as appropriate and check them into the Basic
CAD archive.
It is further great to hear that
- the CAD spec looks good, and
- you have a new implementation for X3D CAD!
So thanks. Steady progress today, more work to follow. 8)
> On 4/24/2013 11:33 AM, Michalis Kamburelis wrote:
>> Hi,
>>
>> I noticed a link to CAD component examples on
>> http://www.web3d.org/x3d/content/examples/Basic/CAD/ . It seems there
>> are a couple of errors in the test files, i.e. they do not conform to
>> the X3D specification (they declare in header X3D 3.0 or 3.1 spec
>> versions).
>>
>> 1. "Cad Design Pattern Examples": contains Transform node inside
>> CADFace. This is invalid, X3D spec (checked 3.1 and 3.3 versions) says
>> that CADFace can only contain (inside "shape" field) the [X3DShapeNode,
>> LOD] nodes. So, Transform is not allowed there.
fixed
>> 2. "Cad Geometry Extern Prototypes": it indirectly (though
>> http://www.web3d.org/x3d/content/examples/Basic/CAD/CadGeometryPrototypes.wrl
>>
>> ) links to
>> http://www.web3d.org/x3d/content/examples/Basic/development/MetadataPrototypes.wrl
>>
>> , and MetadataPrototypes.wrl is invalid: the manner in which it uses
>> DEF/USE of "HideWarnings" is invalid. It makes "DEF HideWarnings" inside
>> a PROTO MetadataDouble, and then inside another PROTO MetadataFloat it
>> does "USE HideWarnings".
>>
>> This is incorrect, as each PROTO has a separate namespace for DEF/USE
>> names. See X3D 3.3 spec:
>> http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/concepts.html#PROTOdefinitionsemantics
>>
>> : "Nodes given a name by a DEF construct inside the prototype may not be
>> referenced in a USE construct outside of the prototype's scope.".
>>
>> The simplest fix would be to update MetadataPrototypes.wrl to always do
>> "DEF HideWarnings ... { }" instead of trying to reUSE the HideWarnings
>> name.
sounds correct, I will investigate
>> 3. "Cad Geometry Prototypes": the example in classic encoding
>> (CadGeometryPrototypes.x3dv) has a parsing error: on line 110, within a
>> url with ecmascript: contents, the double quotes should be escaped.
>> There is:
>>
>> //colorPerVertex ignored in IndexedQuadSet, and always treated as "true"
>>
>> but it should be
>>
>> //colorPerVertex ignored in IndexedQuadSet, and always treated as
>> \"true\"
>>
>> The version in XML encoding seems Ok, so it's probably some bug in
>> (probably automatic) generation of the classic version.
sounds correct, I will investigate
>> 4. "CADPart Child Transformation Alternative A": same problem as 1.,
>> Transform node is used inside CADFace. The comments inside say
>>
>> "Developer scene to explore Mantis Issue 528 Alternative A for
>> transformation of CADFace children: allow Transform node as child of
>> CADFace."
>>
>> and links to member-only
>> http://www.web3d.org/membership/login/mantis/view.php?id=528 . I guess
>> you guys are working on it :) Either the testcase should be fixed, or
>> the spec should be updated to allow Transform as child of CADFace in
>> next X3D version. This example declares X3D 3.1 in the header.
>>
>> I see that "CADPart Child Transformation Alternative B" and "CADPart
>> Child Transformation Alternative C" are exploring other ideas for
>> putting transformations inside.
yes this is expected to fail, i will check that the warnings are adequate
>> Everything else seems working perfectly :) I tested with view3dscene,
>> simply opening the files in XML and classic encoding with view3dscene
>> (from snapshots http://michalis.ii.uni.wroc.pl/castle-engine-snapshots/
>> , since the CAD level 2 support in view3dscene is new).
>>
>> See X3D specification "CAD geometry component": for X3D 3.1:
>> http://www.web3d.org/files/specifications/19775-1/V3.1/Part01/components/CADGeometry.html
>>
>> , for latest X3D 3.3:
>> http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/components/CADGeometry.html
>>
>> . I think that my comments above are true regardless of X3D spec version.
agreed, again thanks.
all the best, Don
--
Don Brutzman Naval Postgraduate School, Code USW/Br brutzman at nps.edu
Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149
X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman
More information about the X3D-Public
mailing list