[x3d-public] inline access from dom

Andreas Plesch andreasplesch at gmail.com
Wed Oct 5 10:33:10 PDT 2016


This is an update to efforts to expose inline content to dom manipulation
with cobweb.

https://andreasplesch.github.io/cobweb_dom/tests/inlinev2.xhtml

I have updated and refactored the bridge code to automatically append
inline doms to the main dom not just for the initial scene inlines but also
for newly added inline nodes. [For the interested, the challenge there is
to deal with the async nature of loading.]

So the deer demo now let's you add new inlines. You can check in the
Inspector that the new inlines have their scenes appended as children. It
should be possible to directly manipulate the inline content in the
Inspector and see effect on the scene. There is also a button to add USE
inlines ('linked') and one which manipulates the referenced DEF inline to
demonstrate the differences to the independant inlines.

It takes a while to add a new inline. This is due to loading and parsing, I
believe.

-Andreas


On Sat, Oct 1, 2016 at 12:12 AM, Andreas Plesch <andreasplesch at gmail.com>
wrote:

> I am working on adding DOM access to inline scenes for my Cobweb DOM
> bridge:
>
> https://andreasplesch.github.io/cobweb_dom/tests/inline_in_inline.xhtml
>
> The idea is to add the external inline scene DOMs to the main scene DOM as
> children of the Inline elements. Once added, the mutation observer picks up
> modifications of these children and does not need to do anything other than
> it already does for the main scene.
>
> It works well although I do not know how web browsers deal with large
> combined DOMs. Also, a small addition to Cobweb.js is currently needed.
>
> One effect is that one can use CSS selectors with querySelector to drill
> down to specific elements in inline scenes, even through hierarchies of
> inlined inlines. See example. This way the DEF names can be used even if
> they are identical across scenes. X3D semantics and functioning is not
> affected.
>
> X3dom uses a different approach of prefixes to id/DEF attributes to enable
> access to elements in inlines. Not sure if x3dom could use instead or in
> addition Selectors ? This would require adding the Inline DOMs to the main
> DOM but perhaps this is already almost done ?
>
> So I am considering also adding the same option of a namespacename prefix
> to element IDs but the effort would be really for compatibility. Thinking
> about it, while possible probably not a priority unless there is a
> compelling use case.
>
> X3D has EXPORT/IMPORT to deal with accessing nodes in inlines. I think the
> SAI equivalent is roughly that all nodes are EXPORTed by default and that
> in addition to a DEF name it becomes possible to address a node by its path
> in the scene hierarchy. Perhaps something to consider for the standard: X3D
> selectors.
>
> Andreas
>



-- 
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/20161005/f8555461/attachment.html>


More information about the x3d-public mailing list