

No idea what to actually call it, but I had the idea to expand the Triple Torus
https://en.wikipedia.org/wiki/Genus_g_surface#Genus_3
into an infinite plane of smoothly blobbed tori.
That would tie in with the hexagonal tilings we've played with in the past, as
they'd have the same centers, and then I guess there would have to be some sort
of mod() operator to extend the function out to infinity.
[Can such a function be modified with a warp to make it wrap around another
torus or a cylinder...?]
That got me playing with some simple grid functions I found on ShaderToy, and we
really don't have any native grid pigment patterns in POVRay, which is odd.
I have something worked out to complement jr's recent reworking of Friedrich
Lohmueller's gridded scenelayout stuff, but it's in layered texture
{pigment{function{}}} form.
Seems like it works on all axes, with square and/or rectangular layout.
Maybe I should try skew just to see what, if anything breaks.
Maybe next will be triangular, hexagonal, ...
Post a reply to this message




Le 28/02/2021 à 14:01, Bald Eagle a écrit :
> we
> really don't have any native grid pigment patterns in POVRay, which is odd.
There is the pavement pattern, or did I misunderstand the request ?
pigment { pavement number_of_sides 4 number_of_tiles 1 pattern 1
...
}
plane { y, 0 texture { pavement number_of_sides 6 number_of_tiles 4
pattern 2 texture_map{[0.5 T_Stone19]
[1 T_Stone20]
} scale 1/12 rotate y*30 } }
Post a reply to this message




Le_Forgeron <jgr### [at] freefr> wrote:
> Le 28/02/2021 à 14:01, Bald Eagle a écrit :
> > we
> > really don't have any native grid pigment patterns in POVRay, which is odd.
>
> There is the pavement pattern, or did I misunderstand the request ?
Nope  you just caught me sleeping.
"gradient" is a simple pattern, and I would have expected an earlier
implementation of a simple grid
The pavement patterns that you coded are  complex and bewildering in their
algorithmic intricacy. I just hadn't made the connection between the
ultracomplex pavement tilings and a simple set of perpendicular lines.
Thanks. :)
With regard to the torus shape, I'm maybe halfway to simply getting alternating
centerpoints for the tori.
As Mike Williams has very helpfully provided:
"It's possible to use a single isosurface to produce multiple copies of a shape
by using the mod operator in a substitution.
Using mod(x,2) will cause the shape to be repeated in the x direction every 2
units. If your original isosurface created a shape centered at the origin, then
there's a problem with the way that it chooses which bits to repeat. The left
half of the object gets repeated in one direction and the right half of the
object gets repeated in the other direction. To fix this, we'd like to
substitute mod(x,2)+1 where x is negative and mod(x,2)1 where x is positive. To
fix both directions at once, for a symmetrical object, we can use abs(x) like
this mod(abs(x),2)1.
To change the length of the repeat unit we can do this mod(abs(x),Step)Step/2"
But what I (think I) need is one column at one step, and the next column at
Step+Step/2, then Step, Step+Step/2, etc....
Post a reply to this message

