Logo by Dinkydau - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Did you know ? you can use LaTex inside Postings on fractalforums.com!
 
*
Welcome, Guest. Please login or register. April 19, 2024, 11:02:24 AM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: 1 ... 3 4 [5] 6 7 ... 9   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: Polyhedrons, many many polyhedrons...  (Read 46714 times)
0 Members and 1 Guest are viewing this topic.
Syntopia
Fractal Molossus
**
Posts: 681



syntopiadk
WWW
« Reply #60 on: March 10, 2012, 10:28:48 PM »

Amazing stuff as usual, Knighty!

I just tried it out. You say it's a 3-5-3 group. So by setting the U,V,W,T parameters, it should be possible to find a regular icosahedral honeycomb, right?: http://en.wikipedia.org/wiki/Convex_uniform_honeycombs_in_hyperbolic_space#.5B3.2C5.2C3.5D_family

Have you tried this?

Logged
marius
Fractal Lover
**
Posts: 206


« Reply #61 on: March 11, 2012, 08:40:48 AM »

Better late than never. Here is a 3D hyperbolic tesselation fragmentarium script. Just *-3-*-5-*-3-* Coxeter symmetry group for now. Others will come later.

Cool .frag! I converted it into a boxplorer2 flavored one as well.
Fun stuff when you make the clipping sphere reflective and swing a light around inside.

Logged
DarkBeam
Global Moderator
Fractal Senior
******
Posts: 2512


Fragments of the fractal -like the tip of it


« Reply #62 on: March 11, 2012, 09:19:04 AM »

It is way too complicated for my limited brain! cry

And too much vars too! hurt

But it's fantastic A Beer Cup
Logged

No sweat, guardian of wisdom!
kram1032
Fractal Senior
******
Posts: 1863


« Reply #63 on: March 11, 2012, 10:40:35 AM »

hyperbolic spaces ftw!
<a href="http://www.youtube.com/v/AGLPbSMxSUM&rel=1&fs=1&hd=1" target="_blank">http://www.youtube.com/v/AGLPbSMxSUM&rel=1&fs=1&hd=1</a>
<a href="http://www.youtube.com/v/MKwAS5omW_w&rel=1&fs=1&hd=1" target="_blank">http://www.youtube.com/v/MKwAS5omW_w&rel=1&fs=1&hd=1</a>
Logged
knighty
Fractal Iambus
***
Posts: 819


« Reply #64 on: March 12, 2012, 01:52:13 PM »

Thank you.

Kram: Thank you for the videos. It's amazing how knots and hyperbolic geometry are related.

Marius: awesome! how do you get that glowing sphere (light?)?

Syntopia: you can get icosahedral honeycomb in two ways: U=0,V=1,W=0,T=0; and U=0,V=0,W=0,T=1.
It's not obvious to see the icosahedra. I think it is because of the vertex figure: eache vertex have 20 neighbours. I've attached another version of the script with a preset that shows clearly the icosahedra. It was neccessary to do a 'tanslation' in order to center it (see the rotation parameters).
You can get most of the regular honeycombs by setting the UVWT parameters to 0 or 1. In order to be able to identify the honeycombs given in wikipedia, here are some hints:
- [3,5,3]: The coxeter diagram is:
   5
*-*-*-*
a d b c
V U W T


Each star corresponds to a folding plane. The naming of the planes in the script is given by the letters under the diagram (well you will find na, nb... instead in the script). The line below gives the correspondance between the 'barycentric' coordinates of the vertex. Each barycentric coordinate corresponds to a plane. In fact the 'principal' point that is opposit to that plane. For example, V corresponds to the point that is opposite to the plane a. it is in fact given by the intersection of the other planes. In this case the intersection of d,b and c.

Now, the "cantellated icosahedral" for example: the corresponding Coxeter–Dynkin diagram is:
       5
(*)-*-(*)-*

Each "ringed" dots mean "give 1 to the corresponding barycentric coordinate" (non "ringed" means give it 0) so we shoud have:
V=1, U=0, W=1 and T=0.

(Just don't ask for the "partially truncated icosahedral" because it's not possible with this method) cheesy

I've finally finished to get the planes and vertices for the other Coxeter groups. The corresponding scripts are attached below.
The "noncompact honeycomb" are not included yet because I will need to rework the distance estimation in order to avoid infinities that arise in the calculations.

-[5,3,n]:file:"hyperbolic-tesselation-5-3-n-colored-00.frag"
 5   n
*-*-*-*
a d b c
V U W T

n=4 or 5 (you can also try 6 but this will not render correctly sometimes because of vertices at infinity (ideal points))

-[5,31,1]:file:"hyperbolic-tesselation-bifurcating-5-3-3-colored-00.frag"
 *b W
  \ 5
U d*-*a V
  /
 *c T


-[(m,3,n,3)]:file:"hyperbolic-tesselation-cyclic-m-3-n-3-colored-00.frag"
V   U
a   d
 *-*
m| |n
 *-*
c   b
T   W

m=4 or 5 (you can also try 6)
n=3,4 or 5 (and also 6)

I've completely forgotten the euclidean honeycombs. They should be easy compared to spherical and hyperbolic ones. grin

* hyperbolic-tesselations.zip (12.26 KB - downloaded 171 times.)
Logged
marius
Fractal Lover
**
Posts: 206


« Reply #65 on: March 12, 2012, 09:11:09 PM »


Marius: awesome! how do you get that glowing sphere (light?)?

It's an extra 'sphere' in the glsl raymarcher:
http://code.google.com/p/boxplorer2/source/browse/trunk/cfgs/knighty/HypTess.cfg.data/fragment.glsl#337

also used for hard shadowing:
http://code.google.com/p/boxplorer2/source/browse/trunk/cfgs/knighty/HypTess.cfg.data/fragment.glsl#313

(current code has the light white, not the weird blueish above)
« Last Edit: March 13, 2012, 04:19:44 AM by marius » Logged
jehovajah
Global Moderator
Fractal Senior
******
Posts: 2749


May a trochoid in the void bring you peace


WWW
« Reply #66 on: March 13, 2012, 04:13:21 AM »

I always enjoy Knighty's scripts. I was wondering what it would look like "fractalized" with each vertice as another polyhedron. This is the result.
<a href="http://www.youtube.com/v/-eo6ImWMcWg&rel=1&fs=1&hd=1" target="_blank">http://www.youtube.com/v/-eo6ImWMcWg&rel=1&fs=1&hd=1</a>
Nice! I especially like how spaciometric density arises from the fractalisation of the vertices, and the multipleform gradually becomes a single object. These subjective experiences are well illustrated in this video.
Logged

May a trochoid of ¥h¶h iteratively entrain your Logos Response transforming into iridescent fractals of orgasmic delight and joy, with kindness, peace and gratitude at all scales within your experience. I beg of you to enrich others as you have been enriched, in vorticose pulsations of extravagance!
jehovajah
Global Moderator
Fractal Senior
******
Posts: 2749


May a trochoid in the void bring you peace


WWW
« Reply #67 on: March 13, 2012, 04:21:42 AM »

Better late than never. Here is a 3D hyperbolic tesselation fragmentarium script. Just *-3-*-5-*-3-* Coxeter symmetry group for now. Others will come later.

The multiverse! The final frontier?

Very nice dancing banana dancing chilli
Logged

May a trochoid of ¥h¶h iteratively entrain your Logos Response transforming into iridescent fractals of orgasmic delight and joy, with kindness, peace and gratitude at all scales within your experience. I beg of you to enrich others as you have been enriched, in vorticose pulsations of extravagance!
knighty
Fractal Iambus
***
Posts: 819


« Reply #68 on: March 13, 2012, 07:41:05 PM »

Thank you marius.
Thank you Jehovajah. smiley
Logged
kram1032
Fractal Senior
******
Posts: 1863


« Reply #69 on: March 13, 2012, 10:25:29 PM »

knighty, the video was the first hint for me to actually understand how those disk-spaces you might have seen (poincare-model of hyperbolic space, etc.) translate into "actual", "infinite" hyperbolic space. At least I take it that the outsider's view on the cone is what would be the poincare-disk-model (or its corresponding 3D open 3-ball version) while the later hyperbolic polyhedral tilings are the "actual" picture...
Logged
JosLeys
Strange Attractor
***
Posts: 258


WWW
« Reply #70 on: March 16, 2012, 11:11:11 PM »

Knighty,

How do you define the fundamental domain of a 4D polytope?
I've been looking all over the internet for references, but I can't find any.
I'd like to understand how you define the 4d vectors in your Fragmentarium script...


Thanks...Jos
Logged
knighty
Fractal Iambus
***
Posts: 819


« Reply #71 on: March 17, 2012, 05:44:20 PM »

Hi JosLeys,

I used the fact that the elliptic, euclidean and hyperbolic plans (spaces) can be "immersed" in a higher dimensional linear space. This is called the projective interpretation. The advantage of such model is that we will only manipulate (hyper) planes. The elliptic plane is seen as a (hyper) sphere imbedded in a 3D (4D) euclidean space where the dot product is as usual (with signature (+ + + +)). The euclidean plan (space) is seen as a (hyper) plane imbedded into the 3D (4D) affine space where the dot product have signature (+ + + 0). The hyperbolic plane (space) is seen as the (upper) unit hypeboloid imbedded in the Minkowski space where the dot product have the signature (+ + + -) (or (- - - +). it's a matter of convension).

The generation of the planes defining the fundamental domain is exactly the same as for polyhedra. I begin from the Coxeter group which defines the angles between those planes. In the case of a polyhedra we have 3 planes. There are 3 angles, one for each pair of planes. Each of those angles gives a linear equation where the dot product of the normals of the two planes is equal to -cos(angle) (The convention I choose is that the normals point inside the fundamental domain). The problem here (weel in fact it is not a problem) is that we have 3 normal vectors each with 2 degrees of freedom (because they are normalized) which gives 6 degrees of freedom and we have only 3 equations. the system is underconstrained. The 3 remaining degrees of freedom correspond exactly to arbitrary rotation (and symmetries). Thus, we have to arbitrarily choose some of the components of our normal vectors.

Let's consider the symmetries of the dodecahedron: the corresponding Coxeter group is:
 5
*-*-*
a c b

a,b and c are our three normal vectors. each one corresponds to a dot (star) in the diagram. Thus we have the three equations:
<a|b>=0
<a|c>=-cos(PI/5)
<c|b>=-cos(PI/3)=-1/2

I choose to fix the components of 'a' to (1,0,0).
b==(b0,b1,0). Because 'a' is orthogonal to 'b' we have b0=0 and b1=1.
Now, c==(c0,c1,c2).
<a|c>=c0=-cos(PI/5)
<b|c>=c1=-cos(PI/3)=-1/2
because c must have unit norm, we have c0²+c1²+c2²=1
Thus c3=sqrt(1-c0²-c1²)=sqrt(3/4-cos²(PI/5))

The choice of the componenets of a and b is not arbitrary. First reason is that I'll just have to use abs() function to perform folding about a and b. The second reason is that I wanted the vertices of the fundamental domain (the intersection of the 3 pairs of planes plus the unit sphere) to have positive components. These are just practical choises, the first simplify the computations a lot, the second in order to not get lost wink.

Concernig the vertices of the fundamental domain, at first I wanted them to be on the unit sphere. That was not good because I couldn't obtain simply the vertex of the uniform polyhedra from a weighted sum of the vertices of the fundamental domain. It's not linear. The solution is very simple: The three verices have to be pab=abs(a*b), pbc=abs(b*c) and pac=abs(a*c) and normalized afterward. '*' is the cross product.

Why?
Let's take for example the Rhombicosidodecahedron: it's vertex 'p' have to be at the same distance to each of the fundamental domain planes. it will be:
p = pab + pbc + pac = abs(a*b) + abs(b*c) + abs(a*c)
it's distance to eache plane is:
d(p,a)=<p|a>= <abs(a*b)|a> + <abs(b*c)|a> + <abs(a*c)|a> = <abs(b*c)|a> = abs((a,b,c))
d(p,a)=<p|b>= <abs(a*b)|b> + <abs(b*c)|b> + <abs(a*c)|b> = <abs(a*c)|b> = abs((a,b,c))
d(p,a)=<p|c>= <abs(a*b)|c> + <abs(b*c)|c> + <abs(a*c)|c> = <abs(a*b)|c> = abs((a,b,c))

which is the same value!

(Despite the abs() these equalities hold because of the convensions we used.)
(a,b,c) is the triple product. it is the volume of the parallelepiped defined by a,b and c.
It's easy to verify the case of the other uniform polyhedrons.
It is remarkable that it works also in the case of the polychora and also for hyperbolic tesselations/honeycombs. in the 4D case the cross product a*b is replaced by its 4D generalisation: *(a,b,c). see (http://en.wikipedia.org/wiki/Cross_product#Multilinear_algebra).

The case of the polychora is exactly the same. The system of eqations defining the normal vectors is derived from the coxeter group. we will have 6 equations for 12 degrees of freedom. The 6 remaining degrees of freedom are the isometries (rotations and reflexions) of the 4D Eclidean space.

In the case of the hyperbolic tesselations/honeycombs, the dot product have (+++-) signature. The cosine of the angle between the (hyper) planes is still the dot product of their normals because they are space-like. The vertices of the fundamental domain are time-like. They are also computed using the generalisation of the cross produt ... well... one have to be very careful with the signs and the type of the vectors at hand!

Some interesting papers that helped me understand (to some extent):
The projective interpretation of the eight 3-dimensional homogeneous geometries (a little bit technical)

Hyperbolic Geometry (see figure 5 for correspondance between the different models of the hyperbolic plane)

Generating and Rendering Four-Dimensional Polytopes

Real-Time Rendering in Curved Spaces


BTW, here are the fragmentarium scripts updated with the names of the honeycombs as described in wikipedia (see the presets).

* hyperbolic-tesselations-named.zip (16.39 KB - downloaded 171 times.)
Logged
JosLeys
Strange Attractor
***
Posts: 258


WWW
« Reply #72 on: March 17, 2012, 06:34:22 PM »

Wow, thanks Knighty!
I'll need a bit of time to digest all of it (and I'll probably have more questions...)
Logged
JosLeys
Strange Attractor
***
Posts: 258


WWW
« Reply #73 on: March 17, 2012, 08:53:45 PM »

Knighty, some first comments :
I have an implementation for polyhedra in Ultrafractal, where I made the following reasoning.
Let's take the dodeca/icosa as an example. The fundamental domain here is a triangle on the sphere with one right angle and the two others pi/5 and pi/3.

Call this trangle ABC with A the right angle, sides a,b,c (a opposite to A,b opposite to B,etc) and angles pi/2 in A,beta= Pi/5 in B and gamma=pi/3 in C.
then from spherical trig we have cos(b)=cos(beta)/sin(gamma) and cos(c)=cos(gamma)/sin(beta).

The vectors A,B,C are then simply:
A=<0,0,1>
B= <sin(b),0,cos(b)>
C=<0,sin(a),cos(a)>

And the normals on the three planes through the origin and sides a, b and c follow from the cross products A*B, B*C, C*A.

As the vertex I simply take the barycentric point P=U.A+V.B+W.C, which gives a point P in the plane ABC, so I normalize to put it on the sphere.

I saw no reason to do otherwise, as you do. For instance the polyhedron with U=V=W=1 is repreoduced below using these data.

Now...on to the 4D case. I'm reading the Sullivan and Weeks articles first


* Kaleido_POLY_002-00200.jpg (129.72 KB, 640x640 - viewed 312 times.)
Logged
puntopunto
Alien
***
Posts: 28

keep it simple


« Reply #74 on: March 19, 2012, 12:13:35 PM »

Many, many polyhedra...

These are the so called stellations of the cuboctahedron



I rendered them in Mathematica 2.0, 20 years ago. I calculated the intersections of the face planes of the cuboctahedron, with one such a plane. The regions you get, you can use by rotating them according to the symmetry group of the cuboc. If anyone find them useful I can pull out the coordinates of the vertices. The same for the 59 icosahedron stellations.
Logged
Pages: 1 ... 3 4 [5] 6 7 ... 9   Go Down
  Print  
 
Jump to:  


Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.217 seconds with 24 queries. (Pretty URLs adds 0.013s, 2q)