Hi ,
we are not able to use the immediate mode of rendering of Canvas3D. We are
doing every thing according to the specification in 1.3 API documentation(I
think). Is it necessary for us to create our own implementation of canvas3d.
I'm attaching the code we have written to do the same.

Thanks in advance
Nitin


> import javax.media.j3d.*;
> import java.applet.Applet;
> import java.awt.BorderLayout;
> import java.awt.event.*;
> import java.awt.GraphicsConfiguration;
> import com.sun.j3d.utils.applet.MainFrame;
> import com.sun.j3d.utils.geometry.ColorCube;
> import com.sun.j3d.utils.universe.*;
> import com.sun.j3d.loaders.objectfile.*;
> import com.sun.j3d.loaders.*;
>
> import javax.vecmath.*;
> import java.awt.*;
>
> import com.sun.j3d.loaders.vrml97.VrmlLoader;
> import com.sun.j3d.loaders.vrml97.VrmlScene;
>
> public class HelloUniverse extends Applet
> {
>
>       public HelloUnivers()
>       {
>
>       }
>
>       public void init()
>     {
>           createVirtualUniverse();
>     }
>
>     private void createVirtualUniverse()
>     {
>         GraphicsConfigTemplate3D template = new
> GraphicsConfigTemplate3D();
>         GraphicsConfiguration config =
> GraphicsEnvironment.getLocalGraphicsEnvironment().
>
> getDefaultScreenDevice().getBestConfiguration(template);
>
        Canvas3D myCanvas3D = new Canvas3D(config);
>         setLayout(new BorderLayout());
>         add("Center", myCanvas3D);
>
>         VirtualUniverse myUniverse = new VirtualUniverse();
>         Locale myLocale = new Locale(myUniverse);
>
>         myCanvas3D.stopRenderer();
>

>         BranchGroup viewBranch = buildViewBranch(myCanvas3D);
>
>
>         myLocale.addBranchGraph(viewBranch);
>
>         GraphicsContext3D gc3D = myCanvas3D.getGraphicsContext3D();
>         gc3D.clear();
>         gc3D.draw(new ColorCube(0.5));
>         gc3D.flush(false);
>         myCanvas3D.swap();
>         myCanvas3D.startRenderer();
>     }
>
>     private BranchGroup buildViewBranch(Canvas3D c)
>     {
>         BranchGroup viewBranch = new BranchGroup();
>         Transform3D viewXfm = new Transform3D();
>         viewXfm.set(new Vector3f(0.0f,0.0f,5.0f));
>         TransformGroup viewXfmGroup = new TransformGroup(viewXfm);
>         ViewPlatform myViewPlatform = new ViewPlatform();
>         viewXfmGroup.addChild(myViewPlatform);
>         viewBranch.addChild(viewXfmGroup);
>         View myView = new View();
>         PhysicalBody mybody = new PhysicalBody();
>         PhysicalEnvironment myEnvironment = new PhysicalEnvironment();
>         myView.setPhysicalBody(mybody);
>         myView.setPhysicalEnvironment(myEnvironment);
>
>         myView.addCanvas3D(c);
>         myView.attachViewPlatform(myViewPlatform);
>         return viewBranch;
>     }
>
>     public static void main(String[] args)
>     {
>           new MainFrame(new HelloUniverse(), 256, 256);
>     }
> }

===========================================================================
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