How to Find the Coordinates of an Icosahedron's Faces?

  • Thread starter Thread starter BJRowlett
  • Start date Start date
Click For Summary
SUMMARY

This discussion focuses on obtaining the coordinates (X, Y, Z) of the faces of an Icosahedron using the data structure GeodesicSphere::Faces::Vertex::Coordinates. The user seeks an efficient method to retrieve these coordinates without manual entry, highlighting the need to manage shared vertices among adjacent faces. A proposed solution involves designating a 'north pole' vertex and iteratively calculating the coordinates of adjacent faces. The user also references the latitude of non-pole nodes as arctan(1/2) and suggests consulting Wikipedia for Cartesian coordinates of an Icosahedron.

PREREQUISITES
  • Understanding of 3D geometry and polyhedra
  • Familiarity with data structures in programming
  • Knowledge of Cartesian coordinates
  • Experience with algorithms for vertex manipulation
NEXT STEPS
  • Research efficient algorithms for vertex sharing in polyhedra
  • Explore the implementation of GeodesicSphere data structures in programming
  • Learn about the mathematical properties of Icosahedrons
  • Investigate sorting algorithms applicable to 3D face arrangements
USEFUL FOR

This discussion is beneficial for game developers, 3D modelers, and mathematicians interested in geometric computations and efficient data handling for polyhedral structures.

BJRowlett
Messages
3
Reaction score
0
Ive posted this on gamedev.net, and figured Id post here aswell.

What I am trying to figure out, is how to get the coordinates (X, Y, Z) of the faces of an Icosahedron, without having to manually enter all the data.

This wouldn't be as hard, but the data structure for the information is as follows:
GeodesicSphere::Faces::Vertex::Coordinates

An example of this is:
(GeoSphere.FaceIndex[0].A.X, GeoSphere.FaceIndex[0].A.Y, GeoSphere.FaceIndex[0].A.Z)
(GeoSphere.FaceIndex[0].B.X, GeoSphere.FaceIndex[0].B.Y, GeoSphere.FaceIndex[0].B.Z)
(GeoSphere.FaceIndex[0].C.X, GeoSphere.FaceIndex[0].C.Y, GeoSphere.FaceIndex[0].C.Z)
Which holds the X,Y,Z values of the all the vertices on the first Face.

With this, I will have to assign the values to multiple indices coordinates, because adjacent faces share vertices. And I haven't found an easy way to do so.

Also, finding a efficient way of sorting the faces, my idea was to select one node to be a 'north pole' and select any face, then work around the icosahedron, moving down a level, and repeating. This way, I can always use two of the vertices from the previous face, and just calculate the new one.

If you have any ideas that would work better, it would be greatly appreciated.


~BJRowlett
 
Technology news on Phys.org
I do recall the latitude of the non-pole nodes are arctan( 1/2 )
 

Similar threads

  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 2 ·
Replies
2
Views
5K
  • · Replies 8 ·
Replies
8
Views
6K
  • · Replies 20 ·
Replies
20
Views
4K
Replies
5
Views
2K
  • · Replies 3 ·
Replies
3
Views
10K
Replies
2
Views
3K
  • · Replies 2 ·
Replies
2
Views
4K