POV-Ray : Newsgroups : povray.binaries.images : More materials based on proximity patterns : Re: More materials based on proximity patterns Server Time
13 May 2024 22:36:46 EDT (-0400)
  Re: More materials based on proximity patterns  
From: Le Forgeron
Date: 12 Oct 2017 00:42:15
Message: <59def2a7$1@news.povray.org>
Le 12/10/2017 à 03:41, Bald Eagle a écrit :
> I was thinking about this from entirely another angle:
> 
> Currently the object pattern can give us results based on inside vs outside of a
> 3D object.
> 
> Is there [no] ... could there be a way [in the future] to do something similar
> to this where the _surface_ of the object is a result?

Computing the shortest distance from a point to an object might not be
trivial, it might require a new function for each shape (in addition to
the inside test and the computation of intersections with a ray).

And I'm not sure transformations are compatible with such gradient
field. (especially shearing transform). Traditionally, the ray is
applied the inverse transform of the object, computation is done, and
result is applied the transform to get back in SDL space. But when
transformation is not conserving distance, it is a big problem for a
*surface* pattern.

Neither what to do for CSG difference & intersection.
(CSG union & merge are easy: min() )

> 
> If this could be implemented in a way that a pattern function could take
> advantage of that, then you could make an isosurface of any object, and then you
> could scale it nonlinearly - which AFAIK is not currently possible.
> 
> http://www.econym.demon.co.uk/isotut/substitute.htm
> 
> It would also instantly provide a method to convert an object into a mesh using
> one of the isosurface approximation methods.
> And loads of people would LOVE to have that at their fingertips.
> 
> With regard to that aspect, if a surface pattern is too long off in the future,
> is there a way to do a ray-object intersection "function" that returns the
> crossing number
> https://en.wikipedia.org/wiki/Point_in_polygon
> AND an array that has the coordinates of the crossing points?

Did you read http://paulbourke.net/geometry/polygonise/ ?



> 
> Because that would provide a powerful method to construct meshes, and do all
> sorts of other analyses and manipulations on objects.

Did you see some experimentations in hgpovray :

> http://wiki.povray.org/content/User:Le_Forgeron#Tesselation_.26_mesh_play

6 ways to get a mesh from a solid.

And many transformations:
> http://wiki.povray.org/content/User:Le_Forgeron#Getting_a_new_mesh_from_a_mesh



> 
> Just asking out of curiosity, since it seems these features aren't that
> different from what's available already or happens internally.
> 
> 
> 
>


Post a reply to this message

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