News: Check out the originating "3d Mandelbulb" thread here
 Welcome, Guest. Please login or register., Guest. Please login or register. March 11, 2014, 08:43:06 PM 1 Hour 1 Day 1 Week 1 Month Forever Login with username, password and session length Light Blue Light Navy Light Silver Light Turquoise Light Green Light Olive Light Golden Light Brown Light Red Light Rose Light Lilac Light Violet

 Pages: 1 ... 6 7 [8] 9 10   Go Down
 Author Topic: Polyhedrons, many many polyhedrons...  (Read 10344 times) Description: 0 Members and 1 Guest are viewing this topic.
JosLeys
Iterator

Posts: 194

 « Reply #105 on: April 11, 2012, 06:11:40 PM »

Hmm...not sure I agree.
See the picture below: the red point is moving on the yellow ray. The corresponding blue point on the sphere is a distance away from a vertex or a segment defined by the green circle.
This distance is an angle which defines a cone with its top in the origin, and the intersection with the sphere gives the green circle.
We can move the point on the ray to the second red point, which is the projection of the intersection of the yellow circle (the inverse projection of the ray), and the green circle, without having to fear that we are going to overstep something.
On the other hand, if a vertex or a segment lies on the blue point that is the intersection of the two circles, we move on the ray with the exact distance.
 Stereo_proj_01.png (90.45 KB, 680x680 - viewed 58 times.) Logged
knighty
Fractal Bachius

Posts: 525

 « Reply #106 on: April 11, 2012, 09:16:06 PM »

All is about the definition of "exact distance".
 Logged
knighty
Fractal Bachius

Posts: 525

 « Reply #107 on: April 21, 2012, 05:30:08 PM »

Some experiments with stellations and compounds.
 Stellations-duals-compounds-experiments.zip (8.29 KB - downloaded 39 times.) Logged
DarkBeam
Global Moderator
Fractal Senior

Posts: 1650

The spaghetti formula coder

 « Reply #108 on: April 21, 2012, 07:18:59 PM »

Some don't work well... But those who work are 5 stars
 Logged

Formulas are never too much (?)

Syntopia
Fractal Bachius

Posts: 564

 « Reply #109 on: April 21, 2012, 10:30:41 PM »

Here is a render of one Knighty's latest frags:

(I'm playing around with Image Based Lighting, 2D textures projection, and tone mapping in Fragmentarium)
 Logged
knighty
Fractal Bachius

Posts: 525

 « Reply #110 on: April 22, 2012, 11:08:04 AM »

Ty!  .
The stellation and compound shaders are just experiments, proof of concept. If you have compilation errors just let me know.
 Logged
Tamfang
Forums Newbie

Posts: 7

 « Reply #111 on: May 07, 2012, 07:04:35 AM »

By the way, Vladimir Bulatov told me that he works in the Poincaré model because it resists accumulation of arithmetic errors better than the hyperboloid model.

I wonder... How would that look like with a 16-cell...
http://en.wikipedia.org/wiki/16-cell
That polytope has the remarkable property of being self-dual despite being neither a polygon nor a simplex. It's the sole exception.
Of course you mean the 24-cell.  And if infinite lattices are allowed, the (hyper)cubic lattices are also self-dual, as are these hyperbolic lattices: {3,5,3}, {5,3,5}, {5,3,3,5} with finite cells; {4,4,4}, {3,6,3}, {6,3,6} with infinite cells.

Here is a 3D hyperbolic tesselation fragmentarium script. Just *-3-*-5-*-3-* Coxeter symmetry group for now.

There's a more specific notation for the figure shown: x3o5x3x
x means a ring, o means (perversely) no ring

I count 32 Coxeter tetrahedra in H3 (including 23 with vertices at infinity), giving at least 227 uniform tilings (about 14 with vertex at infinity) not counting snubs.  I have long wished for the ability to make a picture of each one, but it looks like you're beating me to it.

I have plenty of learning to do if I'm ever to use Fragmentarium.  I can't even tell from your code whether it's ray-tracing with mirrors, or makes copies of all those rods ....

By the way, in doing the algebra for hyperbolic geometry, I generally find it easiest on the brain to explicitly call one of the coordinates imaginary (it,x,y,z) rather than try to remember when to use a negative!  This lets me treat positively and negatively curved spaces in the same way (up to a point).  I can still build the (–+++) signature into my code when the time comes.

... We will need a mean to fix the 6 remaining degrees of freedom (which correspond to the set of orthonormal matrices in 4D). The simplest method I could think of is to set some of the components to 0 like this:
a:(a0,0,0,0); b:(b0,b1,0,0); c:(c0,c1,c2,0) and d:(d0,d1,d2,d3).
Then solve the system of equations.

When the Coxeter symbol has a loop, this pyramid scheme generally doesn't work, in my experience.
 Logged
kram1032
Fractal Senior

Posts: 1477

 « Reply #112 on: May 07, 2012, 09:46:42 AM »

let's say sole euclidean exception, then?
 Logged
Tamfang
Forums Newbie

Posts: 7

 « Reply #113 on: May 09, 2012, 06:51:20 AM »

sole finite exception.
 « Last Edit: June 06, 2013, 12:51:19 AM by Tamfang » Logged
Tamfang
Forums Newbie

Posts: 7

 « Reply #114 on: May 09, 2012, 10:45:46 PM »

I forgot to mention: The lattice renders in this thread are gorgeous!
 Logged
knighty
Fractal Bachius

Posts: 525

 « Reply #115 on: May 10, 2012, 05:23:51 PM »

Hi Tamfang and welcome to fractalforums.

Thanks for the infos  .

The advantage of the hyperboloid model is its simplicity: The fundamental domain is represented using hyperplanes instead of planes and spheres. This gives a very small code because we don't have to worry about special cases. BTW! I used Poincaré disc model for triangular groups. (http://www.fractalforums.com/new-theories-and-research/the-power-of-fold/).

Regarding numerical accuracy, I compute hyperbolic sine and cosine of the hyperbolic distance. Using only cosh and 32 bits floats (or cos in the spherical case) certainly gives too high numerical errors and visible artefacts.

The rendering method used is distance field raymarching (sphere tracing). At a given point on a ray, we compute a scalar value that is less or equal to the distance to the nearest object, then we advance on the ray using that value. The rendered object is implicitly represented with a scalar function (the distance field).

Say we have a distance function F(x,y,z). If we do F(abs(x),y,z), what we get is a symmetric field (about y,z plane) where the values F(x>=0,y,z) are duplicated in the half space where x<=0. This is just like a mirror in a kaleidoscope. doing abs(x) is just like folding the space about the y,z plane. One can define folding about an arbitrary plane (or sphere using inversion). It's also possible to do other types of folding operations.

As I said in a prevois post of this thread it is also possible to do direct raytracing using mirrors (just like what you did for euclidean honeycombs  ).I haven't implemented this method for two reasons: It's slightly less simple (in the case of hyperbolic honeycombs) and I don't think it would be much faster than sphere tracing.

When the Coxeter symbol has a loop, this pyramid scheme generally doesn't work, in my experience.
You are right. That scheme doesn't work in that case but only when there are ideal points (noncompact honeycombs).
 Logged
Tamfang
Forums Newbie

Posts: 7

 « Reply #116 on: May 12, 2012, 04:36:48 AM »

The hyperboloid model has been good enough for me so far.
 Logged
knighty
Fractal Bachius

Posts: 525

 « Reply #117 on: May 14, 2012, 09:10:04 PM »

So! That was you!
Very nice and impressive! Any chance you make your phyton programs available?
 Logged
Tamfang
Forums Newbie

Posts: 7

 « Reply #118 on: May 19, 2012, 04:37:25 AM »

That makes two nudges ... Okay, here: http://commons.wikimedia.org/wiki/User:Tamfang/programs
 « Last Edit: May 19, 2012, 09:30:37 AM by Tamfang » Logged
hgjf2
Fractal Lover

Posts: 225

 « Reply #119 on: May 19, 2012, 07:56:39 AM »

That makes two nudges ... Okay, as soon as I work out which of these programs are relevant, I'll put them on a Commons page.
.........
 Logged
 Pages: 1 ... 6 7 [8] 9 10   Go Down