[X3D-Public] For mutiple ROUTE fan-ins, how can we identify the sending node?

Joe D Williams joedwil at earthlink.net
Mon Aug 23 12:40:30 PDT 2010




> I've done several systems like this, using different browsers. I've
> found Contact the 'friendliest' so far, but I've had to do the same
> as you.
> It's frustrating. Apparently, adding a node to a scene does not add
> its
> DEF name to the namespace by design (the Spec). I can't imagine
> why. If name collision were to occur, an error would be returned,
> you'd think. Anyway Contact will at least bend if you addNode 
> (top-level),
> but not if you add as a child (which I'm sure you're doing).

So Conact will let you add a root node without the need to reload all 
the root nodes?

By the spec, I think it says somewhere something like:

Internal Browser services

  The main containing scene, each proto instance,
  and each inline instance is a distinct and independent
  execution context in the current scene graph.

So, the main containing scene only has access to names of root nodes.
Should get the context of the root node in question and then add the
children notes and routes.

So, the top context does not know the name of nodes that are children
of a root node. However, once you have access to the context
represented by a root node, then you should get access to child nodes
by def name oriterating. If not, then you gotta do the rtrick in
Ajax3D of just reload all root nodes.

also, Run-time name scope

Prototypes establish a name scope and therefore nodes inside prototype
instances are hidden from the parent name scope.

The IMPORT feature allows nodes defined within files referenced from
Inline nodes to be incorporated into the run-time name scope of the
containing scene graph.
VRML didn't have this.

http://www.web3d.org/x3d/specifications/ISO-IEC-19775-1.2-X3D-AbstractSpecification/index.html


http://www.web3d.org/x3d/specifications/ISO-IEC-19775-1.2-X3D-AbstractSpecification/Part01/concepts.html#Runtimenamescope


so if you add the nodes and routes to the proper name scope then named 
nodes should work.

Best Regards,
Joe

so, i think most cases should work with:
     <IndexedTriangleSet solid="true">
           <index>0 1 2</index>
           <point>0 0 0, 1 0 0, 0 1 0</point>
           <color> 0 0 1, 1 0 0, 0 1 0</color>
      </IndexedTriangleSet>

>
> I hope x3dom does not have this restriction, and I'd like to see all
> actively-developed browsers adopt a more liberal policy.
>
> I too hope someone can offer a better solution, even if it means
> using a
> different player.
>
> Dave A.
>
> On 8/21/2010 5:54 AM, Silvia Maria Batraneanu wrote:
>> Hello everybody,
>>
>>      I built a pretty complex scene which is used to monitor in
>> real-time the status of a big network.  The majority of the nodes
>> are
>> prototypes and are generated dynamically using the Java SAI. All of
>> them are named and have their attributes changed at a certain
>> moment
>> in time.  I need to perform identical actions such as current
>> trafic
>> information and plot retrieval and often the most important
>> information I need to pass via ROUTEs is the name of the sending
>> node
>> itself.
>>    The only way I could do this is to use inside my prototypes an
>> additional MFString parameter in which I store the node name and a
>> very simple script that refreshes the value of this string and
>> hence
>> creates an event which allows me to route this value to the target
>> node.
>>    I find my way of doing it cumbersome but I have no other idea.
>> Am I
>> missing something , is there a simple way of doing this? Did
>> anybody
>> else bump into this?
>>
>> Any help is greatly appreciated:)
>>
>> Cheers,
>> Silvia
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> X3D-Public mailing list
>> X3D-Public at web3d.org
>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>
>


--------------------------------------------------------------------------------


> _______________________________________________
> X3D-Public mailing list
> X3D-Public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>




More information about the X3D-Public mailing list