[x3d-public] good example for ECMAScripting and Protos?

John Carlson yottzumm at gmail.com
Sat Aug 4 13:18:44 PDT 2018


I had planned to get rid of the ECMAScript and fields from the Script node, but with Vince’s script, it kind of appears like we need fields that are not ECMAScript.  Another approach for handling nodes as fields is welcome.   We could extend nodeUtil to handle node fields as properties.  Hmmm.

John

Sent from Mail for Windows 10

From: John Carlson
Sent: Saturday, August 4, 2018 4:04 PM
To: Andreas Plesch
Cc: Vincent Marchetti; X3D Graphics public mailing list; x3dom mlist
Subject: RE: [x3d-public] good example for ECMAScripting and Protos?

I don’t see any _x3domNode when I look at it in the debugger.

Not processed by x3dom would be my best guess.  Can we add a script or x3dscript to X3DOM (following V4.0 guidelines), possibly compatible with X_ITE?

I could look for a USE attribute  in the selector, hmm.   But the points are defined in the DEF attributed node, so probably no go.

Thanks,

John

Sent from Mail for Windows 10

From: Andreas Plesch
Sent: Saturday, August 4, 2018 8:53 AM
To: John Carlson
Cc: Vincent Marchetti; X3D Graphics public mailing list; x3dom mlist
Subject: Re: [x3d-public] good example for ECMAScripting and Protos?

On Sat, Aug 4, 2018 at 4:56 AM John Carlson <yottzumm at gmail.com> wrote:
>
> I have a problem with this file in X3DOM, because as far as I can tell, the SFNode fields (the node, not the field) do not have getFieldValue for point etc. as a function, for example (but one can double check me).  In other words, I don’t think this node is an X3DOM node.

I think you are referring to X3DOM's dom element method getFieldValue
and that it does not work for SFNode type fields. For example:

shapeDomNode.getFieldValue('Appearance')

does not return anything.

I do not think this will be fixed soon.

You can try this instead

shapeDomNode._x3domNode._cf.appearance

with something like

dom._x3domNode._cf[field.toLowerCase]

which gives you an x3domNode object.

>
> Thus I cannot take a reasonable length in the script.  One would have to parse the string.
>
>
> That’s as clear as I can get.  I think this might be because x3dom does not process scripts correctly. We would need a script tag handler, and a field handler inside that.
>
>
>
> Can you help Andreas?  I’ve created a script tag before, but that code is lost. It might be in my GitHub repository somewhere, not sure.
>
>
>
> We just need a script tag that has fields, but doesn’t execute its CDATA section.  I am pretty sure

If you add a type='text/x3dscript' (or anything) attribute, the
browser will not try to execute the script.

>
> How is V4.0 handling this?
>
>
>
> Alternatively, I can change my nodeUtil code to look at the type and do the right thing converting a string to the correct type.   Suggestions are welcome.
>
>
>
> Thanks for the great example, Vince,
>
>
>
> Should I adapt my code to deal with this failing in X3DOM, or should we change X3DOM?

What needs to be changed in x3dom ? The getFieldValue method ?

-Andreas
>
>
>
> John
>
>
>
> Sent from Mail for Windows 10
>
>
>
> From: vmarchetti at kshell.com
> Sent: Wednesday, August 1, 2018 9:04 PM
> To: John Carlson; X3D-Public
> Subject: Re: [x3d-public] good example for ECMAScripting and Protos?
>
>
>
> See
>
> http://www.kshell.com/pages/pointcloudvisualization/SphereDirectedPointSet.x3d
>
>
>
> It is a X3D file with with a Prototype + ecmascript definition of a point cloud, with a vector attached to each point of the cloud.
>
> Example used is just points randomly distributed on sphere with directs pointed radially outward.
>
>
>
> Potential uses would be to implement the scanning design pattern at http://x3dgraphics.com/examples/X3dForAdvancedModeling/Scanning/X3dMeshDesignPatternIndex.html , or
>
> visualizing fluid flow or  electromagnetic field
>
>
>
> On Jul 31, 2018, at 10:30 PM, John Carlson <yottzumm at gmail.com> wrote:
>
>
>
> Is there a good example of ECMAScripting in X3D that I can use to test my X3D JSON ECMAScript preprocessor?  Preferably with Protos
>
>
>
>
>
> Thanks!
>
>
>
> John
>
>
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
>
>
>



-- 
Andreas Plesch
Waltham, MA 02453


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20180804/e368c37d/attachment.html>


More information about the x3d-public mailing list