POV-Ray : Newsgroups : povray.programming : POV-Ray v.4 proposal : Re: POV-Ray v.4 proposal Server Time
28 Jul 2024 22:22:59 EDT (-0400)
  Re: POV-Ray v.4 proposal  
From: J  Grimbert
Date: 17 May 1999 09:22:57
Message: <37400A16.65028D8E@atos-group.com>
Mikael Carneholm wrote:
> 
> One thing I've been thinking of that could make some things easier (for
> beginners as well as for advanced users) is a new object type: a point
> object.
>

First of all, a point is a 0-dimension object...
I guess you would then ask for a line (straight)
and then some more complicated lines (bezier in a plane, total free in
3d space)
That would give some 1-dimension object.
And the fractal gurus will come and ask some 1.65-dimensions fractals
up to the dreaded true 2-dimension plane object... (not the pov plane)
And then a sponge primitive
 
> syntax is POINT{[POINT IDENTIFIER][POINT LOCATION]}
> 
> ..where the point identifier is used to name the object for future
> reference.

Your point looks like a vector.
#declare POINT_IDENTIFIER = POINT_LOCATION;

> 
> "Why?" some might say - well here's an example:
> 
> I made a demo scene for my smoke generation macro, consisting of a
> rotating cube with 8 smoke sources (one in each corner). This is how it
> could have been done (if there was such an object):
> 
> union{
>   RoundedCubeObject
>   point{point1,<1,1,1>}
>   point{point2,<1,1,-1>}
>   point{point3,<-1,1,-1>}
>   point{point4,<-1,1,1>}
>   point{point5,<1,-1,1>}
>   point{point6,<1,-1,-1>}
>   point{point7,<-1,-1,-1>}
>   point{point8,<-1,-1,1>}
>   rotate <clock*360,clock*360,clock*360> // affects the point objects as
> well
> }

Well, you did have a look at vrotate (Vector Functions)
#declare point1=<1,1,1>;
#declare point2=<1,1,-1>;

and so on...
 
> With a little OO thrown in, it would then be possible to do this:
> 
> #declare obj_pos=point1.location;
> #include "SmokeGen.inc"
> 
#declare obj_pos = vrotate (point1, <clock*360,clock*360,clock*360> );
#include ...


> 
> This way, you don't have to deal with math(which I believe keeps some
> users from using POV today).

Well, you actually do not have to deal with math, 
you have to read the manual :-) 
(and that's something hard! the manual is quiet big to remember
everything )

> 
> Instead, I had to make a vector array where the vectors are redeclared
> using a rotation identifier and also use vrotate() (which I don't mind
> using but beginners might have a hard time using). Quite messy.
> 
> Comments?

Why a vector array in your case ? 

I sincerely does not feel the need for an object that you cannot see...
and the vector is already present.


Post a reply to this message

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