[Fluxus] commits

Glauber Alex Dias Prado smade4 at gmail.com
Thu Nov 20 11:15:28 PST 2008


"Dave Griffiths" <dave at pawfal.org> writes:

>> "Dave Griffiths" <dave at pawfal.org> writes:
>>
>> Nice stuff, i would like to ask a minor thing:
>>> Hi all,
>>>
>>> A few more commits, motivated by some stuff I'm working on:
>>>
>>> * It's possible to reparent objects in the scene hierachy. Previously
>>> (parent) only had effect on the state stack, and couldn't be changed
>>> after
>>> a primitive had been created. Now you can do something like this:
>>>
>>> ; make a cube
>>> (define a (with-state
>>>     (translate (vector -3 0 0))
>>>     (build-cube))
>>>
>>> ; make another cube
>>> (define b (with-state
>>>     (translate (vector 3 0 0))
>>>     (build-cube))
>>>
>>> ; make a torus
>>> (define c (with-state
>>>     (parent a) ; create the torus parented to cube a
>>>     (build-torus 1 2 10 10))
>>>
>>> (with-primitive c
>>>     (parent b)) ; switch to b
>>>
>>> Also, I need to add this to the docs I think, but there are some rules
>>> regarding the primitive id's (which are really scene node id's).
>>>
>>> 0 = null scenenode (returned to represent nothing found, etc)
>>> 1 = root scenenode
>> Wouldnt it be better to have a variable like root-scenenode instead of
>> just 1, i know it is very little but would make it more readable(no need
>> to consult docs to know what is what)?
>
> Yes, I agree. These are quite gory details which you probably don't need
> to know. It might be better to have:
>
> (define (detach-parent)
>    (parent 1))

I thought about this after sending the message :).

>
> There is a slightly more complicated function in fluxus (not exposed to
> scheme yet) to allow this to happen while maintaining the worldspace
> transform of the object

Intuitively(for me) this could be the default after unparenting, dunno
what you think.

> - I should probably wrap this up in some coherent
> manner too.
>
Please do.

> cheers,
>
> dave
cheers,

Glauber.



More information about the Fluxus mailing list