<p dir="ltr"></p>
<p dir="ltr">On Oct 16, 2016 12:15 AM, "Joe D Williams" <<a href="mailto:joedwil@earthlink.net">joedwil@earthlink.net</a>> wrote:<br>
...<br>
> valueofnodefield = DefofInline.nameofnodeinInline.nameofNodefield;</p>
<p dir="ltr">Flux may have had such a system to use the DEF name of an inline as a proxy for its scene's context.</p>
<p dir="ltr">Cobweb has</p>
<p dir="ltr">Inlinenode.getInternalScene()</p>
<p dir="ltr">to navigate to the execution context of the inlines scene.</p>
<p dir="ltr">So I know how to do remove/add Routes in inlines with cobweb (in theory).</p>
<p dir="ltr">My question is more about the SAI standard and if it allows for working with the execution context of an inline scene from outside of the inline. I believe it does not.</p>
<p dir="ltr">> Look at the end of the example where after things change, the root nodes get reloaded. Not sure if that was just that Flux needed reload or if all browsers would.</p>
<p dir="ltr">All browsers would need to do that transfer of root nodes from the new scene to the existing scene.</p>
<p dir="ltr">Andreas </p>
<p dir="ltr">> Joe<br>
><br>
>><br>
>> Andreas<br>
>><br>
>>> Thanks and Best,<br>
>>> Joe<br>
>>> <a href="http://www.hypermultimedia.com/ajax3d/AJAX3Dlogo2.x3d">http://www.hypermultimedia.com/ajax3d/AJAX3Dlogo2.x3d</a><br>
>>><br>
>>><br>
>>><br>
>>><br>
>>> ----- Original Message ----- From: "Andreas Plesch" <<br>
>><br>
>> <a href="mailto:andreasplesch@gmail.com">andreasplesch@gmail.com</a>><br>
>>><br>
>>> To: "Joe D Williams" <<a href="mailto:joedwil@earthlink.net">joedwil@earthlink.net</a>><br>
>>> Cc: "X3D Graphics public mailing list" <<a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a>><br>
>>> Sent: Saturday, October 15, 2016 5:36 AM<br>
>>> Subject: Re: [x3d-public] add/deleteRoute in inlines<br>
>>><br>
>>><br>
>>><br>
>>>> On Oct 15, 2016 7:45 AM, "Joe D Williams" <<a href="mailto:joedwil@earthlink.net">joedwil@earthlink.net</a>><br>
>>>> wrote:<br>
>>>>>><br>
>>>>>><br>
>>>>>><br>
>>>>>> However, the standard SAI does not seem to have a function to<br>
>>>>>> get the<br>
>>>>>> execution context of an Inline scene, even for external SAI use<br>
>>>>>> ? Is<br>
>><br>
>> this<br>
>>>>>><br>
>>>>>> the case ?<br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>> SAIExecutionContext.SAINode.SAIField.SAIFieldValue;<br>
>>>>><br>
>>>>> This is the form I have seen where when you have a parent context<br>
>>>>> then<br>
>>>><br>
>>>><br>
>>>> you can get into child context by the DEF name.<br>
>>>><br>
>>>> This may be a little too concise for me to get.<br>
>>>><br>
>>>> Here is the situation:<br>
>>>><br>
>>>> Main.x3d:<br>
>>>><br>
>>>> ...<br>
>>>> <Inline DEF='animatedHat' url="'hat.x3d'" /><br>
>>>> ...<br>
>>>><br>
>>>> hat.x3d:<br>
>>>><br>
>>>> ...<br>
>>>><br>
>>>> <ROUTE fromNode='ts' ... /><br>
>>>><br>
>>>> ...<br>
>>>><br>
>>>> Pseudo code using SAI external to Main.x3d:<br>
>>>><br>
>>>> mainScene = getBrowser().currentScene<br>
>>>><br>
>>>> //mainScene.addRoute(someRoute) is available<br>
>>>><br>
>>>> inlineNode = mainScene.getNamedNode('animatedHat')<br>
>>>><br>
>>>> inlineScene = inlineNode.getInternalScene() // is something like<br>
>>>> this in<br>
>>>> the SAI ??<br>
>>>><br>
>>>> tempRoute = inlineScene.addRoute(fromNode...)<br>
>>>><br>
>>>> ....<br>
>>>><br>
>>>> inlineScene.removeRoute(tempRoute)<br>
>>>><br>
>>>><br>
>>>> Is something like getInternalScene() in the SAI standard ? I think<br>
>>>> maybe<br>
>>>> not.<br>
>>>><br>
>>>><br>
>>>><br>
>>>>><br>
>>>>> For external, then:<br>
>>>>><br>
>>>>> SAIBrowserRef.SAIExecutionContext.SAINode.SAIField.SAIFieldValue;<br>
>>>>> <a href="http://www.hypermultimedia.com/x3d/Quick/SAIABSDEFS.htm">http://www.hypermultimedia.com/x3d/Quick/SAIABSDEFS.htm</a><br>
>>>>><br>
>>>>> Joe<br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>> ----- Original Message ----- From: "Andreas Plesch" <<br>
>>>><br>
>>>><br>
>>>> <a href="mailto:andreasplesch@gmail.com">andreasplesch@gmail.com</a>><br>
>>>>><br>
>>>>><br>
>>>>> To: "X3D Graphics public mailing list" <<a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a>><br>
>>>>> Sent: Friday, October 14, 2016 1:58 PM<br>
>>>>> Subject: [x3d-public] add/deleteRoute in inlines<br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>>> Hello,<br>
>>>>>><br>
>>>>>> I am working on deleting and adding Routes via deleting and<br>
>>>>>> adding<br>
>><br>
>> Route<br>
>>>>>><br>
>>>>>> DOM elements, with cobweb:<br>
>>>>>><br>
>>>>>> <a href="https://andreasplesch.github.io/cobweb_dom/tests/fanOutRoute.xhtml">https://andreasplesch.github.io/cobweb_dom/tests/fanOutRoute.xhtml</a><br>
>>>>>><br>
>>>>>> It seems to work fine for Routes in the main scene/execution<br>
>>>>>> context.<br>
>>>>>><br>
>>>>>> Now, there may be an expectation to also be able to add/delete<br>
>>>>>> routes<br>
>>>>>> within inlines and their execution contexts, from outside the<br>
>>>>>> inline<br>
>>>><br>
>>>><br>
>>>> since<br>
>>>>>><br>
>>>>>><br>
>>>>>> DOM javascript code is by definition external.<br>
>>>>>><br>
>>>>>> For example, a common scenario may be to have a scene with a<br>
>>>>>> single<br>
>>>><br>
>>>><br>
>>>> Inline<br>
>>>>>><br>
>>>>>><br>
>>>>>> dom node as a way to include the x3d content while still keeping<br>
>>>>>> the<br>
>><br>
>> html<br>
>>>>>><br>
>>>>>> concise. A web page author then may still want to manipulate all<br>
>><br>
>> aspects<br>
>>>><br>
>>>><br>
>>>> of<br>
>>>>>><br>
>>>>>><br>
>>>>>> the x3d.<br>
>>>>>><br>
>>>>>> There is probably a way in cobweb to get the correct execution<br>
>>>>>> context<br>
>><br>
>> of<br>
>>>>>><br>
>>>>>> the Route node that user code wants to remove, or add, by<br>
>>>>>> looking for<br>
>><br>
>> the<br>
>>>>>><br>
>>>>>> closest ancestor scene element (since inline scenes are appended<br>
>>>>>> to<br>
>><br>
>> their<br>
>>>>>><br>
>>>>>> inline element). Using this execution context it would then be<br>
>>>>>> possible<br>
>>>><br>
>>>><br>
>>>> to<br>
>>>>>><br>
>>>>>><br>
>>>>>> use the SAI addRoute and deleteRoute functions.<br>
>>>>>><br>
>>>>>> However, the standard SAI does not seem to have a function to<br>
>>>>>> get the<br>
>>>>>> execution context of an Inline scene, even for external SAI use<br>
>>>>>> ? Is<br>
>><br>
>> this<br>
>>>>>><br>
>>>>>> the case ?<br>
>>>>>><br>
>>>>>> If this is the case, is the main reason that the expectation is<br>
>>>>>> that<br>
>><br>
>> any<br>
>>>>>><br>
>>>>>> access to a scene contained in an Inline would have take to<br>
>>>>>> place from<br>
>>>>>> scripts (I believe these would be the containing node of<br>
>>>>>> <a href="http://www.web3d.org/documents/specifications/">http://www.web3d.org/documents/specifications/</a><br>
>>>><br>
>>>><br>
>>>> 19775-2/V3.3/Part02/concepts.html#ContainingNode)<br>
>>>>>><br>
>>>>>><br>
>>>>>> within the inline ?<br>
>>>>>><br>
>>>>>> Just trying to understand all what is involved. Any hints or<br>
>>>>>> comments<br>
>>>>>> welcome,<br>
>>>>>><br>
>>>>>> Andreas<br>
>>>>>><br>
>>>>>><br>
>>>>>><br>
>>>>>><br>
>>>>>> --<br>
>>>>>> Andreas Plesch<br>
>>>>>> 39 Barbara Rd.<br>
>>>>>> Waltham, MA 02453<br>
>>>>>><br>
>>>>><br>
>>>>><br>
>>>>> ------------------------------------------------------------<br>
>>>><br>
>>>><br>
>>>> --------------------<br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>>> _______________________________________________<br>
>>>>>> x3d-public mailing list<br>
>>>>>> <a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a><br>
>>>>>> <a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
>>>>>><br>
>>>>><br>
>>>><br>
>>><br>
>><br>
></p>