Hi Jie - compiled your code but get the following exceptions when trying to run it :
WARNING: Canvas3D constructed with a null GraphicsConfiguration.
Exception: com.sun.j3d.loaders.vrml97.impl.ParseException: Unknown node type: Separator
Last token was "Separator" at line 3
com.sun.j3d.loaders.vrml97.impl.ParseException: Unknown node type: Separator
at com.sun.j3d.loaders.vrml97.impl.Parser.NodeBody(Parser.java:571)
at com.sun.j3d.loaders.vrml97.impl.Parser.Node(Parser.java:510)
at com.sun.j3d.loaders.vrml97.impl.Parser.NodeStatement(Parser.java:220)
at com.sun.j3d.loaders.vrml97.impl.Parser.Statement(Parser.java:198)
at com.sun.j3d.loaders.vrml97.impl.Parser.Scene(Parser.java:187)
at com.sun.j3d.loaders.vrml97.impl.Loader.load(Loader.java:407)
at com.sun.j3d.loaders.vrml97.impl.Loader.load(Loader.java:355)
at com.sun.j3d.loaders.vrml97.impl.Loader.load(Loader.java:293)
at com.sun.j3d.loaders.vrml97.VrmlLoader.doLoad(VrmlLoader.java:112)
at com.sun.j3d.loaders.vrml97.VrmlLoader.load(VrmlLoader.java:99)
at vrmlLoad.<init>(Vrml2.java:95)
at Vrml2.createSceneGraph(Vrml2.java:46)
at Vrml2.<init>(Vrml2.java:69)
at Vrml2.main(Vrml2.java:76)
Exception loading URL: vrml.InvalidVRMLSyntaxException
vrml.InvalidVRMLSyntaxException
at com.sun.j3d.loaders.vrml97.impl.Loader.load(Loader.java:413)
at com.sun.j3d.loaders.vrml97.impl.Loader.load(Loader.java:355)
at com.sun.j3d.loaders.vrml97.impl.Loader.load(Loader.java:293)
at com.sun.j3d.loaders.vrml97.VrmlLoader.doLoad(VrmlLoader.java:112)
at com.sun.j3d.loaders.vrml97.VrmlLoader.load(VrmlLoader.java:99)
at vrmlLoad.<init>(Vrml2.java:95)
at Vrml2.createSceneGraph(Vrml2.java:46)
at Vrml2.<init>(Vrml2.java:69)
at Vrml2.main(Vrml2.java:76)
com.sun.j3d.loaders.ParsingErrorException
Would be grateful for any advice as to how to sort this
thanks, Matt
On Tue, 15 Jun 1999 11:14:51 +0800, Jie Zhang <[EMAIL PROTECTED]> wrote:
>Here are step getting vrml loader.
>
>1. Getting vrml97.jar from
> www.vrml.org/workinggoups/vrml-java3d/
> you can get a zip file(vrml97.zip) ,which can be changed to jar file.
>2. if your jdk1.2 is in c:\jdk1.2
> then you can arrange vrml97.jar to c:\jdk1.2\lib
> and write a line in autoexec.bat file:
> SET CLASSPATH=%CLASSPATH%;C:\JDK1.2\LIB\VRML97.jar
> restart your computer , then you can use it.
>
>Here is a sample file which use vrml97.jar( two file, one is used to load vrml
>, one is a main file.)
>----------------------Vrml2.java-----------
>//Vrml2.java
>
>import java.applet.Applet;
>import java.awt.BorderLayout;
>import com.sun.j3d.utils.applet.MainFrame;
>import com.sun.j3d.utils.universe.*;
>import javax.media.j3d.*;
>import javax.vecmath.*;
>import com.sun.j3d.loaders.Scene;
>import com.sun.j3d.loaders.objectfile.ObjectFile;
>
>public class Vrml2 extends Applet {
> public BranchGroup createSceneGraph() {
> BranchGroup objRoot = new BranchGroup();
> TransformGroup objScale = new TransformGroup();
> Transform3D t3d = new Transform3D();
> t3d.setScale(0.3);
> objScale.setTransform(t3d);
> objRoot.addChild(objScale);
>
> BoundingSphere bounds =
> new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
> Color3f bgColor = new Color3f(0.05f, 0.05f, 0.2f);
> Background bg = new Background(bgColor);
> bg.setApplicationBounds(bounds);
> objRoot.addChild(bg);
>
>
> Color3f light1Color = new Color3f(1.0f, 1.0f, 0.9f);
> Vector3f light1Direction = new Vector3f(4.0f, -7.0f, -12.0f);
>
>
>
> DirectionalLight light1
> = new DirectionalLight(light1Color, light1Direction);
> light1.setInfluencingBounds(bounds);
> objRoot.addChild(light1);
>
> TransformGroup objTrans = new TransformGroup();
> objTrans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
> objScale.addChild(objTrans);
>
> BranchGroup b1 = new vrmlLoad("7.wrl");
> objTrans.addChild(b1);
>
> Transform3D yAxis = new Transform3D();
> Alpha rotationAlpha = new Alpha(-1, Alpha.INCREASING_ENABLE,
> 0, 0,
> 4000, 0, 0,
> 0, 0, 0);
> RotationInterpolator rotator =
> new RotationInterpolator(rotationAlpha, objTrans, yAxis,
> 0.0f, (float) Math.PI*2.0f);
>
> rotator.setSchedulingBounds(bounds);
> objTrans.addChild(rotator);
>
> objRoot.compile();
> return objRoot;
> }
>
> public Vrml2(String args[]) {
> setLayout(new BorderLayout());
> Canvas3D c = new Canvas3D(null);
> add("Center", c);
> BranchGroup scene = createSceneGraph();
> SimpleUniverse u = new SimpleUniverse(c);
> u.getViewingPlatform().setNominalViewingTransform();
> u.addBranchGraph(scene);
> }
>
> public static void main(String[] args) {
> new MainFrame(new Vrml2(args), 400,400);
> }
>}
>//end of Vrml2.java
>---------------------vrmlLoad.java--------
>
>//vrmlLoad.java
>
>import javax.media.j3d.*;
>import java.io.*;
>import com.sun.j3d.loaders.vrml97.VrmlLoader;
>import com.sun.j3d.loaders.Scene;
>
>public class vrmlLoad extends BranchGroup{
>
> public vrmlLoad(String filename) {
> BranchGroup obj = new BranchGroup( );
>
> VrmlLoader loader = new VrmlLoader();
> Scene s = null;
> try {
> s = loader.load(filename);
> } catch (Exception e) {
> System.err.println(e);
> System.exit(1);
> }
>
> obj.addChild(s.getSceneGroup( ) );
> this.addChild(obj);
> }
>}
>//end of vrmlLoad.java
>---------------------end of two files------
>
>Yi Zhuang wrote:
>
>> I heard there are serveral VRML Loader. Anyone tell me which is better and
>> where to download.
>> Thanks
>> Andy
>
>From java3d-interest-owner Mon Jun 14 21:25:40 1999
>Received: from engmail4.Eng.Sun.COM (engmail4 [129.144.134.6])
> by capra.eng.sun.com (8.8.8+Sun/8.8.8) with ESMTP id VAA00011
> for <[EMAIL PROTECTED]>; Mon, 14 Jun 1999 21:25:39 -0700
>(PDT)
>Received: from venus.Sun.COM (venus.EBay.Sun.COM [129.150.69.5])
> by engmail4.Eng.Sun.COM (8.9.1b+Sun/8.9.1/ENSMAIL,v1.6) with ESMTP id VAA11274
> for <[EMAIL PROTECTED]>; Mon, 14 Jun 1999 21:25:39 -0700
>(PDT)
>Received: from mail.java.sun.com (mail.javasoft.com [204.160.241.28])
> by venus.Sun.COM (8.9.3+Sun/8.9.3) with ESMTP id VAA28331;
> Mon, 14 Jun 1999 21:25:38 -0700 (PDT)
>Received: from mail (mail.java.sun.com [204.160.241.28])
> by mail.java.sun.com (8.9.0.Beta6+Sun/8.9.0) with ESMTP id VAA26202;
> Mon, 14 Jun 1999 21:16:12 -0700 (PDT)
>Received: from JAVA.SUN.COM by JAVA.SUN.COM (LISTSERV-TCP/IP release 1.8d) with
> spool id 1247616 for [EMAIL PROTECTED]; Mon, 14 Jun 1999
> 21:14:36 -0700
>Received: from menin.isd.net (menin.InnovSoftD.com [208.153.200.24]) by
> mail.java.sun.com (8.9.0.Beta6+Sun/8.9.0) with ESMTP id UAA23014 for
> <[EMAIL PROTECTED]>; Mon, 14 Jun 1999 20:46:39 -0700 (PDT)
>Received: from mjensen (isd-du-208-238-141-233.isd.net [208.238.141.233]) by
> menin.isd.net (8.8.5/8.8.5) with SMTP id WAA07391 for
> <[EMAIL PROTECTED]>; Mon, 14 Jun 1999 22:52:39 -0500
>MIME-Version: 1.0
>Content-Type: multipart/alternative;
> boundary="----=_NextPart_000_0021_01BEB6B8.B7877C60"
>X-Priority: 3
>X-MSMail-Priority: Normal
>X-Mailer: Microsoft Outlook Express 5.00.2314.1300
>X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300
>Message-ID: <002401beb6e2$a4b768a0$e98deed0@mjensen>
>
===========================================================================
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".