ICN5D wrote:I'm also interested in this, too. I would like to find/develop a program that can do midsection cuts of toratopes. The shape can be programmed in by its parametric equation or surface hypervolume equation. I would like the ability to move and rotate the cross section plane around, and fly through the cut array. I also have zero programming skill in this respect. But, I do have a good feel for how the arrays should look by now. It looked like the one made by Mrrl could work, but I have no idea where to start.
ICN5D wrote:So, this sounds pretty straightforward. Where do I find a program that can do this?
ICN5D wrote:Okay, no oblique cuts for now. I'm happy with midsection cuts. So, I guess what I'm looking for, to jump into playing around with it, is a premade fully functional template of code that sets up the camera, lightsource, and math operator equation in it. Then, I can play around and modify it to see how it works. I'm afraid I still don't know how to use it at all, though. I can press the run button, and I see it runs the code in the text field. One thing I've been thinking about is how to render the merge sequences. It seems like I can translate the midpoint of the shape with respect to the cross-cut plane, but I'm not sure it can work that way.
ICN5D wrote:All right, finally found the part about the poly equations and functions. You weren't kidding about the complexity. There MUST be another way. I guess the CSG can be used to manually build the cuts, but it would be cheating the system a little bit. Man, this will take some time and learning. I have no idea how to derive those polynomials for the shapes. I didn't see it anywhere, but can POVray use parametric equations? Of course, they would be even more cryptic. Hmm, going to take some time.
I thought you said you knew how to derive polynomials for the shapes?
For example, a sphere has equation x^2 + y^2 + z^2 = r^2. So to find its cross-section with the z=1 plane, you just substitute z=1 and obtain: x^2 + y^2 + 1^2 = r^2, which simplifies to: x^2 + y^2 = r^2 - 1, the form of which indicates that the cross-section is a circle
ICN5D wrote:I thought you said you knew how to derive polynomials for the shapes?
Nope, I said they didn't scare me. But, I probably should be
But, other than that, there was some reference to a program that could make the vector arrays. When I checked out the layout of the vector arrays, it wasn't that bad. Just a long way to do it. POVray seems like a cool program, but it also seems kind of primitive when trying to do some real complex math. It's mainly the part with having to convert into a 3D equation.
The cut algorithm is doing this too, so I feel that there is some kind of way to directly translate it into an equation. But, maybe a more advanced program designed to handle heavier calculations is what I should find. I have the perfect one in my head, but sadly a lack of programming knowledge. Boy would it be awesome, too. I know exactly how to represent the rest of the shape from the cut, I just need to find a way to illustrate it. Heck, I could draw it way faster than on the computer!
So, before you mentioned something like deriving the equation for a cut, as simple as setting a variable to 0 or 1, like here:For example, a sphere has equation x^2 + y^2 + z^2 = r^2. So to find its cross-section with the z=1 plane, you just substitute z=1 and obtain: x^2 + y^2 + 1^2 = r^2, which simplifies to: x^2 + y^2 = r^2 - 1, the form of which indicates that the cross-section is a circle
This mimics the cut algorithm when we take a sphere (III) = (x^2 + y^2 + z^2) = r^2, and cut it into a circle (IIi) = (x^2 + y^2 + 1^2) = r^2 . Moving along the cut axis " i ", we see the circle shrink, which would be made by increments of the value of 1 in the equation: (x^2 + y^2) = r^2 - 1 . The extra parentheses aren't really necessary, I'm throwing them in there for illustrative purposes.
x^2 + y^2 = r^2
x + 2y + 3z = 0
-1 < z < 1
And, for a torus ((II)I) = ((√(x^2+y^2) − R)^2 + z^2) = r^2 . There are two midsection axial cuts ((I)I) making two circles along a line, and ((II)) making two concentric circles.
((I)I) = ((√(x^2 + 1) − R)^2 + z^2) = r^2 , increase 1 to merge displaced circles into one
((II)) = ((√(x^2 + y^2) − R)^2 + 1) = r^2 , increase 1 to merge concentric circles into one
So, I feel that these equations for the cut arrays can be made through a direct translation into 3D, and what the merge sequence would be. But, wouldn't you wan't to set the cut axis value to zero? As in, (x^2 + y^2 + 0) = r^2 ? Then, of course keeping in mind that the value can be changed when moving out from center. I have yet to try my hand at converting the toratope notation into equations, much less into the 9D ones I've been working with.
So far, I can put these together:
(II) = (x^2 + y^2) = r^2
(III) = (x^2 + y^2 + z^2) = r^2
((II)I) = ((√(x^2+y^2) − R)^2 + z^2) = r^2
(IIII) = (x^2 + y^2 + z^2 + w^2) = r^2
((III)I) = ((√(x^2 + y^2 + z^2) − R)^2 + w^2) = r^2
((II)II) = ((√(x^2 + y^2) − R)^2 + z^2 + w^2) = r2
(((II)I)I) = ((√((√(x^2 + y^2) − ρ)^2 + z^2) − r)^2 + w^2) = R^2
((II)(II)) = ((√(x^2 + y^2) − a)^2 + (√(z^2 + w^2) − b)^2) = r^2
which definitely follows some very strict congruencies between both. By setting any one of the x, y, z, w axes to 0 or 1, the equation for the resulting array of shapes should come out. If a rendering program can take these equations and make cool pictures, and then adjust the values, the complex merge sequence can be made. I'm not so sure about the oblique slices, though. They are pretty cool, but the maths required sound heavy. It's a good challenge, and probably the next step.
Users browsing this forum: No registered users and 0 guests