Chris,
        Looks like you might have uncovered a bug in Java 3D. Is it possible
for you to have a test case send to [EMAIL PROTECTED] ?

thanks,
        Chien Yang
        Java 3D Team.


> X-Accept-Language: en
> MIME-Version: 1.0
> Content-Transfer-Encoding: 7bit
> Date: Mon, 30 Oct 2000 11:37:33 +0100
> From: Wyss Christian <[EMAIL PROTECTED]>
> Subject: Re: [JAVA3D] Reattaching a detached BG
> To: [EMAIL PROTECTED]
>
> Thanks for the quick response.
>
> Unfortunately it doesn't quiet solve the problem - simply detaching OR
attaching
> works fine.
> The problem appears when I try doing following sequence:
> - Attach the BG to a locale
> - Do whatever's to be done..
> - Detach the BG from the locale
> - Reattach the BG (same instance) to another locale
>
> In fact, my BG is a tiny guy who walks through several scenes.
> Scenes change, but the guy doesn't - so I told myself why create an instance
of
> it in each scene..?
>
> Chris
>
> Desiree Hilbring wrote:
>
> > Hi Chris,
> > I do not know, if this solves your problem,
> > I am detaching and attaching several light BranchGroups in my scene due to
> > user interaction. I have for each light direction one BranchGroup which I
> > am detaching and attaching.
> >
> >     DirectionalLight
> > northWest,northEast,south,southWest,southEast,west,east;
> >     DirectionalLight zenith;
> >     BranchGroup zenithBg,northWestBg,northEastBg,southBg,southWestBg;
> >     BranchGroup southEastBg,westBg,eastBg;
> >
> > I am instanciating them in the constructor:
> >
> > northWestBg = new BranchGroup();
> >         northWestBg.setCapability(BranchGroup.ALLOW_DETACH);
> >         northWest = new DirectionalLight(new Color3f(1,1,1),new
> > Vector3f(1,-1,1));
> >         northWest.setInfluencingBounds(mouseBounds);
> >         northWestBg.addChild(northWest);
> >
> >         northEastBg = new BranchGroup();
> >         northEastBg.setCapability(BranchGroup.ALLOW_DETACH);
> >         northEast = new DirectionalLight(new Color3f(1,1,1),new
> > Vector3f(-1,-1,1));
> >         northEast.setInfluencingBounds(mouseBounds);
> >         northEastBg.addChild(northEast);
> >
> >         eastBg = new BranchGroup();
> >         eastBg.setCapability(BranchGroup.ALLOW_DETACH);
> >         east = new DirectionalLight(new Color3f(1,1,1),new
> > Vector3f(-1,-1,0));
> >         east.setInfluencingBounds(mouseBounds);
> >         eastBg.addChild(east);
> >
> >         westBg = new BranchGroup();
> >         westBg.setCapability(BranchGroup.ALLOW_DETACH);
> >         west = new DirectionalLight(new Color3f(1,1,1),new
> > Vector3f(1,-1,0));
> >         west.setInfluencingBounds(mouseBounds);
> >         westBg.addChild(west);
> >
> >         southWestBg = new BranchGroup();
> >         southWestBg.setCapability(BranchGroup.ALLOW_DETACH);
> >         southWest = new DirectionalLight(new Color3f(1,1,1),new
> > Vector3f(1,-1,-1));
> >         southWest.setInfluencingBounds(mouseBounds);
> >         southWestBg.addChild(southWest);
> >
> >         southEastBg = new BranchGroup();
> >         southEastBg.setCapability(BranchGroup.ALLOW_DETACH);
> >         southEast = new DirectionalLight(new Color3f(1,1,1),new
> > Vector3f(-1,-1,-1));
> >         southEast.setInfluencingBounds(mouseBounds);
> >         southEastBg.addChild(southEast);
> >
> >         southBg = new BranchGroup();
> >         southBg.setCapability(BranchGroup.ALLOW_DETACH);
> >         south = new DirectionalLight(new Color3f(1,1,1),new
> > Vector3f(0,-1,-1));
> >         south.setInfluencingBounds(mouseBounds);
> >         southBg.addChild(south);
> >
> >         zenithBg = new BranchGroup();
> >         zenithBg.setCapability(BranchGroup.ALLOW_DETACH);
> >         zenith = new DirectionalLight(new Color3f(1,1,1),new
> > Vector3f(0,-1,0));
> >         zenith.setInfluencingBounds(mouseBounds);
> >         zenithBg.addChild(zenith);
> >         scene.addChild(northWestBg);
> >         sunset = Property3DSceneDialog.NorthWest;
> >
> > and in the following method, I am attaching and detaching to the scene:
> >
> >     public void setSunset(int type) {
> >         sunset = type;
> >         Enumeration childs = scene.getAllChildren();
> >         while (childs.hasMoreElements()) {
> >             Object oc = childs.nextElement();
> >             if (oc instanceof BranchGroup) {
> >                 BranchGroup bgl = (BranchGroup) oc;
> >                 bgl.detach();
> >                 switch(type) {
> >                 case Property3DSceneDialog.Zenith: {
> >                     scene.addChild(zenithBg);
> >                     break;
> >                 }
> >                 case Property3DSceneDialog.NorthWest: {
> >                     scene.addChild(northWestBg);
> >                     break;
> >                 }
> >                 case Property3DSceneDialog.NorthEast: {
> >                     scene.addChild(northEastBg);
> >                     break;
> >                 }
> >                 case Property3DSceneDialog.West: {
> >                     scene.addChild(westBg);
> >                     break;
> >                 }
> >                 case Property3DSceneDialog.East: {
> >                     scene.addChild(eastBg);
> >                     break;
> >                 }
> >                 case Property3DSceneDialog.SouthWest: {
> >                     scene.addChild(southWestBg);
> >                     break;
> >                 }
> >                 case Property3DSceneDialog.SouthEast: {
> >                     scene.addChild(southEastBg);
> >                     break;
> >                 }
> >                 case Property3DSceneDialog.South: {
> >                     scene.addChild(southBg);
> >                     break;
> >                 }
> >                 }
> >             }
> >         }
> >     }
> >
> > Hope, this helps, Desiree
> >
> > o------------------------------------------------------------------------o
> > | Desiree Hilbring      Institut fuer Photogrammetrie und Fernerkundung  |
> > |                       Universitaet Karlsruhe, Germany                  |
> > |                                                                        |
> > |                       email: [EMAIL PROTECTED]             |
> > |                       # 0721 6083676                                   |
> > o------------------------------------------------------------------------o
> >
> > On Mon, 30 Oct 2000, Wyss Christian wrote:
> >
> > > Hi all
> > > Is there anyone out there who could explain, how I have to do if I
> > > d'like to reattach a BranchGroup I took out of a Tree by detach() in
> > > another Tree without getting a "multiple parent exception" or something
> > > even worse ?
> > >
> > > Thanks,
> > > Chris
> > >
> > >
===========================================================================
> > > To unsubscribe, send email to [EMAIL PROTECTED] and include in the
body
> > > of the message "signoff JAVA3D-INTEREST".  For general help, send email to
> > > [EMAIL PROTECTED] and include in the body of the message "help".
> > >
> >
> > ===========================================================================
> > To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
> > of the message "signoff JAVA3D-INTEREST".  For general help, send email to
> > [EMAIL PROTECTED] and include in the body of the message "help".
>
> ===========================================================================
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
> of the message "signoff JAVA3D-INTEREST".  For general help, send email to
> [EMAIL PROTECTED] and include in the body of the message "help".

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to