[x3d-public] X3DJSAIL update: improved output when exporting ClassicVRML/VRML97 models
John Carlson
yottzumm at gmail.com
Sat Jul 6 17:48:45 PDT 2024
Here’s a variation for setting the stack space for javac:
<javac
includes="RunSaxon.java,X3DRoots.java,Validate.java,ValidateXML.java,X3DJSONLD.java,JinLOA4.java,Jin.java,Match.java"
srcdir="." destdir="." classpath="${classpath}" includeantruntime="false"
fork="${fork}"> <compilerarg value="-proc:full"/> <compilerarg
value="-J-Xss1g"/> <compilerarg value="-J-Xmx4g"/> </javac>
Enjoy!
It’s in my build.xml as well!
John
On Sat, Jul 6, 2024 at 7:39 PM John Carlson <yottzumm at gmail.com> wrote:
> Don,
>
> Looking a the logs, I see some stackoverflow errors. I don’t have the
> build.xml handy, but Terry N. suggested using <jvmarg> or <jvmargs> to set
> the stack space of a java program. I use value=“-Xss1g” for 1GB stack
> space in x3dschema/build.xml. If you have enough system resources
> available, that might get you through some sticky points. That’s pretty
> much the maximum value. This got me past some stack overflows in Core Java
> (pattern matching) and HAnim validation.
>
> My build.xml is here:
> https://github.com/coderextreme/x3dschema/blob/main/build.xml
>
> Please thank Terry again for solving this for me!
>
> John
>
> On Sat, Jul 6, 2024 at 5:44 PM Brutzman, Donald (Don) (CIV) via x3d-public
> <x3d-public at web3d.org> wrote:
>
>> Am happy to report further progress in X3DJSAIL quality assurance (QA).
>>
>>
>> - X3D Java Scene Access Interface Library (X3DJSAIL)
>> - X3D Java Scene Access Interface Library (X3DJSAIL) supports
>> programmers with standards-based X3D Java interfaces and objects, all as
>> open source.
>> - https://www.web3d.org/specifications/java/X3DJSAIL.html
>>
>>
>> For each Java-language conversion of all 4000 models in the X3D Examples
>> Archives, the build scripts are now testing both export and validation of
>> .x3d XML and .x3dv ClassicVRML exports.
>>
>> This testing has led to further improvements in X3DJSAIL export, with
>> ongoing improvements and bugfixes expected. Build logs are maintained
>> online.
>>
>>
>> ========================================================================================
>> processScenes.java for all of the example archives
>> ...
>> X3dForAdvancedModeling,X3dForWebAuthors,Vrml2Sourcebook,HumanoidAnimation,ConformanceNist,Basic,Savage
>> ... results maintained at
>> http://www.web3d.org/x3d/content/examples/build.java.all.log.txt
>>
>> ========================================================================================
>>
>> As ever, Javadoc for the example archives is also generated.
>>
>>
>> - X3D Resources, X3D Examples: Scene Archives for X3D
>> -
>> https://www.web3d.org/x3d/content/examples/X3dResources.html#Examples
>>
>>
>>
>> - https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/javadoc
>> -
>> https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/javadoc
>> - https://www.web3d.org/x3d/content/examples/Basic/javadoc
>> - https://www.web3d.org/x3d/content/examples/ConformanceNist/javadoc
>> - https://www.web3d.org/x3d/content/examples/HumanoidAnimation/javadoc
>> - https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/javadoc
>>
>>
>> Acknowledgements:
>>
>>
>> - Trouble report by John Carlson with testable example, which enabled
>> further sleuthing and correction
>> - Ticket 33, joints (USE) listed before skeleton (DEF)
>> - https://sourceforge.net/p/x3d/tickets/33
>>
>>
>>
>> - Castle Model Converter (formerly tovrmlx3d)
>> - https://castle-engine.io/castle-model-converter
>>
>>
>> Have fun with X3D using Java and X3DJSAIL! 8)
>>
>>
>>
>> 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
>> https://faculty.nps.edu/brutzman
>>
>>
>>
>> ------------------------------
>> *From:* Brutzman, Donald (Don) (CIV)
>> *Sent:* Saturday, June 22, 2024 1:28 AM
>> *To:* X3D Public Mailing List (x3d-public at web3d.org)
>> *Cc:* x3d at web3d.org; brutzman at nps.edu
>> *Subject:* X3DJSAIL update: improved output when exporting
>> ClassicVRML/VRML97 models
>>
>> Am happy to report an X3DJSAIL update: improved output when exporting
>> ClassicVRML/VRML97 models.
>>
>>
>>
>> - X3D Java Scene Access Interface Library (X3DJSAIL)
>> - X3D Java Scene Access Interface Library (X3DJSAIL) supports
>> programmers with standards-based X3D Java interfaces and objects, all as
>> open source.
>> - https://www.web3d.org/specifications/java/X3DJSAIL.html
>>
>>
>>
>> Motivating problem: excellent sleuthing and a well-stated issue report by
>> John Carlson revealed a significant issue with the ClassicVRML export.
>>
>>
>>
>> - X3DJSAIL: VRML head and Scene out of order
>> - https://sourceforge.net/p/x3d/tickets/27
>>
>>
>>
>> To improve quality assurance (QA) of ClassicVRML and VRML97 output by
>> X3DJSAIL. I applied command-line validation of the ClassicVRML .x3dv
>> output using the *castle-model-converter* application by Michalis
>> Kamburelis, all to good effect. Troubleshooting led to fixes of the
>> original reported problem and perhaps a dozen other errors also. This
>> validation is now part of the build scripts so that further regression
>> testing is always produced as part of X3DJSAIL library development.
>>
>>
>>
>> - Castle Model Converter (formerly tovrmlx3d)
>> - https://castle-engine.io/castle-model-converter
>>
>>
>>
>> Test program and output:
>>
>>
>>
>> - HelloWorldProgram.java
>> - Description: Example "smoke test" program to create a highly
>> detailed X3D model using the X3D Java Scene Access Interface Library
>> (X3DJSAIL).
>> -
>> https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/java/examples/HelloWorldProgram.java
>>
>>
>>
>> - HelloWorldProgram output, ClassicVRML and VRML97
>> -
>> https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/java/examples/HelloWorldProgramOutput.x3dv
>> -
>> https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/java/examples/HelloWorldProgramOutput.wrl
>> - note that other outputs are also provided: XML .x3d, pretty-print
>> .html, Java, Python.py, compressed .exi, X_ITE and X3DOM html, etc.
>>
>>
>>
>> - Build test log is in version control to track improvements and
>> avoid backsliding:
>> -
>> https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/java/build.test.X3DJSAIL.txt
>> - Excerpt showing castle-model-converter validation:
>>
>>
>>
>> ClassicVRML validation: castle-model-converter.exe C:\x3d-code\
>> www.web3d.org\x3d\stylesheets\java\examples/HelloWorldProgramOutput.x3dv
>> --validate --enable-downloads
>>
>> castle-model-converter: Warning: X3D: Invalid X3D file: Invalid sequence
>> in a string: "\n". Backslash must be followed by another backslash or
>> double quote, for SFString and MFString (in X3D classic (VRML) encoding)
>> and for MFString (in X3D XML encoding).
>>
>> castle-model-converter: Warning: VRML/X3D: Prototype "ArtDeco02"
>> referenced by external prototype "ArtDeco02" doesn't have field
>> "description"
>>
>> castle-model-converter: Warning: VRML/X3D: Inline node name "inlineScene"
>> not found (or nothing was EXPORTed from it), cannot IMPORT
>>
>> castle-model-converter: Warning: X3D: Invalid X3D file: Invalid sequence
>> in a string: "\n". Backslash must be followed by another backslash or
>> double quote, for SFString and MFString (in X3D classic (VRML) encoding)
>> and for MFString (in X3D XML encoding).
>>
>> castle-model-converter: Warning: X3D: Node "Anchor" is not allowed in the
>> field "watchList" of the node "LoadSensor"
>>
>> castle-model-converter: Warning: X3D: Node "GeoMetadata" is not allowed
>> in the field "watchList" of the node "LoadSensor"
>>
>> Exception "Exception":
>>
>> Validation failed (consult the warnings above), exiting with non-zero
>> status
>>
>>
>>
>> Michalis was informed of the last two watchlist errors and reportedly has
>> already fixed them. Many of the other warnings are also fixable if the
>> test program is improved to use actual file addresses instead of
>> pseudo-urls. Progress steadily continues… the only “really bad errors”
>> are the ones you don’t know about!
>>
>>
>>
>> Javadoc documentation for X3DJSAIL programmers:
>>
>> - https://www.web3d.org/specifications/java/javadoc
>>
>>
>>
>> Over 4000 examples using X3DJSAIL, converted automatically from .x3d to
>> .java in the X3D Example Models Archives:
>>
>> - https://www.web3d.org/specifications/java/X3DJSAIL.html#Examples
>>
>>
>>
>> So X3DJSAIL is excellent for plain-old Java handling of X3D, and keeps
>> getting better. Again thanks to John and Michalis for their contributions
>> to identify problems that are now fixed.
>>
>>
>>
>> Have fun with X3D Java! 😊
>>
>>
>>
>> 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
>> https://faculty.nps.edu/brutzman
>>
>>
>> _______________________________________________
>> x3d-public mailing list
>> x3d-public at web3d.org
>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20240706/2f5d6325/attachment-0001.html>
More information about the x3d-public
mailing list