<div><div dir="auto">Yes, I’ve added the field types.</div><div dir="auto"><br></div><div dir="auto">Now the question for the master branch is, what JavaScript is necessary to add fields to X3DScripts, and how do we mesh Protos with X3DScripts.</div><div dir="auto"><br></div><div dir="auto">The question for the Script branch is whether it’s going to work with existing X3DOM architecture, in particular, what were the issues behind previous implementation efforts. I think the best way forward would be implement a new scripting language for script nodes which includes fields. We should be able to follow brython’s example.</div><div dir="auto"><br></div><div dir="auto">For me, the failures of previous attempts were found in the debugger. If I recall correctly, the Script node or field node was not considered first class X3DOM nodes so we couldn’t route to/from it. I need to start the debugger again.</div></div><div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Oct 15, 2020 at 8:30 AM Andreas Plesch <<a href="mailto:andreasplesch@gmail.com" target="_blank">andreasplesch@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div dir="auto">All field type constructors and methods are defined fields.js . Since x3dom is operating together with other scripts on the page everything needs to be namespaced. Instead of <div dir="auto"><br></div><div dir="auto">new MFInt32()</div><div dir="auto"><br></div><div dir="auto">there is a</div><div dir="auto"><br></div><div dir="auto">new x3dom.fields.MFInt32()</div><div dir="auto"><br></div><div dir="auto">I think John added appropriate helpers which should work in an encapsulated function scope under which all X3Dscripts execute.</div><div dir="auto"><br></div><div dir="auto"><br><br><div data-smartmail="gmail_signature" dir="auto">---on the phone---</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Oct 15, 2020, 2:45 AM Don Brutzman <<a href="mailto:brutzman@nps.edu" rel="noreferrer" target="_blank">brutzman@nps.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">Color me very surprised if X3DOM doesn't have field types already.<br>
<br>
On 10/14/2020 8:52 PM, John Carlson wrote:<br>
> <br>
> I've added the following test to x3dom (coderextreme's master branch). There are some pretty basic things such that it doesn't work, below--MFInt32 not defined. Do I need to define all field Types? Can do, I've done it before! I probably need to do it in the same scope as initialize?<br>
> <br>
> I will pursue adding field types for now. Wish me luck!<br>
> <br>
> Thanks.<br>
> <br>
> x3dom-full.debug.js:45007 Adding fields<br>
> x3dom.registerNodeType.defineClass.nodeChanged @ x3dom-full.debug.js:45007<br>
> x3dom-full.debug.js:45034 Number of fields 6<br>
> VM46:31 Uncaught ReferenceError: MFInt32 is not defined<br>
> at eventsProcessed (eval at nodeChanged (x3dom-full.debug.js:45126), <anonymous>:31:16)<br>
> at initialize (eval at nodeChanged (x3dom-full.debug.js:45126), <anonymous>:24:2)<br>
> at eval (eval at nodeChanged (x3dom-full.debug.js:45126), <anonymous>:236:41)<br>
> at x3dom.registerNodeType.defineClass.nodeChanged.nodeChanged (x3dom-full.debug.js:45139)<br>
> at x3dom.NodeNameSpace.setupTree (x3dom-full.debug.js:11796)<br>
> at x3dom.registerNodeType.defineClass.nodeChanged.nodeChanged (x3dom-full.debug.js:33648)<br>
> at x3dom.NodeNameSpace.setupTree (x3dom-full.debug.js:11796)<br>
> at x3dom.NodeNameSpace.<anonymous> (x3dom-full.debug.js:11789)<br>
> at NodeList.forEach (<anonymous>)<br>
> at x3dom.NodeNameSpace.setupTree (x3dom-full.debug.js:11787)<br>
> x3dom-full.debug.js:45007 Adding fields<br>
> x3dom.registerNodeType.defineClass.nodeChanged @ x3dom-full.debug.js:45007<br>
> x3dom-full.debug.js:45034 Number of fields 5<br>
> x3dom-full.debug.js:45007 Adding fields<br>
> x3dom.registerNodeType.defineClass.nodeChanged @ x3dom-full.debug.js:45007<br>
> x3dom-full.debug.js:45034 Number of fields 5<br>
> x3dom-full.debug.js:45007 Adding fields<br>
> x3dom.registerNodeType.defineClass.nodeChanged @ x3dom-full.debug.js:45007<br>
> <br>
> create mode 100644 test/functional/Gears/Rotor.x3d<br>
> create mode 100644 test/functional/Gears/gears.x3d<br>
> create mode 100644 test/functional/Gears/index.html<br>
> <br>
> <a href="http://localhost:8000/test/functional/Gears/" rel="noreferrer noreferrer noreferrer" target="_blank">http://localhost:8000/test/functional/Gears/</a><br>
> <br>
> Thanks,<br>
> <br>
> John<br>
> <br>
> ---------- Forwarded message ---------<br>
> From: *John Carlson* <<a href="mailto:yottzumm@gmail.com" rel="noreferrer noreferrer" target="_blank">yottzumm@gmail.com</a> <mailto:<a href="mailto:yottzumm@gmail.com" rel="noreferrer noreferrer" target="_blank">yottzumm@gmail.com</a>>><br>
> Date: Wed, Oct 14, 2020 at 9:54 PM<br>
> Subject: Re: [x3d-public] Priorities<br>
> To: Don Brutzman <<a href="mailto:brutzman@nps.edu" rel="noreferrer noreferrer" target="_blank">brutzman@nps.edu</a> <mailto:<a href="mailto:brutzman@nps.edu" rel="noreferrer noreferrer" target="_blank">brutzman@nps.edu</a>>><br>
> Cc: X3D Graphics public mailing list <<a href="mailto:x3d-public@web3d.org" rel="noreferrer noreferrer" target="_blank">x3d-public@web3d.org</a> <mailto:<a href="mailto:x3d-public@web3d.org" rel="noreferrer noreferrer" target="_blank">x3d-public@web3d.org</a>>><br>
> <br>
> <br>
> I will be pursuing getting X3DScript working entirely within x3dom this evening.<br>
> <br>
> John<br>
> <br>
> On Wed, Oct 14, 2020 at 9:44 PM John Carlson <<a href="mailto:yottzumm@gmail.com" rel="noreferrer noreferrer" target="_blank">yottzumm@gmail.com</a> <mailto:<a href="mailto:yottzumm@gmail.com" rel="noreferrer noreferrer" target="_blank">yottzumm@gmail.com</a>>> wrote:<br>
> <br>
> X3DJSONLD only has limited functionality for X3DScript. I stripped it because X_ITE did not have support, so none of my X3DScripts were working. I hope we can get X3DScript added to XMLSchema, X3DUOM etc<br>
> <br>
> Thanks, Don<br>
> <br>
> John<br>
> <br>
> On Wed, Oct 14, 2020 at 9:33 PM John Carlson <<a href="mailto:yottzumm@gmail.com" rel="noreferrer noreferrer" target="_blank">yottzumm@gmail.com</a> <mailto:<a href="mailto:yottzumm@gmail.com" rel="noreferrer noreferrer" target="_blank">yottzumm@gmail.com</a>>> wrote:<br>
> <br>
> If I recall correctly, full support for SAI will require a Browser implementation. I suggest someone scope out the work for that, if any. That is, much of the functionality may be there. It’s important to distinguish X_ITE’s Browser from X3DOM’s in any case.<br>
> <br>
> John<br>
> <br>
> On Wed, Oct 14, 2020 at 9:22 PM John Carlson <<a href="mailto:yottzumm@gmail.com" rel="noreferrer noreferrer" target="_blank">yottzumm@gmail.com</a> <mailto:<a href="mailto:yottzumm@gmail.com" rel="noreferrer noreferrer" target="_blank">yottzumm@gmail.com</a>>> wrote:<br>
> <br>
> Andreas, can you share any info about why field routing may not be working for X3DScripts in X3DOM? See coderextreme repository.<br>
> <br>
> When I get a chance, I will peek at proto declare/interface fields, but my understanding is those go away!<br>
> <br>
> Note that I’m not currently working on SAI for X3DOM, but I do have some preliminary steps for declaring field types.<br>
> <br>
> John<br>
> <br>
> On Wed, Oct 14, 2020 at 6:45 PM Don Brutzman <<a href="mailto:brutzman@nps.edu" rel="noreferrer noreferrer" target="_blank">brutzman@nps.edu</a> <mailto:<a href="mailto:brutzman@nps.edu" rel="noreferrer noreferrer" target="_blank">brutzman@nps.edu</a>>> wrote:<br>
> <br>
> On 10/13/2020 8:26 PM, John Carlson wrote:<br>
> ><br>
> > Here’s may be possible: X3DScript node for X3DOM and X_ITE. PROTOs with scripts<br>
> <br>
> Script node support is is always topmost deficient. X3DOM without scripts is not compliant X3D or VRML.<br>
> <br>
> Prototypes are tied for importance, as in Really Really Important for X extensibility.<br>
> <br>
> Please continue sharing information with Andreas so that this might all land and work. Thanks John.<br>
> <br>
> all the best, Don<br>
> -- <br>
> Don Brutzman Naval Postgraduate School, Code USW/Br <a href="mailto:brutzman@nps.edu" rel="noreferrer noreferrer" target="_blank">brutzman@nps.edu</a> <mailto:<a href="mailto:brutzman@nps.edu" rel="noreferrer noreferrer" target="_blank">brutzman@nps.edu</a>><br>
> Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149<br>
> X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman" rel="noreferrer noreferrer noreferrer" target="_blank">http://faculty.nps.edu/brutzman</a><br>
> <br>
<br>
all the best, Don<br>
-- <br>
Don Brutzman Naval Postgraduate School, Code USW/Br <a href="mailto:brutzman@nps.edu" rel="noreferrer noreferrer" target="_blank">brutzman@nps.edu</a><br>
Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149<br>
X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman" rel="noreferrer noreferrer noreferrer" target="_blank">http://faculty.nps.edu/brutzman</a><br>
</blockquote></div>
</blockquote></div></div>
</div>