Creating a Bezier Curve in ICEM SURF


This tutorial shows you how to create your first curve in ICEM Surf. Start by creating a new file using FileNew. Save the file as CURVE1. Before you go any further, check that in the Display settings curve segments are shown as solid lines and control point hulls as dotted lines. Set segment end points as X and Control points as circles. Do this for unselected and selected curves.
Secondly go to WindowsPreferencesSelection and make sure that Windows Object and Position are ticked on. This means that the SelectionPosition and SelectionObject windows will come up when creating or modifying geometry.
Pick side view and side plane.
To create a single curve go to CurveSegmentCreate 2Points. Set Order to 2.
In the Selection Position menu pick Plane Point. This means that points picked in the graphics area will be on the current plane i.e. in this case the side work plane.
Then pick two locations in the graphics window.
This has created a straight line on the side work plane.
If you get the message “Plane is normal to screen” this means that the work plane is not in the same orientation as the view, so check that you have both the side plane and view picked. If you have, then both sides of the side icon will be lit.
The curve segment that you have now created is known as a Bezier curve segment (details of the various types of object will be covered in a future ICEM Surf tutorial). Bezier curves are manipulated using control points. The number of control points is known as the order of the curve. In this case we have order 2 i.e. 2 control points.
If you click on Modify in the 2 Points menu this will take you to the CurveSegmentModify CtrlP menu.
Make sure that all the boxes are unticked. Now tick Model and Y. This will ensure that the control points cannot move in the Y direction and so the curve segment will always lie on the side work plane. If you forget to do this and the view changes accidentally, the control points will move out of the plane. Notice that the Order of the curve segment is 2. You will see that there are 2 control points on the curve segment which coincide with the ends of the curve. To move these, pick and drag them with the left mouse button held down.
Increase the order of the curve segment to 3 by hovering over the curve segment and typing 3. Alternatively you can use the pulldown in the control point menu. There are now 3 control points that you can manipulate. Pulling the middle point results in a simple shape. If the control point is moved normal to the curve segment then the curve segment is approximately a circular arc.
ICEM Surf allows us to simultaneously check the quality of curves and surfaces while modifying the geometry. To check the quality of the curve segment you can display curvatures on the segment. Go to DiagnosisCurvature. The curvature menu should open on the left side of the ICEM Surf window. It is best to keep all diagnosis menus to the left and all geometry functions to the right.
In the Curvature menu pick Curve, then pick the curve segment on screen. Set the scale to 100 initially. OK the ObjectSelection window and then OK the Curvature menu. You should see the curvature spikes on screen. If not, increase the scale.
Min and Max allow us to see the minimum or maximum radii values. On completely freeform curve segments this information is usually not required. Count controls the number of spikes shown, Scaling controls the lengths of the spikes.
By default, the spikes are proportional to the local curvature values. Curvature is the inverse of the radius i.e. curvature = 1/radius. You can change this to radius using DiagnosisParameter from the top menu bar, but most of the time it is best to display curvature rather than radius.
Invert will turn the curvature spikes around the other way.
Click Continue to wake up the control point menu. When the curve segment is very flat then the curvature values will be small. As the curve segment tightens then the curvature will increase. We can see this with the order 3 curve segment by pulling the middle control point up and down.
If you pull the middle control point towards one end then you’ll see that at this end the curve becomes tighter and so the curvature spikes get longer.
Bunching control points towards the regions where you want a tighter shape is a good way of achieving more complex shapes with the minimum order. However, for class A surfacing it is best not to overdo bunching. In class A surfacing the control points should be fairly uniformly spaced with moderate bunching towards regions of high curvature (I'll cover this in more detail in future ICEM Surf tutorials).
Notice that order 3 curve segments can only be convex or concave. They cannot have any inflexions i.e. where the curvature switches from one side to the other.
Now increase the order to 4. As we did when changing to order 3, hover the cursor over the curve segment and press “4”.
Order 4 allows to create a curve segment with a single inflexion. You will find that, as we increase the order further, the curve segment will be able to inflect more than once.
So increasing the order gives us more flexibility of shape but the downside is that unwanted fluctuations or inflections can occur.
In order to create good quality curve segments we always start with a low order and gradually increase the order as we develop the shape.
We have seen that the end control points control the ends of the curve segment. The first and second control points from each end control the end tangents i.e. the angles of the end.
Tick Tangent on and the last two points from each end will only move up and down the end tangent lines. Watch the end curvature spike. This is normal to the curve end. As we move the 2nd point up and down, the direction of the spike does not change. In other words the end tangent condition stays the same.
The value of curvature at each end is controlled by any of the last 3 control points. Take Tangent off and put Model Y back on. Notice that if the 3 points lie on a straight line then the end curvature is zero. In other words the very end of the curve segment is completely flat.
Lets increase the order to 6 by hovering over the curve segment and then pressing “6” on the keyboard.
We can now hold the end curvature values by ticking Tangent and Curvature on. Moving any of the last 3 points will not change the end curvature value.
Now increase the order to 8 and fix Torsion or G3 as well. Torsion is the slope of curvature at the curve end. It is controlled by the last 4 points. As we move the control points with G3 constrained, watch carefully how the end slope of the curvature spikes does not change. You may need to increase the count to see this clearly.
If you enjoyed this ICEM Surf tutorial or have any suggestions for future tutorials then please let me know.
Secondly go to WindowsPreferencesSelection and make sure that Windows Object and Position are ticked on. This means that the SelectionPosition and SelectionObject windows will come up when creating or modifying geometry.
Pick side view and side plane.
To create a single curve go to CurveSegmentCreate 2Points. Set Order to 2.
In the Selection Position menu pick Plane Point. This means that points picked in the graphics area will be on the current plane i.e. in this case the side work plane.
Then pick two locations in the graphics window.
This has created a straight line on the side work plane.
If you get the message “Plane is normal to screen” this means that the work plane is not in the same orientation as the view, so check that you have both the side plane and view picked. If you have, then both sides of the side icon will be lit.
The curve segment that you have now created is known as a Bezier curve segment (details of the various types of object will be covered in a future ICEM Surf tutorial). Bezier curves are manipulated using control points. The number of control points is known as the order of the curve. In this case we have order 2 i.e. 2 control points.
If you click on Modify in the 2 Points menu this will take you to the CurveSegmentModify CtrlP menu.
Make sure that all the boxes are unticked. Now tick Model and Y. This will ensure that the control points cannot move in the Y direction and so the curve segment will always lie on the side work plane. If you forget to do this and the view changes accidentally, the control points will move out of the plane. Notice that the Order of the curve segment is 2. You will see that there are 2 control points on the curve segment which coincide with the ends of the curve. To move these, pick and drag them with the left mouse button held down.
Increase the order of the curve segment to 3 by hovering over the curve segment and typing 3. Alternatively you can use the pulldown in the control point menu. There are now 3 control points that you can manipulate. Pulling the middle point results in a simple shape. If the control point is moved normal to the curve segment then the curve segment is approximately a circular arc.
ICEM Surf allows us to simultaneously check the quality of curves and surfaces while modifying the geometry. To check the quality of the curve segment you can display curvatures on the segment. Go to DiagnosisCurvature. The curvature menu should open on the left side of the ICEM Surf window. It is best to keep all diagnosis menus to the left and all geometry functions to the right.
In the Curvature menu pick Curve, then pick the curve segment on screen. Set the scale to 100 initially. OK the ObjectSelection window and then OK the Curvature menu. You should see the curvature spikes on screen. If not, increase the scale.
Min and Max allow us to see the minimum or maximum radii values. On completely freeform curve segments this information is usually not required. Count controls the number of spikes shown, Scaling controls the lengths of the spikes.
By default, the spikes are proportional to the local curvature values. Curvature is the inverse of the radius i.e. curvature = 1/radius. You can change this to radius using DiagnosisParameter from the top menu bar, but most of the time it is best to display curvature rather than radius.
Invert will turn the curvature spikes around the other way.
Click Continue to wake up the control point menu. When the curve segment is very flat then the curvature values will be small. As the curve segment tightens then the curvature will increase. We can see this with the order 3 curve segment by pulling the middle control point up and down.
If you pull the middle control point towards one end then you’ll see that at this end the curve becomes tighter and so the curvature spikes get longer.
Bunching control points towards the regions where you want a tighter shape is a good way of achieving more complex shapes with the minimum order. However, for class A surfacing it is best not to overdo bunching. In class A surfacing the control points should be fairly uniformly spaced with moderate bunching towards regions of high curvature (I'll cover this in more detail in future ICEM Surf tutorials).
Notice that order 3 curve segments can only be convex or concave. They cannot have any inflexions i.e. where the curvature switches from one side to the other.
Now increase the order to 4. As we did when changing to order 3, hover the cursor over the curve segment and press “4”.
Order 4 allows to create a curve segment with a single inflexion. You will find that, as we increase the order further, the curve segment will be able to inflect more than once.
So increasing the order gives us more flexibility of shape but the downside is that unwanted fluctuations or inflections can occur.
In order to create good quality curve segments we always start with a low order and gradually increase the order as we develop the shape.
We have seen that the end control points control the ends of the curve segment. The first and second control points from each end control the end tangents i.e. the angles of the end.
Tick Tangent on and the last two points from each end will only move up and down the end tangent lines. Watch the end curvature spike. This is normal to the curve end. As we move the 2nd point up and down, the direction of the spike does not change. In other words the end tangent condition stays the same.
The value of curvature at each end is controlled by any of the last 3 control points. Take Tangent off and put Model Y back on. Notice that if the 3 points lie on a straight line then the end curvature is zero. In other words the very end of the curve segment is completely flat.
Lets increase the order to 6 by hovering over the curve segment and then pressing “6” on the keyboard.
We can now hold the end curvature values by ticking Tangent and Curvature on. Moving any of the last 3 points will not change the end curvature value.
Now increase the order to 8 and fix Torsion or G3 as well. Torsion is the slope of curvature at the curve end. It is controlled by the last 4 points. As we move the control points with G3 constrained, watch carefully how the end slope of the curvature spikes does not change. You may need to increase the count to see this clearly.
If you enjoyed this ICEM Surf tutorial or have any suggestions for future tutorials then please let me know.