Hey Lefteris.
What restrictions do you have on the shapes in terms of edges and vertices?
I am working on a project that requires deriving from a single 3d coordinate (x,y,z) a 3d space having a random shape of a geometrical figure e.g. a cube-like figure.
The idea is to build a 3d geometrical figure that will contain the single 3d coordinate. For example, one way is to derive from the initial (x,y,z) various other coordinates in 3d space by extending it (e.g. (x+,y-,z+) derives a new coordinate by extending the initial x,y,z).
Question is. How many coordinates are required to build up this 3d space? I am estimating that 8 should be required (x1,y1,z1),...,(x8,y8,z8). Is there a way to do this by computational means?
Thank you for your help in advance!
Hello Chiro and thank you for your kind reply.
The only restriction at the moment is that the original coordinates x,y,z should be contained in the 3D geometrical shape. Let's assume that the geometrical form will have a parallelepiped shape.
Mainly, what I would like to achieve is producing a random 3D shape. That is taking each of original coordinates x,y,z and add or subtract a random value so that I finally create the geometrical space. For creating the 3D form I must extend EACH of the three original coordinates x,y,z 8 times right? Each time representing one vertex of a parallelepiped-based form.
How would you approach this case by computational means?
Please clarify - you talk about a "random shape" but then mention a parallelpiped. If you truly mean a random shape then one approach is to defne each vertex's (x,y,z) coordinates as you suggest, and connect them. This is essentially how older CAD programs work - it's a type of drawing system called "wire frame" and does require as many data points as their are corners. However, if in fact you know before hand that the shape is a parellelpiped then you can get away with fewer than 8 data points. Given the symmetry of a parallelpiped I believe you can get away with defining positions of just 4 corners (3 corners of one face plus one corner of a different face) and then derive the rest. Similarly for a spehere all you need are the coordiinates of the center point and the radius.
Ebaines you are right about the confusion. I am investigating on developing two random shapes. One completely random and another random again but at a parallelpiped shape. It is very interesting the approach you have mentioned about the parallelpiped form. I suppose that the rest of the vertices of the parallelpied are formed extending the 4 corners' edges as parallel projections to the x,y,z axes and deriving the rest of the vertices at their crossing. Right?
Is there a link where this case is elaborated or put as an example that you can reference? Any free tool that I can use to test this?
Actually, what I am trying to achieve is randomizing the position of an object within a 3D space. That is, when the random 3D space is formed the object will be located in it but at a random position.
For a parallelpiped if you have the (x,y,z) coordinates for corners A, B, C and D, and assuming that point A is the corner at the intersection of edges AB, AC, and AD, then the other four points can be calculated as follows:
E = B + (C-A)
F = D + (B-A)
G = C + (D-A)
H = G + (F-D)