Re: Variables
Gavin Bell ([email protected])
Fri, 2 Jun 1995 17:05:07 -0700
On Jun 2, 2:54pm, Mark Waks wrote:
> >Using the extensibility method in the SPEC I think we could add
> >a method for describing new nodetypes. We would need some way
> >to represent variables.
>
> I wouldn't use the word "variables"; indeed, that confused me quite
> a bit when I first read this message. Actually, your example is
> showing (essentially) the notion of adding new *classes* to VRML,
> and *parameters* to those classes:
>
> >NEW IceCreamCone {
> > fields [SFFloat radius %rad, SFFloat height %hi]
> > TransformSeparator {
> > Sphere { radius %rad }
> > Translation { translation blahblahsomenumbers
> > rotation blahblahsomenumbers
> > }
> > cone { bottomradius %rad
> > height %hi
> > }
> > }
> > }
> >CUST IceCreamCone {radius 2 height 3}
>
> Not a bad idea; it's a rather simple, elegant way of coming up with
> parameterizable compound objects. (I don't like the "NEW" and "CUST"
> keywords much, but that's a detail.) I'd love to get an opinion from
> folks like Gavin and Kevin, who have presumably done a fair amount
> of node extension in Inventor, on what strengths and weaknesses they
> see in this idea.
The set of new things you'll come up with using techniques like this just
aren't interesting. They're toys.
Modelers will NOT be creating "IceCreamCone" nodes like this. They'll be
spitting out IndexedFaceSets (and NURBS and objects of revolution, if they're
added to VRML).
A RISC/CISC analogy can be made here. RISC architectures are created to make
it easy on the compiler writers. CISC architectures were created to make it
easier on assembly language programmers.
Lets make it easy to create VRML compilers (== modelers). I know we're at
the assembly language (== create .wrls using vi/emacs) stage, but lets design
for the future.