[x3d-public] [x3dom-users] port this example to X3DOM?

Andreas Plesch andreasplesch at gmail.com
Fri Jun 2 08:11:02 PDT 2017


John,

I realized that the ported script uses what is equivalent to the
directOutput style of x3d scripts. This means that it may be possible to
convert directOutput scripts to x3dom scripts in general using the pattern
in the ported example.

The 'from' portion of Routes into the script would become 'outputchange'
listeners attached to the fromNodes with event handlers. The 'to' portion
of Routes into the script is used inside the event handler which then calls
the appropriate set script function.

The directOutput nodes can be retrieved by scene.querySelector(). The SAI
node.field syntax can be translated to node.get/setFieldValue or perhaps to
node._x3dom.field (or similar).

intialize() script functions can be run at document.onload time or probably
better using x3dom.runtime.ready
https://doc.x3dom.org/author/runtime.html#ready

There are probably lots of pitfalls, and does not address regular (non
directOutput) script nodes. -Andreas







On Wed, May 31, 2017 at 10:22 PM, Andreas Plesch <andreasplesch at gmail.com>
wrote:

> John,
>
> I could make pretty quick progress to port this to x3d script over to dom
> scripting style:
>
> https://warm-nape.glitch.me/
>
> You can 'remix' the code here:
>
> https://glitch.com/edit/#!/warm-nape
>
> [I like glitch.com, and it has a built in server side]
>
> The structure is pretty close to the original but probably will need to be
> more generalized for easy reuse. It is a starting point anyways.
>
> There is an initial reset of the green ball translation when it is dragged
> first. Not sure where this is coming from but may only need minor fixing.
>
> For routing, the main idea here is to use the x3dom onoutputchange event
> as trigger. Other ideas are certainly possible or perhaps necessary for
> generalization.
>
> This uses get/setFieldValue rather than getAttribute because it is more
> convenient and closer to SAI as it deals with field objects rather than
> strings.
>
> x3dom does not have methods for SFRotations since all rotations get
> immediately translated to quaternions. But this is a detail at this point.
>
> I think I like the idea of returning an object populated by output fields
> from a main script function.
>
> Take a look and feel free to mangle and reorganize,
>
> Andreas
>
>
> On Wed, May 31, 2017 at 4:26 PM, Andreas Plesch <andreasplesch at gmail.com>
> wrote:
>
>> Hi John,
>>
>> I am going to take a look but do not wait for anything. I believe x3dom
>> has PlaneSensor.
>>
>> https://gist.github.com/andreasplesch/83771ec5959935d309db417387397952
>> for easy access.
>>
>> -Andreas
>>
>> On Wed, May 31, 2017 at 3:44 PM, John Carlson <yottzumm at gmail.com> wrote:
>>
>>> Can someone port the attached example to X3DOM?  It would help with the
>>> X3DOM upgrade effort.
>>>
>>>
>>>
>>> Thanks!
>>>
>>>
>>>
>>> John
>>>
>>>
>>>
>>> ------------------------------------------------------------
>>> ------------------
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>> _______________________________________________
>>> X3dom-users mailing list
>>> X3dom-users at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/x3dom-users
>>>
>>>
>>
>>
>> --
>> Andreas Plesch
>> 39 Barbara Rd.
>> Waltham, MA 02453
>>
>
>
>
> --
> Andreas Plesch
> 39 Barbara Rd.
> Waltham, MA 02453
>



-- 
Andreas Plesch
39 Barbara Rd.
Waltham, MA 02453
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20170602/5df26d03/attachment-0001.html>


More information about the x3d-public mailing list