[x3d-public] review of various X3D statement implementations for X3DOM

Roy Walmsley roy.walmsley at ntlworld.com
Wed Dec 20 05:33:06 PST 2017


Andreas,

 

Many thanks for the follow up details you provided. I have now added these
to the X3D/HTML Implementation
<http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations>  wiki page. I
have also added material from our discussions last week, which covered a
couple of additional items for X3DOM, and then moved on to X_ITE. If you
have any additions or corrections, please feel free to let me know, and I
will update the wiki page.

 

All the best,

 

Roy

 

-----Original Message-----
From: x3d-public [mailto:x3d-public-bounces at web3d.org] On Behalf Of Andreas
Plesch
Sent: 13 December 2017 20:57
To: X3D Graphics public mailing list <x3d-public at web3d.org>
Subject: Re: [x3d-public] review of various X3D statement implementations
for X3DOM

 

Thanks for sharing these wiki updates. These are great x3dom summaries.

 

 
<http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations#X3DOM_specific
_event_handlers>
http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations#X3DOM_specific_
event_handlers

 

In addition to onoutputchanged there is also a very useful but not
officially documented onviewpointchanged event. See these github

issues:

 

 
<https://github.com/x3dom/x3dom/search?q=viewpointchanged&type=Issues&utf8=%
E2%9C%93>
https://github.com/x3dom/x3dom/search?q=viewpointchanged&type=Issues&utf8=%E
2%9C%93

 

 

 
<http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations#X3D_Nodes_with
_additional_or_missing_fields>
http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations#X3D_Nodes_with_
additional_or_missing_fields

 

crossOrigin does relate to CORS which prohibits fetching from remote
resources unless explicitly allowed. crossOrigin = "anonymous" can be very
useful if remote host allows it.

 

 

 
<http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations#Additional_nod
es_not_in_X3D>
http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations#Additional_node
s_not_in_X3D

 

Since I just came across it there is also RenderedTexture

(
<https://github.com/x3dom/x3dom/blob/master/src/nodes/Texturing/RenderedText
ure.js>
https://github.com/x3dom/x3dom/blob/master/src/nodes/Texturing/RenderedTextu
re.js)

which is documented as X3D native because it sounds like it should but in
fact is not in the standard as far as I can see.

 

 

 <http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations#CSS>
http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations#CSS

 

x3dom does respond to some CSS:

 <https://examples.x3dom.org/example/x3dom_cssTrans.html>
https://examples.x3dom.org/example/x3dom_cssTrans.html

But I think it is restricted to 3D transformations and animations, and only
a Transform (and perhaps other grouping) nodes can be styled in that way.

The X3D element can be styled as well. Dynamic changes to the style may have
to be applied to the generated Canvas element.

 

 

X-ITE has an accurate list of supported nodes:

 <http://create3000.de/x_ite/supported-nodes/#supported-components>
http://create3000.de/x_ite/supported-nodes/#supported-components

 

It sticks very closely to the X3D spec. I am not aware of missing or
additional fields for supported nodes. In itself it does not expose any X3D
specific events to the DOM and  the X3D nodes are not part of the DOM. They
still can be accessed via the SAI programmatically after getting a browser
reference. There is my X_ITE_dom extension which adds the X3D nodes to the
DOM, and generates X3D specific events. In fact, with X_ITE_dom all X3D out
events become custom X3D specific DOM events with names derived from the X3D
event name.

The X3D element probably can be styled. Dynamic changes to the style may
have to be applied to the generated Canvas element.

 

 

Glad to help answer any questions which may arise,

 

-Andreas

 

 

On Wed, Dec 13, 2017 at 3:00 PM,  < <mailto:x3d-public-request at web3d.org>
x3d-public-request at web3d.org> wrote:

> 

> Message: 1

> Date: Wed, 13 Dec 2017 09:39:31 -0800

> From: Don Brutzman < <mailto:brutzman at nps.edu> brutzman at nps.edu>

> To: Roy Walmsley < <mailto:roy.walmsley at ntlworld.com>
roy.walmsley at ntlworld.com>

> Cc: < <mailto:x3d at web3d.org> x3d at web3d.org>, X3D Graphics public mailing
list

>         < <mailto:x3d-public at web3d.org> x3d-public at web3d.org>

> Subject: Re: [x3d-public] [x3d] Agenda for X3D WG Meeting Wednesday

>         13th December 2017

> Message-ID: < <mailto:8c586ea5-bf61-ba0b-c95f-5173ecf2d3c2 at nps.edu>
8c586ea5-bf61-ba0b-c95f-5173ecf2d3c2 at nps.edu>

> Content-Type: text/plain; charset="windows-1252"; format=flowed

> 

> Today's X3D Working Group discussion is including review of various X3D
statement implementations for X3DOM and X_ITE.

>  <http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations>
http://www.web3d.org/wiki/index.php/X3D/HTML_Implementations

> 

> Related work from a few years ago: conjecture that associated shared SAI
methods providing values of broad authoring utility, that perhaps might be
exposed to authors via direct ROUTE connections.

> 

>  <http://www.web3d.org/x3d/content/examples/Basic/development/SceneNodeP>
http://www.web3d.org/x3d/content/examples/Basic/development/SceneNodeP

> rototypeIndex.html 

>  <http://www.web3d.org/x3d/content/examples/Basic/development/SceneNodeP>
http://www.web3d.org/x3d/content/examples/Basic/development/SceneNodeP

> rototype.html 

>  <http://www.web3d.org/x3d/content/examples/Basic/development/SceneNodeP>
http://www.web3d.org/x3d/content/examples/Basic/development/SceneNodeP

> rototype.x3d

> 

> ==================================================

> <meta name='title' content='SceneNodePrototype.x3d'/>

> <meta name='created' content='19 December 2000'/> <meta 

> name='modified' content='14 November 2015'/> <meta name='description' 

> content='Expose functionality of Browser class in Java/ECMAscript 

> annexes of VRML 97 specification. Consider promotion to a native node 

> in X3D/VRML 200x scenes.'/>

> 

> <ProtoDeclare name='Scene'>

>    <ProtoInterface>

>         <!-- Standard browser attributes exposed via VRML 97 Script
annexes -->

>         <field accessType='inputOnly' name='createVrmlFromString'
type='SFString'/>

>         <field accessType='inputOnly' name='createVrmlFromURL'
type='SFString'/>

>         <field accessType='outputOnly' name='createdVrmlNodes'
type='MFNode'/>

>         <field accessType='outputOnly' name='currentFrameRate'
type='SFFloat'/>

>         <field accessType='outputOnly' name='currentSpeed'
type='SFFloat'/>

>         <field accessType='inputOnly' name='description' type='SFString'/>

>         <field accessType='inputOnly' name='evaluate' type='SFBool'/>

>         <field accessType='inputOnly' name='loadUrl' type='SFString'/>

>         <field accessType='inputOnly' name='loadUrlParameter'
type='SFString'/>

>         <field accessType='outputOnly' name='name' type='SFString'/>

>         <field accessType='inputOnly' name='replaceWorld' type='MFNode'/>

>         <field accessType='outputOnly' name='version' type='SFString'/>

>         <field accessType='outputOnly' name='worldUrl' type='SFString'/>

>         <field accessType='inputOnly' name='addRoute' type='SFBool'/>

>         <field accessType='inputOnly' name='deleteRoute' type='SFBool'/>

>         <field accessType='inputOnly' name='fromNode' type='SFNode'/>

>         <field accessType='inputOnly' name='fromEventOut'
type='SFString'/>

>         <field accessType='inputOnly' name='toNode' type='SFNode'/>

>         <field accessType='inputOnly' name='toEventIn' type='SFString'/>

>         <!-- Candidate additions -->

>         <field accessType='outputOnly' name='boundBackground'
type='SFNode'/>

>         <field accessType='outputOnly' name='boundFog' type='SFNode'/>

>         <field accessType='outputOnly' name='boundGeoViewpoint'
type='SFNode'/>

>         <field accessType='outputOnly' name='boundNavigationInfo'
type='SFNode'/>

>         <field accessType='outputOnly' name='boundViewpoint'
type='SFNode'/>

>         <field accessType='outputOnly' name='response' type='MFString'/>

>         <field accessType='inputOutput' name='dashboardVisible'
type='SFBool' value='true'/>

>         <field accessType='inputOutput' name='pixelWidth' type='SFInt32'
value='-1'/>

>         <field accessType='inputOutput' name='pixelHeight' type='SFInt32'
value='-1'/>

>    </ProtoInterface>

> ==================================================

> 

> Feedback welcome, thanks for considering the possibilities.

> 

> all the best, Don

> --

> Don Brutzman  Naval Postgraduate School, Code USW/Br
<mailto:brutzman at nps.edu> 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> http://faculty.nps.edu/brutzman

> 

> 

> 

> ------------------------------

> 

> Subject: Digest Footer

> 

> _______________________________________________

> x3d-public mailing list

>  <mailto:x3d-public at web3d.org> x3d-public at web3d.org

>  <http://web3d.org/mailman/listinfo/x3d-public_web3d.org>
http://web3d.org/mailman/listinfo/x3d-public_web3d.org

> 

> 

> ------------------------------

> 

> End of x3d-public Digest, Vol 105, Issue 33

> *******************************************

 

 

 

--

Andreas Plesch

Waltham, MA 02453

 

_______________________________________________

x3d-public mailing list

 <mailto:x3d-public at web3d.org> x3d-public at web3d.org

 <http://web3d.org/mailman/listinfo/x3d-public_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/20171220/4c529b4c/attachment-0001.html>


More information about the x3d-public mailing list