[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [www-vrml] Re: [Vrspace-dev] Cortona createVrmlFromURL bug test code



On Fri, 2005-03-25 at 19:41 -0500, Rob Meyers wrote:
> > >
> > > I posted the code at http://www.vrspace.org/downloads/CortonaTest.zip  .
> >
> >404.
> 
>     Try again, was called CortonaTest.ZIP on server, oops.

Got it.

> > >    Incidentally, I did notice another bug, but in Contact.  It seems
> > > that Contact doesn't always call the callback function after processing
> > > a removeChildren event.  On the other hand, Cortona seems to do this
> > > correctly.
> >
> >Absent the code, let me see if I understand this...
> >
> >So the callback is supposed to happen once the resource has been loaded;
> >but you're calling createVrmlFromURL frequently enough that it hasn't
> >finished loading one resource before you request another. And in this
> >case Cortona effectively interrupts loading of the previously requested
> >resource; the field value of the destination node (effectively) never
> >changes; and so you never get your callback.
> 
>       Negative, the object is loaded into the scene, but there is no callback.
> You make twenty calls, you get twenty objects, but only about 10 callbacks...

Aha...

> >I don't have a copy of the Marrin EAI spec handy; but here's what the
> >VRML97 spec says about Browser.createVrmlFromURL (4.12.10.10):
> >
> >         The createVrmlFromURL() instructs the browser to load a VRML
> >         scene description from the given URL or URLs. The VRML file
> >         referred to shall be self-contained (i.e., USE statements inside
> >         the string may refer only to nodes DEF'ed in the string, and
> >         non-built-in node types used by the string shall be prototyped
> >         using EXTERNPROTO or PROTO statements inside the string). After
> >         the scene is loaded, event is sent to the passed node returning
> >         the root nodes of the corresponding VRML scene. The event
> >         parameter contains a string naming an MFNode eventIn on the
> >         passed node.
> >
> >If the callback is supposed to happen "after the scene is loaded" and
> >the scene is never loaded, presumably the callback would never happen.
> >So Cortona's behavior strikes me as reasonable.
> 
>       See above.

So the node is emitting fewer children_changed events than it receives
addChildren events; is that accurate?

***

I just went hunting in the spec for some statement about when
children_changed should be fired in response to addChildren or
removeChildren. While perhaps it should be intuitively obvious that
children_changed should be fired in response to changes made by
addChildren or removeChildren, I haven't found any language in the spec
to lend support to that conclusion. Hopefully someone can point out
something I've missed.

-- 
Braden McDaniel                           e-mail: <braden@endoframe.com>
<http://endoframe.com>                    Jabber: <braden@jabber.org>

-------------------------------------------------------------------------
for list subscription/unsubscription,
go to http://www.web3d.org/cgi-bin/public_list_signup/lwgate/listsavail.html