Monday, September 12, 2011

A Tale of Two Normals

As anyone who has used Revit to model geometry knows it does not really seem to care about "normals", which if you're familiar with most other 3D modeling software you know exactly what Normals are, even in Sketch-Up! But lets be realistic here, any 3D modeling software has to have surface normals, and occasionally even Revit can be bent to your will....

So, here's the scenario, lets say you have a solid box. If you create a spherical void that cuts the solid, you would expect the result in the second image based on how Revit "typically" works.

But what if what you were looking for was slighting different, what if you wanted the part of the solid that is being subtracted? Normally in the Revit "world" you would say you need to create a void that is on the "outside" rather then just a spehere, to get the result in the third image.

What is I told you that you can create the condition with the same spherical void! You might say, what! How! Well, its seems that normals sometimes do matter in Revit.

To achieve the result in the third image its is all about how you draw the arc that creates the sphere. In the first example the arc is drawn counter-clockwise from the "top" of the axis to the "bottom" of the axis. To get the result in the third image the arc must be drawn clockwise from "bottom" to the "top" of the axis. In this case the differing result is because the normal(s) of the surface that make the void are different based on the direction of the arc, which is controlled by how you draw it.

An interesting little "feature" in Revit/Vasari (to be honest I did this in Vasari), your mileage may vary on what you get depending on what you're doing, but it could be handy and it shows that it pays to pay attention to what direction you draw your lines, even in Revit!

2 comments:

John Fout said...

interesting. i noticed that a point hosted to a hosted point on a ref line drawn from left to right(thru two adaptive points) will give a positive value for offset upwards from the plane it was hosted to and if the ref line is drawn right to left it will give a negative offset value to move in the same direction...mysteries abound!

Robert said...

Yes, reference lines and planes have always determined the direction of extrusion because the reference elements have a "normal". However geometry itself regardless of extrusion direction should not behave in the way the sphere does in my example.