Creating Features Based on Graphs or Equations
January, 2003, by Ed Muirhead
Say you need to add a cut with a sinusoidal profile, or you need a raised profile based on a graph ... how do you model these? Use sketch relations or datum graphs to control these features...
This example uses the trajpar variable to drive a sinusoidal cut round a cylinder.
- Insert > Cut > Variable Section Sweep - Pivot Dir.
- Select a datum normal to the path of the cut (in this case a datum on the end surface).
- Select or Make Datum for Sketch Plane and orientation plane.
- Pick the Outer Diameter as a reference and draw a circle on the OD - this is the trajectory.
- Select Done when prompted for another trajectory.
- Next, sketch the cross-section of the feature, including an offset dimension from the trajectory. In this case it's a square cut 5 x 5 with offset of 2 from the trajectory.

- Then add the smart bit: Sketch > Relations - add a sine equation:
sd# = sin (trajpar * 360 * N) * H where: sd# is the name of the offset dimension (find this with Info > Switch Dimensions) N is the number of sine waves around the circumference H is the height of the sine wave
- Complete the sketch.
This example uses a datum graph to drive the shape of a protrusion round a cylinder.
- Insert > Datum > Graph (Name the graph appropriately).
- Sketch > Co-ordinate System - place the graph origin point.
- Sketch the graph profile adding dimensions as required. (Note the overall sizes of the graph.)
- Insert a Variable section sweep as in steps 1-6 above, sketching the required outline.

- This time, add an evalgraph equation in Sketch > Relations:
sd#=evalgraph("graph_name", trajpar * D) / (R/N) where: sd# is the sketcher dimension being controlled "graph_name" is the graph feature name D is the domain of the graph (maximum x-value) R is the range (maximum y-value) N is the normalizer, or actual desired range of the dimension
For example, if your graph is drawn with x in the range 0-50 then D=50 (trajpar only goes 0-1).
Other examples on the web...
PTC - Creating a wave washer
PTC - Creating sweeps with graph features
See more Pro/E and Intralink tips, tricks and links at Pro/E Help