<div dir="auto">MOTD:</div><div dir="auto"><br></div><div dir="auto">This is excellent news, Don. Also, please try tovrmlx3d on x3d.py output (XML and VRML), not only stylesheet output. Maybe just start small with Humanoid Animation or even just focus directly on python apps with HAnimMotion nodes in them. Please run in a sandbox for your computer’s safety. Validating the XML and VRML with tovrmlx3d is crucial for success, don’t rely on internal x3d.py checks.</div><div dir="auto"><br></div><div dir="auto">I realize testing python code is not a priority, which is why I’m focusing directly on what’s currently my priorities.</div><div dir="auto"><br></div><div dir="auto">I’m hoping on quick success, then I can abandon my x3d.py efforts.</div><div dir="auto"><br></div><div dir="auto">My focus is shifting to glTF files—how can we handle glTF files with identical names going through tovrmlx3d conversion. Fix the source may be one solution, probably the best one, but I don’t have the tools which generated the glTF files (C4D). I’m thinking of trying DAE to glTF conversion with Blender right now.</div><div dir="auto"><br></div><div dir="auto">John</div><div dir="auto"><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Wed, Sep 27, 2023 at 6:16 PM Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word"><div class="m_341505934561852630WordSection1"><p class="m_341505934561852630MsoPlainText">Hi Michalis, am finally getting back to this one.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">Your tovrmlx3d.exe tool is super, and very fast. Have followed your guidance here and integrated it in the quality assurance (QA) regression tests for X3D Examples Archives. No response in log is good, meaning no error or warning. Excerpt:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif"><u></u> <u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">build.xml<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif"><u></u> <u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">ant -f C:\\x3d-code\\<a href="http://www.web3d.org" target="_blank">www.web3d.org</a>\\x3d\\content\\examples\\HumanoidAnimation processScenes.X3dToX3dvClassicVrmlEncoding<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif"><u></u> <u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">processScenes.X3dToX3dvClassicVrmlEncoding:<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">C:\x3d-code\<a href="http://www.web3d.org" target="_blank">www.web3d.org</a>\x3d\content\examples\HumanoidAnimation/Characters//HAnimModelFootLeft.x3d processing with X3dToX3dvClassicVrmlEncoding stylesheet<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">ClassicVRML validation: tovrmlx3d.exe Characters//HAnimModelFootLeft.x3dv --validate --enable-downloads<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">C:\x3d-code\<a href="http://www.web3d.org" target="_blank">www.web3d.org</a>\x3d\content\examples\HumanoidAnimation/Characters//HAnimModelFootRight.x3d processing with X3dToX3dvClassicVrmlEncoding stylesheet<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">ClassicVRML validation: tovrmlx3d.exe Characters//HAnimModelFootRight.x3dv --validate --enable-downloads<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">C:\x3d-code\<a href="http://www.web3d.org" target="_blank">www.web3d.org</a>\x3d\content\examples\HumanoidAnimation/Characters//HAnimModelHandLeft.x3d processing with X3dToX3dvClassicVrmlEncoding stylesheet<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">ClassicVRML validation: tovrmlx3d.exe Characters//HAnimModelHandLeft.x3dv --validate --enable-downloads<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">etc.<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">Next, have started debugging the X3dToX3dvClassicVrmlEncoding.xslt stylesheet. Plenty of issues found in first test sequence (perhaps 28 of 111 model conversions failed), will start fixing things. Most look straightforward and recurring, relating to X3D 4.0 updates from X3D3 that were never added before.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><ul style="margin-top:0in" type="disc"><li class="m_341505934561852630MsoPlainText"><a href="https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/X3dToX3dvClassicVrmlEncoding.xslt" target="_blank">https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/X3dToX3dvClassicVrmlEncoding.xslt</a><u></u><u></u></li><li class="m_341505934561852630MsoPlainText">which simply invokes<u></u><u></u></li><li class="m_341505934561852630MsoPlainText"><a href="https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/X3dToVrml97.xslt" target="_blank">https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/stylesheets/X3dToVrml97.xslt</a><u></u><u></u></li></ul><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">Will post issue reports for tovrmlx3d.exe if any emerge.<u></u><u></u></p><ul style="margin-top:0in" type="disc"><li class="m_341505934561852630MsoPlainText"><a href="https://github.com/castle-engine/view3dscene/issues" target="_blank">https://github.com/castle-engine/view3dscene/issues</a><u></u><u></u></li></ul><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">Initial regression-testing build log and archive:<u></u><u></u></p><ul style="margin-top:0in" type="disc"><li class="m_341505934561852630MsoPlainText"><a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/build.x3dv.log.txt" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/build.x3dv.log.txt</a><u></u><u></u></li></ul><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><ul style="margin-top:0in" type="disc"><li class="m_341505934561852630MsoPlainText">HumanoidAnimation (HAnim) X3D Examples Archive<u></u><u></u></li><li class="m_341505934561852630MsoPlainText"><a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation</a><u></u><u></u></li></ul><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">Eventually, after proceeding through all 8 X3D Example Archives, will next look at VRML97 .wrl files. Should be pretty clean at that stage since it is the same stylesheet converter, which either notes unsupported X3D nodes or else inserts an excerpted VRML97 prototype when such backwards-compatibility support for VRML97 is possible. Examples:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><ul style="margin-top:0in" type="disc"><li class="m_341505934561852630MsoPlainText">X3D Example Archives: Basic, development, Event Utility Prototypes<u></u><u></u></li><li class="m_341505934561852630MsoPlainText"><a href="https://www.web3d.org/x3d/content/examples/Basic/development/EventUtilityPrototypesIndex.html" target="_blank">https://www.web3d.org/x3d/content/examples/Basic/development/EventUtilityPrototypesIndex.html</a><u></u><u></u></li><li class="m_341505934561852630MsoPlainText"><a href="https://www.web3d.org/x3d/content/examples/Basic/development/EventUtilityPrototypes.wrl" target="_blank">https://www.web3d.org/x3d/content/examples/Basic/development/EventUtilityPrototypes.wrl</a><u></u><u></u></li><li class="m_341505934561852630MsoPlainText">… and other prototypes in that directory<u></u><u></u></li></ul><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">Onward we go. Having fun with ClassicVrml .x3dv! 8)<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">all the best, Don<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">-- <u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">Don Brutzman Naval Postgraduate School, Code USW/Br <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a><u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149<u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><span style="font-size:9.0pt;font-family:"Courier New",serif">X3D graphics, virtual worlds, navy robotics <a href="https://faculty.nps.edu/brutzman" target="_blank">https://faculty.nps.edu/brutzman</a><u></u><u></u></span></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">-----Original Message-----<br>From: Michalis Kamburelis <<a href="mailto:michalis.kambi@gmail.com" target="_blank">michalis.kambi@gmail.com</a>> <br>Sent: Wednesday, August 23, 2023 7:09 AM<br>To: Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>><br>Cc: X3D Public Mailing List (<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>) <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>><br>Subject: Re: VRML97 and ClassicVRML model validation from command line using view3dscene</p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">Don,<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">1. As for some missing X3D 4.0 nodes: Yes, this can happen, as in the past I didn't carefully check whether all X3D 4.0 nodes have been added to CGE/view3dscene, and indeed I was fixing later some missing ones (like H-Anim nodes from X3D 4.0).<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText"> If you can extract the list of missing X3D 4.0 nodes from above logs, I'll be grateful -- I didn't find relevant messages now from the logs you linked, but admittedly I only looked quickly.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">2. To avoid the "Error EDownloadError when loading inline file from URL ...: Downloading network resources (from "http" or "https" protocols) is not enabled. Set global EnableBlockingDownloads:=true to enable." pass the additional command-line option<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText"> --enable-downloads<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText"> to tovrmlx3d. Note that it will definitely increase the validation time. The tovrmlx3d will download the linked resources (Inline X3D content, X3D content referred by EXTERNPROTOs etc.) from the Internet at validation.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">Regards,<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">Michalis<u></u><u></u></p><p class="m_341505934561852630MsoPlainText"><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">śr., 23 sie 2023 o 08:18 Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank"><span style="color:windowtext;text-decoration:none">brutzman@nps.edu</span></a>> napisał(a):<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Michalis, appreciate your adding this feature as part of tovrmlx3d executable. I’ve integrated into the Ant build scripts and tested operation satisfactorily for all .wrl and .x3dv conversions in the X3D Examples Archives.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Example command-line invocation on windows, a little terser works out OK for these logs:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> tovrmlx3d.exe <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> C:\x3d-code\<a href="http://www.web3d.org" target="_blank">www.web3d.org</a>\x3d\content\examples\X3dForWebAuthors\Chapte<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> r04ViewingNavigation/CollisionExample.x3dv --validate<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Regression-test results online (and in version control to track progress) as follows. Most look clean.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> <a href="https://www.web3d.org/x3d/content/examples/build.validate.VRML.all.log" target="_blank"><span style="color:windowtext;text-decoration:none">https://www.web3d.org/x3d/content/examples/build.validate.VRML.all.log</span></a>.txt<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> <a href="https://www.web3d.org/x3d/content/examples/build.validate.x3dv.all.log" target="_blank"><span style="color:windowtext;text-decoration:none">https://www.web3d.org/x3d/content/examples/build.validate.x3dv.all.log</span></a>.txt<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> […]<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Execution is fast! Execution took around a half hour for over 4000 examples, most of that time was likely writing test-result outputs to console.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> I haven’t tried fixing any model errors or X3dToVrml97.xslt stylesheet conversion errors yet (e.g. true false vice TRUE FALSE etc.) – that will happen.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> You might see some issues in there that relate to your side, saw a few <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> such as<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> new X3D4 nodes that might not yet be included in view3dscene, <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> Backslash and \n error reports didn’t include line numbers (might be <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> hard to isolate),<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Saw this error message, but not sure how to implement setting the property via command line, please advise:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> tovrmlx3d: Warning: X3D: Error EDownloadError when loading inline file from URL <a href="https://www.web3d.org/x3d/content/examples/Basic/HumanoidAnimation/NancyDiving.x3d" target="_blank"><span style="color:windowtext;text-decoration:none">https://www.web3d.org/x3d/content/examples/Basic/HumanoidAnimation/NancyDiving.x3d</span></a>: Downloading network resources (from "http" or "https" protocols) is not enabled. Set global EnableBlockingDownloads:=true to enable.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Happy to now have these post-conversion tests available, enabling continued deliberate improvements in quality assurance (QA). Again thanks for a tremendous capability, very helpful.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Have fun with VRML! 8)<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> all the best, Don<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> --<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Don Brutzman Naval Postgraduate School, Code USW/Br <a href="mailto:brutzman@nps.edu" target="_blank"><span style="color:windowtext;text-decoration:none">brutzman@nps.edu</span></a><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> X3D graphics, virtual worlds, navy robotics <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> <a href="https://faculty.nps.edu/brutzman" target="_blank"><span style="color:windowtext;text-decoration:none">https://faculty.nps.edu/brutzman</span></a><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> -----Original Message-----<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> From: Michalis Kamburelis <<a href="mailto:ichalis.kambi@gmail.com" target="_blank"><span style="color:windowtext;text-decoration:none">ichalis.kambi@gmail.com</span></a>><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> Sent: Monday, August 14, 2023 5:40 AM<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> To: Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank"><span style="color:windowtext;text-decoration:none">brutzman@nps.edu</span></a>><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> Cc: X3D Public Mailing List (<a href="mailto:x3d-public@web3d.org" target="_blank"><span style="color:windowtext;text-decoration:none">x3d-public@web3d.org</span></a>) <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> <<a href="mailto:x3d-public@web3d.org" target="_blank"><span style="color:windowtext;text-decoration:none">x3d-public@web3d.org</span></a>><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> Subject: Re: VRML97 and ClassicVRML model validation from command line <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> using view3dscene<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Don,<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> In short: I added now –validate option to tovrmlx3d <span style="font-family:"Segoe UI Emoji",sans-serif">😊</span><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Example usage on a valid model:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ```<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> $ ./tovrmlx3d ../demo-models/x3d/axis.x3d –validate $ echo $?<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> 0<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ```<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> So empty output, and exit status 0, as expected from most tools. You can use this with Ant, Make or anything else.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Example usage on a model with problems:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ```<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> $ ./tovrmlx3d <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> ../demo-models/x3d/warnings/invalid_statement_omitted_1.x3dv<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> --validate<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> tovrmlx3d: Warning: VRML/X3D: Error when reading, will skip the rest of X3D file: Error at line 15 column 2: Expected node type or DEF or USE, got “}”<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Exception “Exception”:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Validation failed (consult the warnings above), exiting with non-zero <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> status<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> $ echo $?<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> 1<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ```<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> So you get output on stderr, and non-zero exit status.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Please give ~1 hour for Jenkins to process it, and this new version of <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> tovrmlx3d will be part of “snapshot" version on<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> <a href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcastle-engine.io%2Fview3dscene.php&data=05%7C01%7Cbrutzman%40nps.edu%7C2baece0d2d40458e15cb08dba3e28885%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C638283965717273937%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=nD1LFbNHsqygeWo8hFkU1Sc6hb85nsiMljC5wLe9VWQ%3D&reserved=0" target="_blank"><span style="color:windowtext;text-decoration:none">https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcastle-engine.io%2Fview3dscene.php&data=05%7C01%7Cbrutzman%40nps.edu%7C2baece0d2d40458e15cb08dba3e28885%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C638283965717273937%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=nD1LFbNHsqygeWo8hFkU1Sc6hb85nsiMljC5wLe9VWQ%3D&reserved=0</span></a> .<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> I used above test models from <a href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcastle-engine%2Fdemo-models&data=05%7C01%7Cbrutzman%40nps.edu%7C2baece0d2d40458e15cb08dba3e28885%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C638283965717273937%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=5vytRe7QjCwyp6twC57eXbSCA2L8FQroM3Is3WArmIE%3D&reserved=0" target="_blank"><span style="color:windowtext;text-decoration:none">https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcastle-engine%2Fdemo-models&data=05%7C01%7Cbrutzman%40nps.edu%7C2baece0d2d40458e15cb08dba3e28885%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C638283965717273937%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=5vytRe7QjCwyp6twC57eXbSCA2L8FQroM3Is3WArmIE%3D&reserved=0</span></a> .<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Details:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> So far, we did validation just by converting and piping output to <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> /dev/null, so "tovrmlx3d xxxx.x3d > /dev/null". But I agree this was<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> unoptimal:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> - Explicit "--validate" means we don't needlessly waste time converting to /dev/null if you actually just want to validate. We also don't produce eventual warnings when writing, that would sometimes appear and duplicate warnings we already did when reading.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> - In the future, maybe, explicit "--validate" may allow to run some additional tasks dedicated to validation (maybe because they are time-consuming and not necessary for just usual opening). We don't have such tasks right now, but it would be nice to have such option available.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> - With explicit "--validate", any warning or error causes non-zero <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> exit status. Makes sense, since a warning (even if we can continue<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> working) still means validation failed.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> So ... I added "--validate" option to tovrmlx3d.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Of note: A rename is on the horizon, for a few reasons (glTF export, consistency with other CGE tools). Most likely:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> - tovrmlx3d -> caste-scene-process<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> - view3dscene -> castle-scene-view<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> I haven't made up my mind 100% yet, if rename happens I will of course <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> announce it prominently everywhere :)<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Regards,<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> Michalis<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> niedz., 13 sie 2023 o 17:53 Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank"><span style="color:windowtext;text-decoration:none">brutzman@nps.edu</span></a>> napisał(a):<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > Hi Michalis. Thanks for all of your immense, continuing work.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > I am hoping to add validation of converted .wrl and .x3dv files to the regression test suite for X3D Example Archives. This will check the quality of output from the X3dToVrml.xslt stylesheets, and improve the quality assurance (QA) of all VRML models offered there – over 4000 in each case. In each case I’ll create and commit a build.log text file so that we can keep track of compliance and progress.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > X3D Resources, Examples: Scene Archives for X3D<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > <a href="https://www.web3d.org/x3d/content/examples/X3dResources.html#Example" target="_blank"><span style="color:windowtext;text-decoration:none">https://www.web3d.org/x3d/content/examples/X3dResources.html#Example</span></a><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > s<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > To do so, am thinking that command-line invocation (CLI) of your view3dscene or tovrmlx3d executable tools can be accomplished through addition to the existing Ant build.xml scripts. Am keen to proceed with that task.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > Am looking through the view3dscene CLI documentation, but am not exactly sure how to accomplish this.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > view3dscene, 4. Command-line options<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > <a href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fca" target="_blank"><span style="color:windowtext;text-decoration:none">https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fca</span></a><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > <a href="http://stle-engine.io" target="_blank">stle-engine.io</a>%2Fview3dscene.php%23section_command_line_options&data<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > =05%7C01%7Cbrutzman%<a href="http://40nps.edu" target="_blank">40nps.edu</a>%7C2baece0d2d40458e15cb08dba3e28885%7C6<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > d936231a51740ea9199f7578963378e%7C0%7C0%7C638283965717273937%7CUnkno<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > wn%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWw<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > iLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Wxt6n6awK8i1MHeaKC1Wv8%2Fbdn%2<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > FsWIo4JGaCBfRFzkw%3D&reserved=0<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > view3dscene, 4.2. Converting to X3D<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > <a href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fca" target="_blank"><span style="color:windowtext;text-decoration:none">https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fca</span></a><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > <a href="http://stle-engine.io" target="_blank">stle-engine.io</a>%2Fview3dscene.php%23section_converting&data=05%7C01%7<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > Cbrutzman%<a href="http://40nps.edu" target="_blank">40nps.edu</a>%7C2baece0d2d40458e15cb08dba3e28885%7C6d936231a51<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > 740ea9199f7578963378e%7C0%7C0%7C638283965717273937%7CUnknown%7CTWFpb<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > GZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6M<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > n0%3D%7C3000%7C%7C%7C&sdata=NZk2EMKFQcYMv11ajbUJrWXvp07dmDOhxr4QLSpz<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > nKE%3D&reserved=0<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > Additional options needed, or not seen:<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > Validation report only, plain text via console. (Perhaps a <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > -validate<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > switch is a variation on your ---write switches.) Avoid creation of<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > additional files, if possible. (I might send each output to a <u></u><u></u></p><p class="m_341505934561852630MsoPlainText">> > single<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > temp file, but all that file writing will likely slow down the<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > already-long overall process.)<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > Please advise if there is a way to invoke one of your tools to accomplish this. CLI example will be helpful. Thanks in advance for all guidance.<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > Have fun with VRML! 8)<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> ><u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">> > all the best, Don<u></u><u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p><p class="m_341505934561852630MsoPlainText">><u></u> <u></u></p></div></div>_______________________________________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
</blockquote></div></div>