Yes, I'm doing that. In fact my breakpoint in the constructor for
UnshadedRenderJ3D is getting called, as are the breakpoints for all the
constructors for the ShadowUnshaded*****
It's the breakpoint in makeAppearance that's never getting hit....
Donna L. Gresh, Ph.D.
IBM T.J. Watson Research Center
(914) 945-2472
http://www.research.ibm.com/people/g/donnagresh
gresh@xxxxxxxxxx
Tom Rink
<rink@xxxxxxxxxxxxx To: Donna L
Gresh/Watson/IBM@IBMUS
> cc:
visad-list@xxxxxxxxxxxxx
Sent by: Subject: Re: controlling
shading
owner-visad-list@ss
ec.wisc.edu
01/24/2003 04:31 PM
Are you sure you've included an instance of the custom
renderer in your Display, eg display.addReferences(
DataRenderer custom, DataReference ref) ?
Donna L Gresh wrote:
> I *think* that's what I'm doing; in my derived DataRenderer class I
> override the various makeShadow* with my own. I have a bunch (for lack of
> originality, I did the ones in the "barb" example). Then I'm not sure
where
> to put the makeAppearance thing; I tried putting it in one of them
> (ShadowUnshadedRealTupleType), and then in all the others referring back
to
> that one, but it is apparently not geting called; putting a breakpoint in
> my version of makeAppearance never gets hit, even though all my
> ShadowUnshaded* guys are getting created..... Who calls makeAppearance?
>
> Donna L. Gresh, Ph.D.
> IBM T.J. Watson Research Center
> (914) 945-2472
> http://www.research.ibm.com/people/g/donnagresh
> gresh@xxxxxxxxxx
>
>
> Tom Rink
> <rink@xxxxxxxxx.e To: Donna L
Gresh/Watson/IBM@IBMUS
> du> cc: Bill Hibbard
<hibbard@xxxxxxxxxxxxxxxxx>, visad-list@xxxxxxxxxxxxx
> Sent by: Subject: Re: controlling
shading
> rink@xxxxxxxxxxxx
> u
>
>
> 01/24/2003 03:41
> PM
>
>
> Hi Donna
>
> In short, your custom DataRenderer needs to override the
> makeShadow* methods defined in DataRenderer->RendererJ3D.
> The new makeShadow* methods in the custom renderer return
> the the new ShadowType extensions you've created. Of course,
> how, and which, ShadowTypes you extend depends on what
> you're trying to do. I'll let Bill elaborate on this further...
>
> TomR
>
> Donna L Gresh wrote:
>
> > Well, I decided to make a stab at "turning off" the shading on my flat
> > surfaces, following the description below, information in the
> datarenderer
> > tutorial, and the example of the BarbRenderer. I began by creating the
> > "skeleton" for my new DataRenderer, which at the moment doesn't do
> anything
> > other than the defaults (and it still makes a picture which is a good
> sign
> > :-)
> >
> > However I don't quite understand what I need to do to override the
> > makeAppearance method. I found the makeAppearance method in
> ShadowTypeJ3D,
> > which and it looks like I should just be able to do a
> > "material.setLightingEnable(false)" all the time to turn shading off,
but
> > I'm not clear on where to put this method..... there are a bunch of
these
> > Shadow* classes, and I'm really not clear on which one does what; e.g.
> I've
> > got
> > ShadowUnshadedRealTupleTypeJ3D, ShadowUnshadedRealTypeJ3D,
> > ShadowUnshadedFunctionTypeJ3D.....
> >
> > You're right, this isn't a day at the beach, but since all I really
want
> to
> > do is change one small aspect of the rendering, it seems I ought be be
> able
> > to just create the skeleton and change "one small thing". But I can't
> > figure out quite what that is....
> >
> > Thanks in advance for any help.
> >
> > Donna L. Gresh, Ph.D.
> > IBM T.J. Watson Research Center
> > (914) 945-2472
> > http://www.research.ibm.com/people/g/donnagresh
> > gresh@xxxxxxxxxx
> >
> >
> > Bill Hibbard
> > <hibbard@facstaff To: Donna L
> Gresh/Watson/IBM@IBMUS
> > .wisc.edu> cc:
> visad-list@xxxxxxxxxxxxx
> > Sent by: Subject: Re:
controlling
> shading
> > billh@xxxxxxxxx.e
> > du
> >
> >
> > 12/19/2002 12:46
> > PM
> >
> >
> > Hi Donna,
> >
> > > I am using java3D to render a flat surface (for color interpolation
> > > reasons) and would like to turn off shading, since it sometimes
relects
> > > light somewhat strangely. I saw references in the mailing list
archive
> to
> > > gouraud and flat shading, but I could not figure out how one can set
> > these.
> > > Thanks in advance---
> >
> > Texture mapping uses flat shading, so you can get it
> > with GraphicsModeControl.setTextureEnable(true). This
> > does not work for IrregularSet domains, and will give
> > you "blocky" pixels.
> >
> > You can explicitly control shading by creating a custom
> > DataRenderer (see tutorial - no day at the beach) that
> > uses ShadowTypes that override the makeAppearance()
> > method of ShadowTypeJ3D. Shading is controlled in the
> > Material used in the Appearence.
> >
> > Writing a custom DataRenderer will take you out of the
> > realm of a casual user.
> >
> > Cheers,
> > Bill