ICE Topology and parametric equations

Here you can find ICE tutorials and learning material
Post Reply
User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

ICE Topology and parametric equations

Post by Daniel Brassard » 02 Dec 2011, 05:51

With this thread, I will be using my previous work on the parametric formula plugins (available at the Area and RRay.de) to demonstrate the use of mathematical formulas to create objects using the ICE Topology framework.

This will be a long thread.

Along the way, we will develop various little nodes that will prove to be useful in creating ICE Topology. At the end of this thread, you will have over 120 objects created with ICE. You will also gain a good knowledge and understanding on how to string ICE nodes to create geometry.

If you have questions or wish to participate, please do so in the spirit of sharing, discovery, experimentation and understanding.

So keep on reading and welcome to the journey!
Attachments
Presets.jpg
Presets.jpg (238.85 KiB) Viewed 12487 times
Last edited by Daniel Brassard on 22 Dec 2011, 23:01, edited 1 time in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 02 Dec 2011, 05:53

What are parametric equations?

The following link explains what a parametric equation is.

http://mathworld.wolfram.com/ParametricEquations.html

parametric equations in 3 dimensions are of the form:

x = f(u,v)
y = g(u,v)
z = h(u,v)

When u and v are defined, the 3 equations provide a mapping from a 2 dimensions u,v plane to a 3 dimensions x,y,z surface. All the surfaces can be visualised as a deformed rectangle grid or plane. The points on the grid are the samples taken from the range u and v. The mapping taken from the grid is then translated into the x y z space. This allow for visualization of the deformed grid as a surface. Think of it a shrink wrapping the plane around the surface.

Parametric equations are useful in various situations. Some Texture projection uses parametric equations to wrap the texture around the object. With this thread, we will be using parametric equations to create topologies.

The Parametric equations used on this thread comes from a variety of sources: Mathworld, Paul Bourke, PovRay, Bruce Puckett, Sculpt generator, MathLab, etc.

A good site with lots of surface equations is Wolfgan Mathworld at:

http://mathworld.wolfram.com/topics/Surfaces.html

The surfaces in those sites have been adapted to Softimage, with y axis up. The surfaces are shown in a right handed coordinate system and all the polygons are constructed counter clockwise (CCW) with the normal facing away from the center.

This will be better illustrated with our first object, the grid.
Last edited by Daniel Brassard on 11 Jan 2012, 15:01, edited 3 times in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 02 Dec 2011, 05:57

The Grid

Our first object will be the grid. First let’s see how Softimage describe the grid.

Create a grid primitive:

model > polygon mesh > grid

Let’s see what Softimage has created for us. Switch to points. Select a point in one of the corner. Find the point at index 0. This is the first point of the grid. Note the location of that point. Found the next point at index 1, 2, 3 and so forth until the last point. This is the order of points that we will try to re-create in ICE.
Attachments
Grid-reference.jpg
Grid-reference.jpg (40.62 KiB) Viewed 12487 times
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 02 Dec 2011, 06:01

Next to create the grid in ICE

Create an empty mesh

Model > polygon mesh > empty

Open the ICE viewport (alt + 9)

Create an ICE tree

Add a Create Topology and set topology node. This is the start of our ICE Tree, the testbed so to speak. Save the scene.

The next thing is to create the vertex description of the topology. Looking at the grid earlier, we noticed that for each value in X, we had several values in Z. To accomplish this, we will reproduce the ICE tree that I provided in the thread “Modulo trick and variant” with some improvement, to expose ports that will be useful later on.

Reproduce the ICE tree below. When done, make a compound with the nodes.

[edit] Later on, I have provided a compound called "Parametric_Sandbox" that include all the nodes below. If you want to follow the construction of objects or want to see inside the poly description and vertex description compounds, download and install the "Parametric_Sandbox" compound and explore the inside to understand how it works.
Attachments
ICE-tree-begin.jpg
ICE-tree-begin.jpg (19.29 KiB) Viewed 12487 times
Grid-description.jpg
Grid-description.jpg (91.07 KiB) Viewed 12487 times
Last edited by Daniel Brassard on 06 Dec 2011, 15:20, edited 2 times in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 02 Dec 2011, 06:05

Next we need a way to describe the vertex order to create the polygons of the grid. Again, using a modulo trick, I create the polygon description for the grid.

Reproduce the ICE tree below. When done, make a compound with those nodes.
Attachments
Poly-Description.jpg
Poly-Description.jpg (85.14 KiB) Viewed 12488 times
Last edited by Daniel Brassard on 02 Dec 2011, 06:15, edited 1 time in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 02 Dec 2011, 06:09

The grid is probably the simpliest parametric surface. The grid dimensions are directly set from the parameters u and v. The parametric equation for the grid are as follows:

x = f(u,v) = u
y = g(u,v) = 0 (or any constant which will have for effect to raise or lower the grid along the y axis)
z = h(u,v) = v

Connect the vertex generator compound and polygon description compound as per the ICE tree below. You should see the basic grid in your viewport.
Attachments
Grid-ICE-Tree.jpg
Grid-ICE-Tree.jpg (77.62 KiB) Viewed 12488 times
The-basic-grid.jpg
The-basic-grid.jpg (140.9 KiB) Viewed 12488 times
Last edited by Daniel Brassard on 02 Dec 2011, 06:26, edited 1 time in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 02 Dec 2011, 06:12

Here we go, we now have a grid to experiment with parametric equations.

Move the sliders and see what each slider do. Familiarize yourself with the various ICE compounds.
Enter some values in the y port of the scalar to 3D vector node and see what it does.

Tomorrow, I will explain the grid and we will start experimenting with it.

Cheers!
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Hirazi Blue
Administrator
Posts: 5107
Joined: 04 Jun 2009, 12:15

Re: ICE Topology and parametric equations (Warning math here!)

Post by Hirazi Blue » 02 Dec 2011, 10:30

Wow, very interesting (and so far I think I even understood it #:-s )
But while I understand setting up ICE Trees yourself offers added extra educational value,
providing the necessary compounds for download might be helpful in the future.
(if you want/need to place files belonging to this thread on "our" "community-server", please let me know per PM)
;)
Stay safe, sane & healthy!

Chris_TC
Posts: 411
Joined: 22 Mar 2010, 17:43

Re: ICE Topology and parametric equations (Warning math here!)

Post by Chris_TC » 02 Dec 2011, 10:34

Very cool thread. Having all of these objects with animatable parameters could be really useful.

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 02 Dec 2011, 16:45

Thanks Hirazi and Chris for your words of encouragement, this is very much appreciated.

My goal is to provide information that will be useful for people interested in ICE Topology. This is not a basic ICE introduction obviously as the reader need some basic knowledge with ICE first (how to create an empty mesh, add an ICE Tree, search factory nodes, create compounds, export compounds and use them in the ICE Tree.)

I will try to be as clear and concise as I can in order to not loose the reader along the way (not a simple feat I may add, specially with math!)

The first few posts were to introduce the process of creating an ICE topology. I created the grid because it is the simpliest of the shapes and the basis of all kind of parametric objects (you will see soon enought how useful the above ICE compounds are).

You may have notice that one of the compound output is in u and v. The same data provided by that compound can be used for the texture space. Useful to know.

There is a set data node with a self.tmp input in my ICE tree. This node is for debugging purpose (i use it to check formula outputs and see if the numbers are not invalids). The node can be deleted before creating your final compounds.

Tonight I will post the "Parametric Sandbox" compound. This is in order to maintain consistency in the tutorial material and provide a stable environment for experimentation. The reader, if they follow the basic instructions, will be able to do experimentation and follow instructions quickly and fairly easily using the compound. The Parametric Sandbox is what is needed to start experimenting. There is a reason in my madness!!! 8-}

I hope this will be a useful thread for other to follow and hopefully, we may see interesting shapes popping up in the future. I do use some of those shapes in architectural representations using my good old plugin. ICE is becomming an extention of my tools because the feedback is immediate and I can modify the shape quickly to my needs. Maybe this thread will sparks some ideas, and yes the shapes can be made animatable! :D

Cheers!
Last edited by Daniel Brassard on 11 Jan 2012, 04:23, edited 1 time in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 03 Dec 2011, 03:01

Before we go further, it's now time to share the sandbox.

Attached is the Parametric_Sandbox compound. It includes all the nodes seen above in a tight little compound ready for experiment. Download and install the compound in your users or workgroup directory.

We will be modifying this compound a lot. Make sure to rename the compound each time you make a new object before exporting and save often!

After you installed it, the compound will appear under topology. To use it, create an empty polygon mesh and create an ice tree. Connect the compound to the ICE tree. You should see a grid appears in the viewport. Explore the nodes and play with the sliders.

Let's move on!
Attachments
Parametric_Sandbox.xsicompound
(50.73 KiB) Downloaded 261 times
Last edited by Daniel Brassard on 05 Dec 2011, 19:03, edited 3 times in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
TwinSnakes007
Posts: 316
Joined: 06 Jun 2011, 16:00

Re: ICE Topology and parametric equations (Warning math here!)

Post by TwinSnakes007 » 03 Dec 2011, 03:03

Dude...I freaking LOVE this stuff. Keep it coming!!!
Last edited by TwinSnakes007 on 03 Dec 2011, 04:14, edited 1 time in total.

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 03 Dec 2011, 03:33

Good to know I am getting some fan! Let's keep it coming then.

Our next object will be the elliptic paraboloid.

The equation is

x = f(u,v) = u
y = g(u,v) = u*u + v*v
z = h(u,v) = v

with u_start = -2, u_end = 2, v_start = -2, v_end = 2

Open the Parametric_Sandbox compound and modify it using two multiply nodes and an add nodes as follows.

Check the viewport! Not bad, we have deformed our grid like a cloth pulled by its corners!

Rename the compound "Elliptic_Paraboloid" and export the compound in your user or workgroup. You now have a new object!

It is that simple!
Attachments
Elliptic_Paraboloid.jpg
Elliptic_Paraboloid.jpg (60.67 KiB) Viewed 5439 times
Elliptic_Paraboloid2.jpg
Elliptic_Paraboloid2.jpg (92.78 KiB) Viewed 5439 times
Last edited by Daniel Brassard on 05 Dec 2011, 19:08, edited 3 times in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 03 Dec 2011, 03:50

The Hyperbolic paraboloid!

Next object is a variation of the previous object. It is also called the "saddle"

The parametric equations are as follows:

x = f(u,v) = u
y = g(u,v) = u*u - v*v (notice the difference from the previous object definition!!)
z = h(u,v) = v

the domain (bounding box) will be:

u_start = -1
u_end = 1
v_start = -1
v_end = 1

Open the elliptic paraboloid node and replace the add node with a substract node.

Rename the compound "Hyperbolic_Paraboloid" or "Saddle" and export it.

Voila! New object!
Attachments
Hyperbolic_Paraboloid.jpg
Hyperbolic_Paraboloid.jpg (75.39 KiB) Viewed 5437 times
Last edited by Daniel Brassard on 05 Dec 2011, 19:07, edited 2 times in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 03 Dec 2011, 03:59

For the next object, we will be using polar coordinates. The link below explain what polar coordinates are.

http://mathworld.wolfram.com/PolarCoordinates.html

Briefly, polar coordinates express x,y,and z using radius and angle.

Here is an illustration from Wikipedia for polar coordinates in two dimension.
Attachments
Polar-coordinate.jpg
Polar-coordinate.jpg (4.56 KiB) Viewed 5435 times
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 23:38
Location: St. Thomas, Ontario
Contact:

Re: ICE Topology and parametric equations (Warning math here!)

Post by Daniel Brassard » 03 Dec 2011, 04:07

Before we go further, note that the Cos, Sin and Tan factory ICE nodes accept degrees as input angles. Our formulas are providing numbers in radians. We will need to convert the numbers from radians to degrees before inputting to Cos, Sin or Tan nodes. To simplify the process, here three little compounds that do just that, accept radians as input.

Install them in your users or workgroup directory.
Attachments
Tan_rad.xsicompound
(5 KiB) Downloaded 205 times
Sin_rad.xsicompound
(5 KiB) Downloaded 211 times
Cos_rad.xsicompound
(5 KiB) Downloaded 219 times
Last edited by Daniel Brassard on 05 Dec 2011, 19:12, edited 3 times in total.
$ifndef "Softimage"
set "Softimage" "true"
$endif

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests