Cross Product

This demonstrates using the cross product in an expression in prepping normals for copy stamping.

Mathematics and Houdini.

Date Created:Friday February 16th, 2007 06:31 PM
Date Modified:Saturday August 02nd, 2008 01:05 PM

Cross Product - test.3daet

Cross Product - test.3daet

First add normals using a Point SOP.
Cross Product - test.3daet

Then shift the point numbers using a Sort SOP. This shifts the point number 0 to 1, 1 to 2 etc...
Cross Product - test.3daet

Now, using another point SOP, we take the difference of the point position of the shifted points and the original points. This makes it so point 1 will point directly at point 2, and so on.
Cross Product - test.3daet

We now use the cross product on the vector from the pointed normals, and the original normals, and extract the vector 0, 1 or 2 depending on which value we need. We can extract a vector using square braces, for example, putting [0] on the end of a function that returns a vector will return the first component in that vector. 0 is for x, 1 for y, and 2 for z. This value is also normalized between 0 and 1 using the normalize() function.


Cross Product - test.3daet

A brief overview of the network.
Cross Product - test.3daet

Download: crossproduct.hip 68 KB

Please login or Click Here to register for downloads
Creative Commons License
Cross Product by Dan Lynch
is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License
Based on a work at
Permissions beyond the scope of this license may be available at