POV-Ray : Newsgroups : povray.general : Announce: IsoCSG include file 0.2.1 : Re: Announce: IsoCSG include file 0.2.1 Server Time
29 Jul 2024 08:23:26 EDT (-0400)
  Re: Announce: IsoCSG include file 0.2.1  
From:
Date: 13 Mar 2002 09:14:22
Message: <bemu8u8rn9l1oif9knjjlvun120e62aihc@4ax.com>
On Wed, 13 Mar 2002 14:36:39 +0100, Christoph Hormann <chr### [at] gmxde>
wrote:

> I fixed a few problems since i posted the first version in p.b.s-f.  Also
> wrote some documentation and an add-on for the Povray 3.5 insert menu.
> http://www.tu-bs.de/~y0013390/pov/ic/index.html

Can I have feature request ?
I think it could be interesting to somehow add automatic calculation of
bounding/container box. I mean making pairs:
IC_Box (V1, V2) and IC_BBox (V1, V2)
IC_Sphere(Center,R) and IC_BSphere(Center,R)
IC_Cone(V1,R1,V2,R2) and IC_BCone(V1,R1,V2,R2)
and so on.
All macros with B letter can internally call those without B but additionally
also create real object. For example IC_BBox(V1,V2) can looks like

  #macro IC_BBox(V1,V2)
    IC_Box(V1,V2) , box{V1,V2}
  #end

Note this important comma as part of RValue. Now CSG operations with bounding
consideration can look like:

#macro IC_BDifference2( F1 , B1, F2 , B2 )
  IC_Difference2( F1 , F2 ) , difference{ B1 B2 }
#end

Also additional transformation macros should be added such IC_BScale etc.
And finnally you can split that result into function and container:

#macro IC_Extents( F , B , Min , Max )
  #declare Min = min_extent( B );
  #declare Max = max_extent( B );
  function{ F(x,y,z) }
#end

Having corners of container somebody can easly increase/decrease it with some
margin to consider deformations and apply it to the isosurface.

Was this proposition understable ?

ABX


Post a reply to this message

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