POV-Ray : Newsgroups : povray.advanced-users : Enabling relative coordinate placement : Re: Enabling relative coordinate placement Server Time
3 Jul 2024 04:55:09 EDT (-0400)
  Re: Enabling relative coordinate placement  
From: Chris B
Date: 21 Sep 2009 07:36:23
Message: <4ab76537@news.povray.org>
"Kene" <nomail@nomail> wrote in message 
news:web.4ab710eeba1022f6772dd76f0@news.povray.org...
> "Chris B" <nom### [at] nomailcom> wrote:
>> "Kene" <nomail@nomail> wrote
>> > I am building a set of macros and hopefully functions that can assist 
>> > an
>> > architect in making a building using POVRay.
>> ...
>> > My hitch right now is that I cannot enable relative coordinate 
>> > placement.
>> >
>> > It is important to be able to create an object relative to the position 
>> > of
>> > another in architecture.
>>
>>
>> POV-Ray does have some features that make this sort of thing fairly
>> straight-forward once you're familiar with the syntax and constructs....
>>
>
> This is great! Exactly what I was looking for. It sounds like worth the 
> effort
> because I wanted to stay with the SDL as much as possible. I will 
> investigate
> this instead of creating a new program for now. I am also interested in 
> your
> method for floor plans.
>
> ... I think that design is so
> much more fun when you can type... Its just like
> having a conversation if you know what I mean.
>

Yes, I too get some sort of odd pleasure from being able to just describe 
something that the computer can draw.

I have been thinking about this problem of relative positioning for a long 
time and each time I come back to it the answer seems to get simpler and 
simpler. After posting last night I set about experimenting further and I 
came up with something that (at present) feels like the simplest possible 
approach. So much so that it's hard to imagine why it didn't seem obvious to 
me before. I've described it in my response to Edouard and provided a 
trivial but complete functioning example.

One important difference between this approach and last-nights posting is 
that it means that the datums are not necessarily bound to each and every 
component of the building. It would certainly be possible to create a datum 
for each component, but it would also be possible to deviate from that, 
where appropriate. For example, you could create the building fabric (walls, 
columns, doors and windows) relative to a single 'building' datum, then 
build out an auditorium on the third floor using a datum at the centre of 
the stage, whereas a kitchen could be constructed relative to the corner of 
the room, making it easier to align furniture with the walls.

I think this is probably very close to the way most people work anyway, 
defining a discrete object relative to the origin before orienting and 
moving it to its final position. The only behavioural change is therefore to 
use the name of the predefined transformation to do this, so that a sort of 
hierarchical transformation structure can be slotted into the scene file. 
This approach avoids introducing an extra macro layer that might potentially 
interfere with using objects generated using modellers, macros or utilities 
as you should still generally be able to take the complete object, wrap it 
in an object or a union statement and apply the appropriate transformation.

Regards,
Chris B.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.