From: Dethe E. <de...@li...> - 2007-05-07 18:53:23
|
On 7-May-07, at 1:32 PM, Russ Kinter wrote: > If you have 64 bit linux, getNode simply doesn't work -not > implemented- yet. > What does your java console say if you try to run some of the examples > that use getNode? I'm on OS X and getNode works for at least the root node. I'll try compiling the Java examples and see, that's a good idea. Thanks. --Dethe > > tc > Russ Kinter > > -----Original Message----- > From: fre...@cr... [mailto:fre...@cr...] On > Behalf Of > Dethe Elza > Sent: Monday, May 07, 2007 2:17 PM > To: FreeWRL VRML viewer and Shared Virtual World viewer > Subject: [FreeWRL] EAI GETNODE problem > > Hi Sarah (and everyone), > > I'm writing test for my Python port of EAI, and trying to document > the wire protocol. I'm running into a problem with the GETNODE > call. When I use the value of SYSTEMROOTNODE (i.e. > "_Sarah_this_is_the_FreeWRL_System_Root_Node"), then I get back a > pointer that looks OK. But when I use a string that is the name of a > DEF'd node in my x3d file, I get a "4504 Bus error". > > For instance, I have a variation of 1.x3d from the sample files that > come with freewrl. Instead of creating the shape of the box > directly, it is created outside the <Scene> as a direct child of > <X3D> with DEF="the_box", then in the Scene I have a <Shape > USE="the_box"/>. This works find in freewrl and the box shows up > just like it did before, but when I try to get the node using EAI I > get the bus error. > > Since I'm learning EAI as I go along (and not all that proficient > with VRML/X3D yet), I'm probably just doing something wrong. I read > in the EAI API spec that I can only access nodes that are DEF'd in > the main file, but that is what I'm trying to do. Is there anything > obvious that I'm missing here? > > Below I've included the output from the verbose library, so you can > see what is happening inside of freewrl up until the bus error. > > Thanks! > > --Dethe > > ==================== OUTPUT ========================== > newASCIIString for :: > newASCIIString for :PLAIN: > newASCIIString for :BEGIN: > newASCIIString for :SERIF: > newASCIIString for :MIDDLE: > newASCIIString for :the_box: > newASCIIString for :WALK: > newASCIIString for :ANY: > newASCIIString for :EXAMINE: > newASCIIString for :WALK: > newASCIIString for :FLY: > newASCIIString for :ANY: > EAISERVER:create_EAI called > conEAIorCLASS - socket made > EAISERVER: bound to socket 9877 > EAISERVER: no client yet > EAISERVER: conEAIorCLASS returning TRUE > EAISERVER: no client yet > readEAIsocket--, retval 1 > read in from socket 12 bytes, max 4096 bfct 0 cmd <0 A the_box >> > handle_EAI-- Data is :0 A the_box > : > EAI_parse_commands:start of while loop, strlen 12 str :0 A the_box > : > command A > > ... 0 GETNODE the_box > EAI_GetNode - getting the_box > > ==================== END OUTPUT ====================== > > -- > > As for intelligent machines taking over, a machine does not have to > be intelligent to conquer the world; it merely has to be desireable. > We've already lost a war to a synthetic species--the automobile--that > has killed more than 15 million people; occupied all of our cities > except Venice, Italy; and continues to exact crushing taxes in > resources, wealth, and time from over half the planet--and everybody > wants one. --Grant Thompson > > > _______________________________________________ > FreeWRL mailing list > Fr...@cr... > > _______________________________________________ > FreeWRL mailing list > Fr...@cr... When all else fails, men turn to reason. --Abba Eban |