That works.... No more problems... (that's a joke;)
Bob Gray
-----Original Message-----
From: CAZOULAT Renaud CNET/DIH/REN
[mailto:[EMAIL PROTECTED]]
Sent: Monday, September 13, 1999 1:37 PM
To: [EMAIL PROTECTED]
Subject: Re: [JAVA3D] Changing Sphere Color
add GENERATE_NORMALS to ENABLE_APPEARANCE_MODIFY
so you should write:
super(1.0f, Sphere.ENABLE_APPEARANCE_MODIFY | Sphere.GENERATE_NORMALS ,
null);
cheers
rono
> -----Message d'origine-----
> De: Bob Gray [mailto:[EMAIL PROTECTED]]
> Date: lundi 13 septembre 1999 19:10
> À: [EMAIL PROTECTED]
> Objet: Re: [JAVA3D] Changing Sphere Color
>
>
> This sounded reasonable, so I changed MySphere (which extends Sphere)
> constructor
> from
>
> super(1.0f);
>
> to
>
> super(1.0f, Sphere.ENABLE_APPEARANCE_MODIFY, null);
>
> But I now get
>
> "Cannot do lighting without specifying normals on geometry object"
>
> (And, yes, I do a setAppearance later, after MySphere is created but
> before I compile the scene and make it active.)
>
> *Now* what do I do to fix *this* problem? (All I want to do
> is change the
> Sphere appearance (color)!
>
> Bob Gray
>
> -----Original Message-----
> From: CAZOULAT Renaud CNET/DIH/REN
> [mailto:[EMAIL PROTECTED]]
> Sent: Monday, September 13, 1999 12:21 PM
> To: [EMAIL PROTECTED]
> Subject: Re: [JAVA3D] Changing Sphere Color
>
>
> Hi,
>
> > Why is nothing simple???
> Ho Ho, nothing is simple in 3D even with java ;-))
>
> The problem you have IS simple, but you do not look at the
> right object.
> you must *not* set the capability bits to the sphere itself but rather
> at the shape3D it contains (which in fact is kind of child
> (0) of child(0)
> of the sphere group object : a sphere extends a primitive
> which extends a
> group, ouf!!). Hopefully, there is a constructor which enables you
> to specify that you want to modify (i.e. both read and write)
> later your
> sphere appearance, so the flags ALLOW_APPEARANCE_READ|WRITE are set
> automatically to the internal shape3d of the sphere at
> initialization time.
> This flag is ENABLE_APPEARANCE_MODIFY (defined in class Primitive).
> So you should build your sphere with:
> new Sphere (radius, Sphere.ENABLE_APPEARANCE_MODIFY, null);
>
> and it should work (I hope ;-))
>
> sincerly
> renaud
>
>
> > I define MySphere as an extension of Sphere.
> > I add it to my scene graph.
> >
> > MySphere theSphere = new MySphere();
> > theSphere.setAppearance(createAppearanceProton());
> > theSphere.setCapability(Shape3D.ALLOW_APPEARANCE_READ);
> > theSphere.setCapability(Shape3D.ALLOW_APPEARANCE_WRITE);
> > objPSize.addChild(theSphere);
> >
> > Note the ALLOW_APPEARANCE_READ capability....
> >
> > After the scene is compiled and active, I want to change
> the sphere's
> > color. So I get the appearance of the sphere by
> >
> > Appearance PA = theApp.theSphere.getAppearance();
> > Material theMaterial = PA.getMaterial();
> > theMaterial.setDiffuseColor(red, green, blue);
> >
> > But this fails with a
> > "Shape3D: no capability to get appearance"
> > exception.
> >
> > So how do you set the capability to read (and write) the
> > appearance of a Sphere object? Or is there some other
> > problem which is preventing me from doing this?
> >
> > Bob Gray
> >
> > ==============================================================
> > =============
> > 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".
===========================================================================
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".