POV-Ray : Newsgroups : povray.binaries.images : WIP A kind greeble ? : WIP A kind greeble ? Server Time
5 Nov 2024 10:23:28 EST (-0500)
  WIP A kind greeble ?  
From: Bob Frew
Date: 18 Oct 2006 18:12:38
Message: <4536a6d6@news.povray.org>
I had previously had a go, at creating "content" that looked "meaningful" , 
without much joy.
Having seen the images from Zeger I thought YES !!! and WOW !!!. However I 
couldn't get the macro to work.
So with the new (to me) thought of using subdivided cells to create the 
"randomness" I have written a couple of macros.

The subdividing macro divides a given rectangle a number of times and sets 
up the vectors for each corner of each created rectangle at all levels of 
subdivision.
Another macro allows you to set up objects in the cells at the lowest level,
Object need to be able to fit in a box  { <-0.5, 0, -0.5>, <0.5, 1, 0.5> }

The output cells can be restricted to the shape of an arbitrary object that 
crosses the y=0 plane. So your end "greebled plate" does not need to 
rectangular.
A "coverage" percentage is also applied so you can fill only a proportion of 
cells if you wish.
A setup macro is called to handle the getting of the required object, 
scaling and texturing (so you can tailor all that to what you're trying to 
produce.

The attached dodeca~ and hexagon use the same array of objects for each 
face, but with differing parameters.
The "roadways" can be created for the cells at any level.

Because all the corners are known, you know the shape/size of each cell so 
you can apply your own rules to suit e.g. have multiples in a cell or decide 
not to bother if the shape is silly.

The piccies are only test pieces. (One day I'll build a nice interstellar 
thingy)
Thoughts welcome  ... Bob


Post a reply to this message


Attachments:
Download 'trial4a_k.jpg' (84 KB) Download 'hexagon2_same.jpg' (14 KB)

Preview of image 'trial4a_k.jpg'
trial4a_k.jpg

Preview of image 'hexagon2_same.jpg'
hexagon2_same.jpg


 

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