Param Win PDF
Param Win PDF
Param Win PDF
Elements/Direct Drafting
Windows User Interface
Creo Elements/Direct Drafting 20.3.2.0
Copyright © 2020 PTC Inc. and/or Its Subsidiary Companies. All Rights Reserved.
User and training guides and related documentation from PTC Inc. and its subsidiary companies (collectively
"PTC") are subject to the copyright laws of the United States and other countries and are provided under a
license agreement that restricts copying, disclosure, and use of such documentation. PTC hereby grants to the
licensed software user the right to make copies in printed form of this documentation if provided on software
media, but only for internal/personal use and in accordance with the license agreement under which the
applicable software is licensed. Any copy made shall include the PTC copyright notice and any other
proprietary notice provided by PTC. Training materials may not be copied without the express written consent
of PTC. This documentation may not be disclosed, transferred, modified, or reduced to any form, including
electronic media, or transmitted or made publicly available by any means without the prior written consent of
PTC and no authorization is granted to make copies for such purposes. Information described herein is
furnished for general information only, is subject to change without notice, and should not be construed as a
warranty or commitment by PTC. PTC assumes no responsibility or liability for any errors or inaccuracies
that may appear in this document.
The software described in this document is provided under written license agreement, contains valuable trade
secrets and proprietary information, and is protected by the copyright laws of the United States and other
countries. It may not be copied or distributed in any form or medium, disclosed to third parties, or used in any
manner not provided for in the software licenses agreement except with written prior approval from PTC.
PTC regards software piracy as the crime it is, and we view offenders accordingly. We do not tolerate the
piracy of PTC software products, and we pursue (both civilly and criminally) those who do so using all legal
means available, including public and private surveillance resources. As part of these efforts, PTC uses data
monitoring and scouring technologies to obtain and transmit data on users of illegal copies of our software.
This data collection is not performed on users of legally licensed software from PTC and its authorized
distributors. If you are using an illegal copy of our software and do not consent to the collection and
transmission of such data (including to the United States), cease using the illegal version, and contact PTC to
obtain a legally licensed copy.
Important Copyright, Trademark, Patent, and Licensing Information: See the About Box, or copyright
notice, of your PTC software.
PTC software products and software documentation are “commercial items” as that term is defined at 48 C.F.
R. 2.101. Pursuant to Federal Acquisition Regulation (FAR) 12.212 (a)-(b) (Computer Software) (MAY 2014)
for civilian agencies or the Defense Federal Acquisition Regulation Supplement (DFARS) at 227.7202-1(a)
(Policy) and 227.7202-3 (a) (Rights in commercial computer software or commercial computer software
documentation) (FEB 2014) for the Department of Defense, PTC software products and software
documentation are provided to the U.S. Government under the PTC commercial license agreement. Use,
duplication or disclosure by the U.S. Government is subject solely to the terms and conditions set forth in the
applicable PTC software license agreement.
PTC Inc., 121 Seaport Blvd, Boston, MA 02210 USA
Contents
Preface ......................................................................................................................8
Introduction.................................................................................................................9
Roadmap ...........................................................................................................10
What is Parametric Design? ................................................................................10
Starting Parametric Design.................................................................................. 11
Basic Working Methods....................................................................................... 11
Learning to Use Parametric Design ......................................................................13
Generating Variations ................................................................................................14
Roadmap ...........................................................................................................15
Load the Master Part...........................................................................................15
List the Current Constraints .................................................................................16
Change Parameter Values...................................................................................16
Solve for the Variation .........................................................................................17
Saving and Restoring the Parameter Value Table ..................................................18
Working with Parametric Design .................................................................................20
Roadmap ...........................................................................................................21
Part Preparation .................................................................................................21
Assigning Constraints .........................................................................................25
Solve .................................................................................................................32
Application .........................................................................................................36
Constraint Types .......................................................................................................41
Constraint Types ................................................................................................42
Angle .................................................................................................................42
Collinear ............................................................................................................44
Dimension..........................................................................................................44
Distance ............................................................................................................46
Fillet ..................................................................................................................49
Horizontal ..........................................................................................................50
Mirror.................................................................................................................51
Parallel ..............................................................................................................52
Perpendicular .....................................................................................................54
Point on .............................................................................................................55
Reference Element .............................................................................................56
Reference Point..................................................................................................57
Same Distance ...................................................................................................57
Same Size .........................................................................................................58
Size ...................................................................................................................59
Slope .................................................................................................................59
Contents 5
Example 4: Macros ........................................................................................... 126
Example 5: Rigid Bodies ................................................................................... 132
Appendix A.Tutorial ................................................................................................. 136
Exercise 1 ........................................................................................................ 137
Exercise 2 ........................................................................................................ 140
Hints and Tips .................................................................................................. 143
Appendix B.Parametric Design Command Syntax...................................................... 145
PD_AUTO_ANGLE_TOLERANCE function ........................................................ 147
PD_AUTO_SAME_DISTANCE_TOLERANCE function ....................................... 147
PD_AUTO_SYMMETRY_COLOR function......................................................... 147
PD_AUTO_SYMMETRY_LINE function ............................................................. 147
PD_AUTO_SYMMETRY_LINETYPE function..................................................... 148
PD_AUTO_TANGENT_TOLERANCE function ................................................... 148
PD_AUTO_ZERO_DISTANCE_TOLERANCE function ....................................... 148
PD_CLEAN_DRAWING command .................................................................... 148
PD_DEFAULT_DIM_COLOR command ............................................................. 149
PD_DEFAULT_DIM_TEXT_SIZE command ....................................................... 149
PD_FIX command ............................................................................................ 150
PD_FREE command......................................................................................... 156
PD_HIDE_DIMENSIONS command................................................................... 158
PD_INFO_CONSTRAINT function ..................................................................... 158
PD_INFO_ELEMENT function ........................................................................... 158
PD_MAKE_DIMENSIONS command ................................................................. 158
PD_MODIFY_DIMENSION command................................................................ 159
PD_NEW_C_LINE_COLOR function ................................................................. 159
PD_NEW_C_LINE_LINETYPE function ............................................................. 159
PD_NEW_C_LINE_VISIBILITY function............................................................. 160
PD_NEW_POINT_COLOR function ................................................................... 160
PD_NEW_POINT_LINETYPE function............................................................... 160
PD_NEW_POINT_VISIBILITY function .............................................................. 160
PD_PARAM_ADD command ............................................................................. 160
PD_PARAM_FIX command............................................................................... 161
PD_PARAM_INQ function ................................................................................. 161
PD_PARAM_REMOVE command...................................................................... 162
PD_PARAM_SAVE function .............................................................................. 163
PD_PARAM_SHOW function............................................................................. 163
PD_PREVIEW_COLOR function ....................................................................... 163
PD_RESOLVE command .................................................................................. 163
PD_RESOLVE_MERGE_TOLERANCE function................................................. 164
PD_RIGID_ADD command ............................................................................... 164
PD_RIGID_REMOVE command ........................................................................ 165
PD_RIGID_REFRESH_TABLE function ............................................................. 165
PD_RIGID_SHOW function ............................................................................... 165
PD_SHOW function .......................................................................................... 165
PD_SHOW_CLEAR function ............................................................................. 167
PD_SHOW_COLOR function ............................................................................ 168
Contents 7
Preface
This manual describes the Creo Elements/Direct Drafting Parametric Design &
Drafting System (Parametric Design). Parametric Design adds full constraint-
based and parametric modeling capabilities to Creo Elements/Direct Drafting
without imposing limitations on your current working methods. Any existing Creo
Elements/Direct Drafting drawing can be used with Parametric Design, and
drawings created by the software are fully compatible with Creo Elements/Direct
Drafting.
Parametric Design addresses the needs of the Design Engineer or Industrial
Designer as well as the Draftsperson. For the Designer, the software provides a
complete set of tools for assigning and evaluating sets of parameters and
constraints on an existing part. For the Draftsperson, Parametric Design provides
an efficient interface for generating variation parts from pre-constrained "master"
parts.
Any Parametric Design user should be familiar with Creo Elements/Direct
Drafting itself for the best results. If you are not familiar with Creo Elements/
Direct Drafting, we recommend that you refer to the Creo Elements/Direct
Drafting User's Guide manual before continuing with Parametric Design.
9
Roadmap
Read this chapter first. It overviews the Parametric Design software, introduces
several important terms, and directs you to the sections that tell you how to how to
start Parametric Design and how to use it.
Introduction 11
input appear in a table on this menu along with their current values. To generate
variations of the part, the Draftsperson sets the appropriate values for any or all of
these parameters and then issues a Solve command. Parametric Design then
generates the variation, which can be saved, copied, or modified further.
Preparation
Model inconsistencies can cause unexpected results in Parametric Design and
should usually be resolved before assigning constraints to a part. The Clean
command checks parts for inconsistencies such as extra points and duplicated or
stacked geometry; and optionally adjusts or removes the offending elements.
Parametric Design operates on drawing elements within its zone. The zone may
contain an entire part or selected elements of a part. The Zone commands select
elements for the zone.
Assign Constraints
Before you can use Parametric Design to generate variations from a part,
constraints must be assigned to the part. These constraints must be sufficient to
tell the parametric solver exactly what to do with each element in the zone to
generate the variation. If elements are not constrained or are incorrectly
constrained, the solver will not be able to generate the variation.
Constraints may be assigned manually or automatically. Typically, the designer
uses a combination of methods as follows:
1. Assign a full set of constraints that completely define the part's current
configuration:
a. Manually assign a few reference constraints and perhaps symmetry line
constraints to important elements in the part.
b. If large sections of the part's geometry can move together as a single unit,
collect these sections into rigid bodies using the Generate Rigids
command. This can greatly reduce the number of constraints needed on the
part.
c. Use Complete to automatically assign a reasonable set of constraints to the
remaining elements.
Introduction 13
2
Generating Variations
Roadmap..................................................................................................................15
Load the Master Part .................................................................................................15
List the Current Constraints........................................................................................16
Change Parameter Values .........................................................................................16
Solve for the Variation................................................................................................17
Saving and Restoring the Parameter Value Table.........................................................18
Generating Variations 15
List the Current Constraints
To create variations from a master part, display the Current Constraints dialog
box. Then click Advanced to display the parameter value table. When you load a
master part into Creo Elements/Direct Drafting, one or more entries appear in this
table. Each entry contains a parameter name and a value. The parameter names
correspond to elements in the master part that you can modify. The value entries
represent the values that will be assigned to the corresponding drawing elements
by the next Solve command.
Note
If the icons produced by Show are too large or too small, you can resize them
using the Icon Setting dialog box.
Preview
By default, the solver works in Preview mode. The variation is computed, but is
not actually created. Instead, an outline of the variation is superimposed over the
current part. This gives you a good idea of what the new variation will look like
without creating any new geometry or overwriting any existing geometry. If the
preview indicates that the new variation is acceptable, you can actually create the
new variation by re-solving with the Keep or No Keep options. The preview lines
drawn by Preview are removed when you click End.
Keep
The Keep option generates the variation and inserts it into the current part as a
modified copy of the original part. When you click Keep, the solver computes the
variation and temporarily overlays it onto the current part so that you can see what
it looks like. If the variation is not what you want, click End or Undo immediately
to restore the original part. If the variation is OK, click a reference point for
moving the new part, and then drag it to the desired location. After you've inserted
as many copies as you want, click End. The overlaid variation is removed, and
your original part is now restored.
Generating Variations 17
Depending on how the master part was originally constrained, elements of the
master such as construction geometry and dimensioning may not appear in copies
made with No Keep. Also, the copies will not normally be affected by subsequent
Solve commands. To change any of these behaviors, you will most likely need to
modify the zone memberships and/or constraints in the master part. See Working
with Parametric Design on page 20 for details.
No Keep
Select the No Keep option if you want the solver to replace your current part with
the variation. If the result of the solve is not what you expect, click Undo
immediately to restore your original part. You can continue to modify the part by
entering new values into the parameter table and re-solving.
Note
When the parameter value table is written out, all Parametric Design
parameters for the master part are written to the file. A number of these
parameters may be expressions, which are used by the software, but do not
appear in the table. Don't modify or remove these parameters from the output
file!
Generating Variations 19
3
Working with Parametric Design
Roadmap..................................................................................................................21
Part Preparation ........................................................................................................21
Assigning Constraints ................................................................................................25
Solve........................................................................................................................32
Application................................................................................................................36
Part Preparation
Before you assign constraints to a part, two preparation steps should be
considered. The first is to check the part for inconsistencies that can interfere with
constraint generation. The second is to select or restrict the portions of the part to
work with.
Clean, Generate Rigids and Zone handle preparation tasks.
Cleanup
Inconsistencies in a part (lines not quite parallel, small gaps between "tangent"
objects, duplicate elements, etc.) are relatively common, but can cause problems
for any program that must scan the part to extract information. To help eliminate
drawing inconsistencies, Parametric Design provides several tools that can do
limited "cleaning" of parts. The Clean command options are:
• Points
• Duplicate
• Stacked
These commands are functionally independent from the remainder of the
Parametric Design software, and should be thought of as a "preprocess" for parts
that are submitted for parametric design. The Complete and Solve commands have
Points
Model points within a given distance of each other are merged, and the elements
attached to the merged points are adjusted (moved, stretched, or rotated) as
necessary to reflect the new positions of the points. For each set of points to be
merged, Points chooses a location within the given tolerance and moves the points
there. In general, there is no way to accurately predict or control which elements
will be adjusted as a result of the merge. This should not be a limitation in most
cases, however, because the tolerance used is likely to be small. Points is most
useful for removing small gaps between elements. To use Points:
1. Click Parametric, Clean and Points.
2. Enter a distance tolerance (current length units).
3. Points within the given tolerance are marked with a *, and will be merged.
Elements that will be modified as a result of the merge are highlighted.
4. Click Confirm to merge the marked points and modify the highlighted
elements.
Duplicate
Duplicate scans the part for duplicate elements and deletes them. The command
selects which element of a duplicate pair to delete. Elements are considered to be
duplicates if their model points are identical. An exception is made for concentric
circles (only): if the radii of concentric circles are within a given tolerance, they
are treated as duplicates. Normally, Duplicate should be used after Points to clean
up duplicate elements that may result from merging model points. To use
Duplicate:
Stacked
Stacked finds stacked lines and arcs in the current part and calls Split to split them.
To use Stacked:
1. Click Parametric, Clean and Duplicate. Elements to be split are highlighted and
the points to be used for the splits are marked with a *.
2. Click Confirm to split elements.
Assigning Constraints
Constraints can be assigned manually or automatically to elements in the zone.
The constraint assignment tools include:
• Commands:
Command Function
Assign Manually assign constraints to geometric elements.
Free Remove constraints from geometric elements.
Show Show existing constraints by displaying their icons.
Clear Remove selected constraint icons (but not the
Assign
Use Assign to manually assign constraints to elements. To assign a constraint:
1. In Generate Constraints, click the Assign radio button.
2. Select a constraint type from the Types list, e.g., Angle.
3. Select the appropriate geometry for the constraint type.
4. If applicable, enter a value or parameter name for the constraint.
5. Continue to select geometry, select a new constraint type, or click End.
When you successfully assign a constraint, one or more icons appear on the part to
identify the type and identification number of that constraint. The leader line of
the icon is drawn in the same linestyle as the element it references.
Note that when you use Assign to assign a constraint to a piece of geometry, the
constraint is bound to that element and goes with it whenever it is moved. Thus,
you can move elements in a part after assigning constraints without invalidating
the constraints. On the other hand, if you delete a constrained element, all
constraints on that element are removed along with it.
Some constraint types can be given numeric or parametric values when they are
assigned. If you give a numeric value, the constraint will resolve to that value at
solve time. If you give a parameter name or expression, the constraint resolves to
the output of that parameter or expression at solve time. If you choose not to
supply either a value or parameter, the constraint resolves to the corresponding
value that is currently on the element at solve time. If a value or parameter name
is assigned to a constraint, that data will appear along with the constraint's icon
whenever it is displayed. See Parameters on page 64 for a full discussion of how
numeric values and parameters affect constraints.
Free
Free removes constraints from elements. To remove constraints:
Complete
In order for Solve to be able to generate a variation of a part, every element in the
part must be completely constrained. To manually assign a complete set of
constraints to a part of even moderate complexity would be time consuming and
prone to error. The Complete command provides an efficient alternative. Complete
scans the geometry currently in the zone and generates a reasonable set of
constraints that is sufficient to completely constrain the geometry in its current
configuration. In many situations, only a few constraints need be set manually
before running Complete, and a few more changed after Complete is run to
generate the variation. The Strategy for Assigning Constraints on page 30 section
below explains how to best integrate the automatic and manual options.
Simply select Complete and Parametric Design generates constraints. A series of
messages is displayed to inform you of the command's progress. While generating
constraints, Complete may add a number of point elements to your part. These are
needed to fix point-on or reference-point constraints, and should not be removed
from the part. By default, these points are drawn as green ×s, but you can easily
change this to make them nearly invisible. See Parametric Design Defaults on
page 172 for details.
Complete takes into account any constraints that you may have manually assigned
to the part. If these constraints are inconsistent with one another, Complete may
not be able to successfully generate a complete set of valid constraints. In this
case, error messages and highlighting warn you about the problem and help you
track down the cause. The error-trapping mechanism used by Complete is also
used by Solve. See the Solver Errors on page 33 section later in this Chapter for
more information.
Ban
Ban works exactly like Free except that in addition to removing a constraint, Ban
prevents that constraint from being re-assigned by subsequent Complete
commands. Essentially, Ban forces a constraint to remain unset. To re-assign a
banned constraint, you must assign it manually with Assign.
Note
Do not manually assign constraints designed to move elements away
from their current location before running Complete. For example,
don't assign a Vertical constraint to horizontal lines in the part before
you use Complete. Such constraints make the extraction process much
more difficult.
Solve
All access to the Parametric Design solver is through the Solve options, which are
available on all Parametric Design menus. They are:
• Preview
• Keep
• No Keep
When you select a Solve option, the solver finds all the geometry currently in the
zone, and evaluates all constraints on that geometry. If all the constraints can be
successfully evaluated, the solver generates the variation specified by the
constraints. Depending on the option selected, the solver can either create
geometry for a new variation or simply preview it. The sections below describe
the Solve options.
Preview
By default, Solve works in Preview mode. The variation is computed, but is not
actually created. Instead, an outline of the variation is superimposed over the
current part. This gives you a good idea of what the new variation will look like
without creating any new geometry or overwriting any existing geometry. If the
preview indicates that the new variation is acceptable, you can actually create the
new variation by re-solving with the Keep or No Keep options. The preview lines
are drawn in the current PD_PREVIEW_COLOR color (MAGENTA by default).
Preview lines are removed from the viewport by the next Solve command or when
you click End.
Keep
The Keep option generates the variation and inserts it into the current part as a
modified copy of the original part. When you select Keep, the solver computes the
variation, temporarily overlays it onto the current part, and executes a Move
Multiple command to allow you to copy the variation.
No Keep
Select the No Keep option if you want the solver to replace your current part with
the variation. If the result of the solve is not what you expect, click Undo
immediately to restore your original part. You can continue to modify the part
after solving with No Keep by assigning new values to the constraints and re-
solving.
Solver Errors
The solver or automatic constraint generator will fail without generating a
complete solution if incomplete or inconsistent constraints exist on a part. Solver
errors can result from any of the following conditions:
• The solver has successfully evaluated all the constraints it could find, but
some elements cannot be resolved. More constraints are needed in order to
completely constrain the part and generate a variation.
• A constraint has been violated while determining the new geometry. This is
usually due to contradictory constraints on one or more elements in the part.
For example, if two lines are constrained with different Slope constraints and
are also constrained to be parallel, one of these constraints cannot be satisfied.
• An expression has been violated while determining new geometry. As with a
violated constraint, a violated expression occurs when the result of a
parametric expression contradicts an existing constraint.
When the solver or automatic constraint generator fails due to one of the above
problems, a descriptive message is written to the prompt line and the solver goes
into preview mode to show the status of the solution at the time the error was
encountered. Elements that were successfully solved are displayed in their new
Application
There are two basic uses that the Designer will have for Parametric Design. The
first is to create master parts that will be used as templates for families of parts.
The second is to perform modifications that are beyond the normal scope of the
Creo Elements/Direct Drafting Modify tools. The sections below describe each
application.
Parameterize Constraints
Two basic design goals for any master part should be robustness and ease of use.
Parameters (described fully in Parameters on page 64) help you achieve both
goals. By defining parametric values for some or all of the appropriate constraints
on your part, you can reduce the number of constraints that the end user needs to
modify directly in order to produce the variation. Other constraints can be
parameterized to depend on the values supplied by the user. In complex situations,
expressions and macros can be supplied to check or filter the user's input before
acting on it.
If the constraints that must be modified by the user are themselves parameterized,
the user need not reassign these constraints. Instead, they will appear in the
parameter value table, which provides a much simpler interface for the occasional
user.
For example, consider the following master part, which was used to generate the
variations shown in Figure 1. Master Part for Rocker Arm on page 38:
For this part, we want to generate variations in which only the configuration of the
large arm changes. In all variations, we know that the outer radius of the arm
should depend on the inner radius. Rather than require the end user to calculate
this relationship and manually Assign both radii for each variation, we use
parameters to do most of the work.
After constraining the part normally, we assign a dimensional constraint to the
inner radius and give it the parameter name I_rad The outer radius also gets a
dimensional constraint, named O_rad. Figure 1. Master Part for Rocker Arm on
page 38 shows the constraints we supplied for this master part. The remainder
were generated by Complete.
Using the parameter definition table, we define the constraint represented by the
parameter O_rad to be (1.65 * I_rad). This defines the relationship between the
two dimensions. As a result, the user only needs to give a value for I_rad to
generate the variation. The I_rad parameter is available in the parameter value
table, so the user can easily change it and then Solve for variations.
Another advantage of parameterization is that the parameter values can be stored
and recovered for later use. The Save and Input functions in the Current
Constraints dialog box allow you to write out the current parameter value table to
a file and later restore it. This feature lets you build a "library" of value tables that
can be used to drive the master part. The advantage of this is that a series of
standard parts based on a single master part can be stored as a single MI file (the
constrained master part) and a collection of parameter value files. This
arrangement takes up much less disk space than if an individual MI file were
stored for each part in the series, and is much easier to update if the geometry of
the master part needs to be changed. To recreate any member of the series, the
user need only load the master part, Input the desired parameter value table, and
Solve. Generating Variations on page 14 describes this functionality.
Advanced Modification
A second application for Parametric Design is to do modifications that cannot be
easily done with the standard Creo Elements/Direct Drafting Modify tools.
The procedure for doing modifications is very similar to that for generating master
parts, but since you are generally working for yourself on a part that you have
designed yourself, the process can be less formal. Here are a few differences:
• Geometry cleaning may not be as important for this application, especially if
you've designed the original part yourself and know that it is correct.
• Constraints can be assigned more quickly. In many cases, it is sufficient to
anchor a few elements with Refelem constraints, run Complete, and
immediately modify for the variation you want.
• When you have the modification you want, make sure to free all constraints
from the variation and remove it from the zone. The zone and constraint data
This chapter describes the usage and function for each of the available constraint
types.
41
Constraint Types
Each constraint type is identified by a unique icon as you assign it to the master.
Figure 3. Constraint Icons on page 42 shows these icons. You should take a few
minutes to make sure you recognize these icons and the constraint types they
represent.
Angle
You assign Angle constraints to pairs of linear elements. At solve time, the relative
angle between the elements in each angle-constrained pair will be adjusted as
needed to match the angle specified by the constraint. If this angle cannot be
achieved due to other constraints, the solve fails.
To assign an angle constraint:
Application Notes
An Angle constraint will replace an existing Parallel or Perpendic constraint on a
given pair of linear elements. This is because Parallel and Perpendic are simply
special cases of the Angle constraint.
The angle between the elements in an Angle pair is given as the difference
between the slopes of the two elements (see Slope on page 59). If the Angle
constraint is parameterized, this angle can be accessed via expression by
referencing the parameter name.
Complete will only extract angle constraints for line elements that share an
endpoint or fillet. If you are assigning angle constraints manually, the members of
the Angle pair need not be connected, Figure 4. Angle-Constrained Lines on page
43.
Constraint Types 43
Collinear
The Collinear constraint forces a pair of linear elements to become or remain
collinear during the solve process. If other constraints on the part prevent the
necessary adjustments to bring the pair together, the solve fails.
To assign Collinear constraints:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Collinear.
2. Click Apply.
3. Click each of the two linear elements to be constrained.
4. Click End or go on to the next constraint.
Each linear element in a collinear pair is labeled with the collinear icon, Figure 3.
Constraint Icons on page 42, and a reference number that is unique to the pair.
Application Notes
Lines need not be connected in order to assign or extract a Collinear constraint.
Figure 5. Collinear Lines on page 44 shows a common application for Collinear
constraints: "gluing" a line element to a construction line.
When adjusting a pair of lines to make them collinear, Solve tries to use the
smallest adjustment possible to bring the pair into line.
Dimension
Dimension constraints set the dimensions of elements in the master part to specific
values. Solve will attempt to adjust constrained dimensions to the values given by
the constraint. If this proves impossible, the solve fails.
To assign Dimension constraints:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Dimension.
2. Click Apply.
3. Click on the text of the dimension to be constrained.
• Dimensions that are constrained to keep their current value during the solve
are redrawn in the current icon color (CYAN by default).
• Dimensions that are constrained to a given value are redrawn in the current
icon color (CYAN) and the main dimension text is replaced by the value given
to the constraint.
• Dimensions that are given a parametric value are redrawn in the current icon
color (CYAN) and the main dimension text is replaced by the parameter name,
which is drawn using the dimension's font.
Constraint Types 45
Note
An alternate display style for dimensional constraints can be specified by
calling PD_SHOW_USE_POSTFIX YES, either from the Creo Elements/
Direct Drafting command line or via the pd_def.mac file. This option
causes the parameter value to be written as a postfix to the main dimension
text, which remains unchanged, Figure 6. Dimension Constraints, Alternate
Style on page 46. Both the dimension text and postfix are redrawn in the
current icon color (CYAN), to indicate that a dimensional constraint has been
applied. The Parametric Design postfixes do not interfere with Creo Elements/
Direct Drafting dimension postfixes, if present.
Distance
You can assign a Distance constraint to any pair of geometric elements except for
spline-based entities (rational splines, bsplines, and ellipses). One or both
elements in a distance-constrained pair may also be dimension text, as described
below. At solve time, the relative distance between the extensions of the elements
in the pair is adjusted to the distance specified by the constraint. If this adjustment
cannot be made, the solve fails.
The extension of an element is its construction-geometry equivalent. For example,
the extension of a line segment encompasses any point that would fall on a
collinear construction line. The extension of an arc element encompasses any
point that would fall on a construction circle that shares the arc's center and radius.
Elements in a distance-constrained pair need not be of the same type; e.g., the
distance between a circle and a linear element can be constrained, as can the
distance between a point element and an arc. Figure 7. Distance Determination on
page 47 illustrates how distance is defined for different combinations of elements.
Constraint Types 47
relative to the dimensioned element and relative to other elements in your
drawing. Note that only Distance constraints may be assigned to dimension text;
no other constraint types are allowed.
Application of distance constraints to dimension text must be done manually. The
automatic constraint generator will never attempt to add distance constraints to
dimensions. Because of this, the preferred method for applying distance
constraints to dimensions is to first completely constrain the part without any
constraints on the dimension position and then constrain only those dimension
positions which need to be controlled. To assign the constraint to dimension text,
click on the centerpoint of the main text element. Two constraints are generally
needed to fully constrain the dimension position; one for each degree of freedom.
In most cases, if you add only a single distance constraint, subsequent solves will
fail. Construction geometry can often be helpful for providing additional "distance
markers" in this application.
Application Notes
Several powerful parametric applications are made possible by distance-
constraining strategically located point elements with regard to other elements in a
drawing. In both of the following examples, point elements are created
specifically for use by Parametric Design. The point elements are necessary
because distance constraints can only be assigned to geometric elements, not
model points.
Figure 8. Distance Constraints to Control Line Length on page 48 shows how
distance constraints can be used to force a centerline to grow along with the rest of
a part as it is resized. A point element is first assigned to each end of the
centerline. Each point element is then distance-constrained to the nearest end of
the part, (a). This distance will be maintained as the part is resized, (b).
Fillet
The Fillet constraint can be assigned to any arc that qualifies as a fillet in the
model. To qualify as a fillet, an arc must have at least one line segment or arc
element at each of its ends. When an arc is constrained to be a fillet, Solve will
ensure that it remains tangent to both the elements at its endpoints. The fillet may
change radius, length or orientation as a result of the solve.
To assign Fillet constraints:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Fillet.
2. Click Apply.
3. Click the arc to be constrained.
4. Click an element at each end of the arc to complete the fillet.
5. Click End or go on to the next constraint.
Fillet-constrained arcs are represented by the fillet icon, Figure 3. Constraint Icons
on page 42.
Application Notes
If you assign a Fillet constraint to an arc that has a line segment at each end,
Parametric Design ensures that the angle subtended by the arc will never become
greater than 180° by "flipping" the arc whenever this angle exceeds 180° in a
variation, Figure 10. Adjustment Made for Fillet Constraints on page 50. This
adjustment is only made in the case of an arc with a line segment at each end.
Constraint Types 49
Figure 10. Adjustment Made for Fillet Constraints
If you intend for the angle subtended by the arc to be greater than 180° in the
generated part, do not use a fillet constraint; instead, use two Tangent constraints
to glue the ends of the arc to the appropriate elements.
Parametric Design fillet constraints give you better control than the Creo
Elements/Direct Drafting Fillet Change command for changing fillet radii. By
applying other constraints along with the fillet constraints, you can control exactly
how elements tangent to a fillet adjust to accommodate the new radius.
Horizontal
Line elements that are assigned a Horizontal constraint will be adjusted as
necessary at solve time to become horizontal. If Solve cannot make this
adjustment due to other constraints on the part, the solve fails. A horizontal
constraint will not prevent a linear element from moving or changing length in the
variation; it only adjusts the slope of that element to be zero.
To assign Horizontal constraints:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Horizontal.
2. Click Apply.
3. Click the linear element to be constrained.
4. Click End or assign the next constraint.
The horizontal icon, Figure 3. Constraint Icons on page 42, identifies horizontally
constrained lines.
A given element may have only one of the Horizontal, Vertical, or Slope
constraints assigned to it. If you attempt to assign a Horizontal constraint to an
element that is already assigned a Vertical constraint, the Horizontal constraint will
replace it.
The action taken when you assign a Horizontal constraint to an element that is
already assigned a Slope constraint depends on whether or not the Slope constraint
is parameterized. If it is not, then the Horizontal constraint simply replaces it. If
the Slope constraint is parameterized, however, the Horizontal constraint is not
Mirror
When a pair of elements are constrained to be a Mirror pair, Solve will attempt to
move and/or resize both elements as needed so that their extensions mirror each
other across a specified line of symmetry. The extension of an element is defined
as the element's construction-geometry equivalent. For example, the extension of
an arc is the construction circle that shares the centerpoint and radius of the arc.
The extension of a line element is a collinear construction line.
Both elements in the mirrored pair must be of the same type (e.g., both circles,
both lines, or both points), but need not be the same size. Mirrored lines may be of
different lengths, and an arc and a circle can mirror each other. Spline and
ellipsoid elements are not eligible for mirror constraints, though some measure of
control over these entities can be had by assigning point elements to their control/
interpolation points and then fixing those point elements. Figure 11. Mirrored
Element Pairs on page 51 shows several examples of mirrored element-pairs.
Constraint Types 51
When you successfully assign a mirror constraint, both elements in the mirrored
pair will be labeled with the mirror icon, and the line of symmetry will be labeled
with a symmetry line icon, Figure 3. Constraint Icons on page 42. The icon for
each symmetry line in the model is given a unique number, and the icon for each
member in the mirrored pair contains a number in the form s-p, where s is the
number of the symmetry line that this pair is bound to and p is the unique number
for this mirrored pair.
Application Notes
The symmetry line for a mirror constraint may be any linear element.
Complete only extracts mirrored pairs from areas that are orthogonal to defined
symmetry lines. If your symmetry lines have infinite length (e.g., construction
lines) this is no limitation, but if you choose a finite-length element as a symmetry
line, items must lie completely within the orthogonal boundary in order to be
selected for mirroring. The two line segments on the right of Figure 12. Auto-
selection of Mirrored Pairs on page 52, for example, would not be extracted
because neither falls inside the boundary. If you are assigning mirrored pairs
manually, this limitation does not apply.
Parallel
The Parallel constraint is assigned to pairs of linear elements. A pair of parallel-
constrained elements will be adjusted to be parallel at solve time. If other
constraints on the part prevent the pair from being made parallel, the solve fails.
The positions, lengths, and absolute slopes of parallel elements are not affected by
this constraint and may or may not change during the solve, but the slopes of the
lines will be the same.
To assign Parallel constraints:
Application Notes
A given pair of linear elements may have only one of the Angle, Parallel, or
Perpendic constraints assigned to it. This is because Parallel and Perpendic are
simply special cases of the Angle constraint. If you attempt to assign a Parallel
constraint to a pair of elements that is already assigned a Perpendic constraint, the
Parallel constraint will replace it.
The action taken when you assign a Parallel constraint to a pair of elements that is
already assigned an Angle constraint depends on whether or not the Angle
constraint is parameterized. If it is not, then the Parallel constraint simply replaces
it. If the Angle constraint is parameterized, however, the Parallel constraint is not
assigned. Instead, the value of the parameter is adjusted to 0° or 180° (effectively
parallel). This is done so as not to invalidate any expressions that may reference
the existing angle parameter.
Parallel lines need not describe an orthogonal area in the part; Figure 13. Parallel
Lines on page 53 shows two sets of parallel lines.
Constraint Types 53
Perpendicular
The Perpendic constraint is assigned to pairs of linear elements. A pair of
perpendicular-constrained elements will be adjusted to be perpendicular at solve
time. If other constraints on the part prevent this adjustment, Solve fails. The
positions, lengths, and absolute slopes of perpendicular elements are not affected
by this constraint and may change during the solve, but the slopes of the lines will
be at right angles to one another.
To assign Perpendic constraints:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Perpendic.
2. Click Apply.
3. Click each of the linear elements to be constrained.
4. Click End or assign the next constraint.
Each linear element in a perpendicular pair is labeled with the perpendicular icon,
Figure 3. Constraint Icons on page 42, and a reference number that is unique to
the pair.
Application Notes
A given pair of linear elements may have only one of the Angle, Parallel, or
Perpendic constraints assigned to it. This is because Parallel and Perpendic are
simply special cases of the Angle constraint. If you attempt to assign a Perpendic
constraint to a pair of elements that is already assigned a Parallel constraint, the
Perpendic constraint will replace it.
The action taken when you assign a Perpendic constraint to an element pair that is
already assigned an Angle constraint depends on whether or not the Angle
constraint is parameterized. If it is not, then the Perpendic constraint simply
replaces it. If the Angle constraint is parameterized, however, the Perpendic
constraint is not assigned. Instead, the value of the parameter is adjusted to 90° or
270° (effectively perpendicular). This is done so as not to invalidate any
expressions that may reference the existing angle parameter.
Lines need not be in contact with one another to be constrained perpendicular.
Figure 14. Perpendicular Lines on page 55 shows three different pairs of
perpendicular lines.
Point on
Point on constrains a model point to remain on a given geometric element or its
extension.
The point part of this constraint may be any visible model point. Line endpoints,
circle centers, spline control points, and text reference points may all be used if
visible. If necessary, tick the Vertex check box in the Creo Elements/Direct
Drafting Show dialog box to make these elements visible.
The extension of an element is its construction-geometry equivalent. For example,
the extension of a line segment encompasses any point that would fall on a
collinear construction line. The extension of an arc element encompasses any
point that would fall on a construction circle that shares the arc's center and radius.
All Creo Elements/Direct Drafting geometric elements, including splines, B-
splines, and ellipses, are eligible to receive Point on constraints.
The constrained point may slide anywhere along the extension of the element it is
attached to, but will always remain in contact with the extension. If other
constraints prevent this contact, Solve fails.
To assign Point on constraints:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Point on.
2. Click Apply.
3. Click the point to be constrained. You can select any visible model point (Use
the Creo Elements/Direct Drafting Show dialog box to display model points if
needed). If no point element exists at that location, one will be created.
4. Click the geometry to be attached to the point.
5. Click End or assign the next constraint.
The Point on icon, Figure 3. Constraint Icons on page 42, identifies this constraint.
Constraint Types 55
Application Notes
Two common applications for Point on constraints are shown in Figure 15. Point-
On Applications on page 56. Circles can be constrained to stay on a linear element
by fixing the centerpoint on the line. Conversely, elements can be constrained to
remain attached to the perimeter of a circle, ellipse or spline.
Note that to assign a Point on constraint to the centerpoint of a circle or arc, you
must first display centerpoints (with Vertex switched on in the Creo Elements/
Direct Drafting Show dialog box) and then click the centerpoint directly.
Reference Element
Any element in a part (except ellipses) can be fixed in place with a Refelem
constraint. Reference elements are not changed in any way by Solve, so they will
appear in the same position in the variation as they do in the master part.
To assign Refelem constraints:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Refelem.
2. Click Apply.
3. Click the element to be constrained.
4. Click End or assign the next constraint.
Reference elements are labeled with the anchor icon, Figure 3. Constraint Icons on
page 42.
Application Notes
You should almost always constrain one or two elements in the master part as
reference elements (construction geometry is good for this) so that Solve has a
frame of reference for generating the variation. Otherwise, the variation may not
be placed where you expect.
Application Notes
Reference points, like reference elements, can be used to "anchor" portions of the
master part in place, so that they maintain their positions in the variation.
To assign a reference point constraint to a model point that is not usually visible,
e.g., circle centers, spline control points, or text centers, you must first display
them (with Vertex switched on in the Creo Elements/Direct Drafting Show dialog
box) and then click them directly.
A reference point can also be used to supply data to macros or expressions when
given a parametric value. If you supply a parameter label when assigning a
reference point, the coordinate value of the point can be accessed in an expression
by referencing the parameter name.
Same Distance
Samedist is assigned to two pairs of elements. All geometric elements except for
spline-based entities (rational splines, bsplines, and ellipses) are eligible. You can
assign constraints to the interpolation or control points of these entities, just not
the spline itself. Samedist forces the distance between the members of the first
Constraint Types 57
pair of elements to be the same as the distance between the members of the second
pair. If other constraints prevent the two distances from being made equal, Solve
fails.
To assign Samedist constraints:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Samedist.
2. Click Apply.
3. Click the two elements for the first pair.
4. Click the two elements for the second pair.
5. Click End or go on to the next constraint.
Each element in a same-distance set is labeled with the same-distance icon, Figure
3. Constraint Icons on page 42, and a reference number that is unique to the set.
Application Notes
Samedist constraints are often useful for forcing two contours to become/remain
equidistant, Figure 16. Same Distance Application on page 58.
Same Size
The Samesize constraint is applied to pairs of geometric elements, which must be
of the same geometric type. All elements except for spline-based entities (rational
splines, bsplines, and ellipses) and construction lines are eligible for this
constraint. The members of a same-size pair will be adjusted as needed by Solve
to become the same size. Specifically, the radii of circular elements and the length
of linear elements is adjusted. If the members of a same-size pair are not in fact
the same size at solve time, Solve will look at other constraints on the members of
the pair to determine which member should be changed to match the size of the
other.
Size
You can assign Size constraints to lines and all circular elements. At solve time,
these elements will be adjusted to the size specified by the constraint. For circular
elements, the adjustment is made to the radius; for lines, the length is adjusted. If
the adjustment cannot be achieved, Solve fails.
To assign a size constraint:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Size.
2. Click the element to be constrained.
3. Choose the size for the constraint. You have three options:
• Click End or select another element. The element will be held at its current
size at solve time. This is the default.
• Enter a specific size (radius for circular elements, length for lines).
• Enter a parameter name or Creo Elements/Direct Drafting expression that
defines the size (string input).
Each size-constrained element pair is labeled with the size icon, Figure 3.
Constraint Icons on page 42. If the constraint is set to a specific value or
parameter name, that information is appended to the icon.
Slope
Slope constraints are assigned to linear elements. At solve time, the slope of these
elements will be adjusted to match the angle specified by the constraint. If the
adjustment cannot be made, Solve fails. Note that slope constraints do not fix the
position or length of a line, which may change unless otherwise constrained.
To assign a slope constraint:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Slope.
Constraint Types 59
2. Click Apply.
3. Click the linear element to be constrained. The current slope of this element is
displayed on the Creo Elements/Direct Drafting prompt line.
4. Choose the angle for the constraint. You have three options:
• Click End or select another element. The slope will be set to the actual
slope of the line at solve time.
• Enter a specific angle value for the slope.
• Enter a parameter name or Creo Elements/Direct Drafting expression that
defines the slope angle (string input).
Each slope-constrained element is labeled with the slope icon, Figure 3.
Constraint Icons on page 42. If the constraint is set to a specific value or
parameter name, that information is appended to the icon.
Application Notes
A given element may have only one of the Horizontal, Vertical or Slope constraints
assigned to it. If you attempt to assign a Slope constraint to an element that is
already constrained Horizontal or Vertical, the Slope constraint will replace the
existing constraint.
Parametric Design defines the slope of a linear element as the angle which is
swept by rotating the vector (1,0) to the intrinsic vector of the element. This
intrinsic vector is the line that runs from the first to the second endpoint of the
element. The intrinsic vector of a construction line depends on how it was created.
This method is used so that rotations greater than 90° can be specified.
As a result of the method used to measure slope, it is not possible to visually
determine the slope of a linear element from the graphics display. For example, a
vertical line may have a slope of 90° or 270°, depending on whether it was
constructed from "top to bottom" or "bottom to top." You can, however, read the
current slope from the prompt line in step 3 of the assignment procedure above.
Symmetry Line
The Symmline constraint identifies a line of symmetry that can be used by
Complete to assign mirror constraints. If you want to assign mirror constraints by
hand, you should use Assign Mirror instead. You assign Symmline constraints to
linear elements, which are then labeled with the symmetry line icon, Figure 3.
Constraint Icons on page 42.
To assign Symmline constraints:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Symmline.
Application Notes
Parametric Design can automatically assign symmetry-line constraints to lines
having a particular color and linestyle. You enable this behavior by calling the
function PD_AUTO_SYMMETRY YES from the Creo Elements/Direct Drafting
command line, or by including it in your pd_def.mac file. The functions PD_
AUTO_SYMMETRY_COLOR and PD_AUTO_SYMMETRY_LINETYPE
specify the color and linetype. See Parametric Design Defaults on page 172 for
more information.
Complete only extracts mirrored pairs from areas that are orthogonal to defined
symmetry lines. If your symmetry lines have infinite length (e.g., construction
lines) this is no limitation, but if you choose a finite-length element as a symmetry
line, items must lie completely within the orthogonal boundary in order to be
selected for mirroring. The two line segments on the right of Figure 17. Auto-
selection of Mirrored Pairs on page 61, for example, would not be extracted
because neither falls inside the boundary. If you are assigning mirrored pairs
manually, this limitation does not apply.
Tangent
Tangent constraints are applied to pairs of geometric elements, at least one of
which must be circular (circle, construction circle, arc, or fillet). At solve time, the
elements are adjusted to ensure that their extensions are tangent. See Point on on
page 41 for an explanation of extensions. If this adjustment cannot be achieved,
Solve fails. Two elements are considered tangent if their extensions touch at one
point only, Figure 18. Tangent Pairs on page 62.
Constraint Types 61
Figure 18. Tangent Pairs
Application Notes
Complete will not extract a tangent constraint for a pair of elements unless the
elements themselves (not their extensions) are tangent. Solve, however, recognizes
linear and circular extensions when adjusting for tangency.
Solve attempts to maintain as much of the current configuration as possible when
adjusting to satisfy tangency constraints. When adjusting a circular and a linear
element to be tangent, Solve attempts to keep the circle on the same side of the
line as it was originally. When adjusting two circles to be tangent, effort is taken
to ensure that if one circle is inside the other, it remains inside, and that circles
which are outside of each other stay that way.
Vertical
Linear elements that are assigned a Vertical constraint will be adjusted as
necessary at solve time to become vertical. If Solve cannot make this adjustment
due to other constraints on the element, Solve fails. A vertical constraint will not
prevent a linear element from moving or changing length in the variation; it only
adjusts the slope of that line to 90° or 270°.
To assign Vertical constraints:
Application Notes
A given element may have only one of the Horizontal, Vertical or Slope constraints
assigned to it. If you attempt to assign a Vertical constraint to an element that is
already assigned a Horizontal constraint, the Vertical constraint will replace it.
The action taken when you assign a Vertical constraint to an element that is
already assigned a Slope constraint depends on whether or not the Slope constraint
is parameterized. If it is not, then the Vertical constraint simply replaces it. If the
Slope constraint is parameterized, however, the Vertical constraint is not assigned.
Instead, the value of the parameter is adjusted to 90° or 270° (effectively vertical).
This is done so as not to invalidate any expressions that may reference the existing
slope parameter.
The X-Distance and Y-Distance constraints cannot be assigned manually. They are
generated automatically during the Design Intent Capture process with LINE
TWO_PTS and LINE POLYGON (see Figure 24 on page 79 in Design Intent
Capture on page 79).
Constraint Types 63
5
Parameters
Creating Parameters .................................................................................................65
Assigning Parameters................................................................................................66
Editing Parameter Definitions .....................................................................................67
Setting Parameter Values...........................................................................................71
A parameter is a named variable that you create with Parametric Design. You can
create a parameter implicitly by giving a parameter name when you assign one of
the several constraint types that support parameters; or you can create a parameter
explicitly by adding a new entry to the parameter definition table, which you
access by clicking Advanced in the Current Constraints dialog box. Regardless of
how you create a parameter, it is given an entry in this table. By editing the entry,
you can assign a value to the corresponding parameter.
The value you assign to a parameter may be either a discrete numeric value or an
expression. An expression is any valid Creo Elements/Direct Drafting expression.
This line can reference other Parametric Design parameters, Creo Elements/Direct
Drafting macros, and any of the arithmetic and logical constructs supported by the
Creo Elements/Direct Drafting macro language.
The most important feature of parameters is that they can be assigned to
constraints. After you assign a parameter to a constraint, you can modify the
constraint by changing the parameter's value. Conversely, you can access the
current value of the constraint by inquiring the parameter. This capability makes
parameters an especially powerful tool for defining relationships among elements
in a part.
Parameters 65
Command Action
Point Create a new point parameter
User Create a new user (unitless) parameter
Each of these commands adds a new parameter to the table. These parameters are
not associated with constraints, but you can name and define them like any other
parameter. The new parameters can be referenced in other expressions and can
reference other parameters in their own expressions. Once defined, you may use
them for reference or assign them to constraints in your part. To create a new
parameter:
1. Click the applicable button, for example: Angle.
2. Enter a name for the new parameter, e.g.: 'Angle_4'.
The name you give must be a suitable parameter label as described in Assigning
Parameters on page 66. An explicitly created parameter is given an initial value of
0 and a value type of "unknown." Its value remains unknown until you assign it a
value or until you assign it to a drawing element.
Assigning Parameters
Only the following constraint-types may be parameterized:
• Angle
• Dimension
• Distance
• Ref Point
• Size
• Slope
To assign a parameter to any of these constraint-types, you simply Assign the
constraint to the desired element(s), and enter the parameter name (enclosed in
quotes) when prompted to do so.
Only those constraint types that support parameters will prompt you for them. If
the named parameter does not exist, then Parametric Design creates a new
parameter with this name, as explained above. If a parameter with this name does
exist and matches the unit requirements of the constraint, it becomes associated
with the constraint.
Parameter names are text strings. They must adhere to the naming rules for Creo
Elements/Direct Drafting macros. Parameters cannot have the same name as an
Creo Elements/Direct Drafting keyword, (e.g. rad or CONFIRM). To avoid such
conflicts, parameter names should begin with an uppercase letter, and contain only
lowercase letters, integers, and/or the underscore (_) character in the remaining
positions. The names Distance, Rad, Dim_3, and My_line are examples of
Name
The Name field gives the parameter name as you assigned it. This is simply the
label that identifies the parameter.
Kind
The Kind field declares the units for this parameter. Units are determined by the
type of constraint this parameter is assigned to. The following "kinds" of units are
recognized:
Kind Units
Angle An angle in the angular units in force when the parameter
was created (degrees, radians, etc.).
Length A linear distance in the linear units in force when the
parameter was created (mm, inches, miles, etc.).
Parameters 67
Kind Units
Point An XY coordinate pair in the linear units in force when the
parameter was created; e.g., 20,30.5.
user Unitless. A user parameter is never associated with a
geometric constraint, so the solver never has to convert this
parameter into system units. Only parameters created with
the User option can be user parameters.
Value
The Value field shows the value that is currently associated with this parameter.
This value may change when you next Solve for a variation. The value for a
parameter is always given in the same units that were in force when the parameter
was first created.
Parameters that resolve to point values use two lines in the parameter table. The
value on the first line is the X coordinate of the point, while the second line
contains the Y coordinate.
Parameters 69
than 8; otherwise assign 45.
(PNT_XY (X_OF 'PtA') 10) Assign to a point parameter the x-
value of 'PtA' and a y-value of 10.
My_macro Evaluate 'My_macro' and assign the
result.
My_macro2 Rad Evaluate 'My_macro2', which needs a
parameter that passes in the value of
'Rad'.
The expression you give appears in the New Value or Expression field and the New
Value Type becomes "Expression." The next Solve command will cause this
expression to be evaluated by Parametric Design and the result assigned to this
parameter.
Removing Parameters
Use the Remove command located in the upper right of the parameter definition
table to remove parameters from the part. To Remove a parameter, click Remove,
then click the Name field for the parameter you want to remove. Parametric
Design will not allow you to remove parameters that are currently assigned to a
constraint or that are referenced by another parameter via expression. To remove
parameters that are assigned to constraints, first either Free the constraint that
corresponds to the parameter or assign a new value to it, then Remove the
Showing Parameters
The Show button in the parameter definition table highlights all elements in the
part that currently have parameters assigned to them. Highlighting is done by
displaying the constraint icons of these elements along with the corresponding
parameter names. Parameter labels will be displayed using the current text font.
Highlighting is in CYAN by default.
The Show highlighting is removed whenever Solve is invoked. Alternatively, you
can select Clear and All Types in Generate Constraints to remove the highlighting.
Parameters 71
Note
While you can enter an expression rather than a value into the parameter value
table, it is not recommended that you do so, because this changes the type of
the parameter from "Value" to "Expression," and thus removes its entry from
the parameter value table (but not from the parameter definition table).
73
Roadmap
Read this chapter to learn how to modify geometry by modifying parametric
dimensions. To learn how to assign constraints explicitly read Working with
Parametric Design on page 20 instead. To learn how to create, assign, and modify
parameters read Parameters on page 64.
Overview
Dimension Driven Modification simplifies access to some of the power of
parametric modification. Geometry can be modified by simply selecting
dimensions and entering new values.
Constraints associated with a number or a parameter (angle, dimension, distance,
size, slope) can be considered parametric dimensions. Regardless of how they
were created, all parametric dimensions can be modified via Parametric, Modify,
Dimension.
Hide
To hide parametric dimensions associated with selected geometry, click
Parametric ▶ Modify ▶ Dimension ▶ Hide.
Especially with large parts, the ability to selectively display and hide parametric
dimensions can reduce screen clutter. A designer can quickly focus on the
parametric dimension of interest.
Location
Parametric dimensions — unlike other dimensions — are displayed in default
locations. They can be moved for easier viewing with Parametric ▶ Modify ▶
Dimension ▶ Move.
Immediate Modification
Immediate specifies that all geometry should be updated as soon as the value of a
parametric dimension is modified. This method can be useful with small drawings
— where the speed of updating the geometry and redrawing the screen is not a
concern. It can also be useful for experimenting with several different values for
one parametric dimension.
Deferred Modification
Deferred specifies that geometry should not be modified until the user makes an
explicit request. This method will improve performance, because the drawing will
be updated only once — even if the values of several parametric dimensions have
been modified.
Deferred is actually necessary when a set of parametric dimension modifications
do not have valid intermediate geometry. For example, consider a triangle with
sides of lengths 3, 4, and 5:
Note
Often a combination of Immediate and Deferred is useful when several
parametric dimensions need modification.
If the center of the arc should be located from the right side, tools in the
Dimension menu can be used to create an appropriate dimension. Then you click
Swap, and the newly-created dimension is selected to replace the parametric
dimension generated by Complete. The resulting parametric dimensions are:
Restrictions
In order for an exchange to occur both dimensions must control the same
geometry. For instance, in the example above the height of the rectangle could not
be exchanged for the distance from the center of the arc to the right edge.
79
Roadmap
Read this chapter to learn how to create constraints as geometry is created. To
learn how to assign constraints and parameters explicitly, read Working with
Parametric Design on page 20 instead.
Overview
Design Intent Capture generates and assigns parametric constraints as geometry is
constructed. Constraint types depend on the method used to construct geometry.
For example, when creating one line perpendicular to another line a perpendicular
constraint will be created and associated with the two lines.
Design Intent Capture improves the speed, accuracy, and quality of parametric
constraint definition by combining the separate steps of geometry creation and
constraint assignment into one action.
Without Design Intent Capture constraints must be assigned after geometry has
been created. This forces the designer to remember the relationships between
geometric elements and record them by assigning constraints. Even worse, if the
geometry was created by someone else the designer must try to reason backward
and guess at the appropriate constraints. These problems are avoided by using
Design Intent Capture.
The quality of constraints in the final parametric drawing is usually much better
when Design Intent Capture is used compared with relying on Complete to
generate all constraints. Quite possibly a drawing will be fully constrained when
Design Intent Capture is used. But even if some additional constraints are
required, Complete will have a much better starting point.
Flexibility
Although Design Intent Capture generates constraints, the designer is free to
modify or remove any of them. The constraints are not history-based, so they may
be modified regardless of the order in which they were created. Any constraint can
be altered or removed without negating all of the work that occurred after the
constraint was generated.
In other words, Design Intent Capture is a method of generating constraints — as
are Complete and direct assignment. All of the Parametric Design module's
constraint editing capabilities can be used on them. Refer to Working with
Parametric Design on page 20 for more information on editing constraints.
Elements Affected
The following methods of geometry creation generate parametric constraints when
Design Intent Capture is enabled:
• point
• line
• circle
• arc
• fillet
• chamfer
• construction line
• construction circle
• text
• equidistance
• overdraw
Constraint Creation
The Parametric Design module considers two guidelines when determining the
appropriate constraints to generate with Design Intent Capture:
• construction technique
• CATCH information
CATCH Information
Design Intent Capture also considers CATCH information when determining
which constraints to generate. With CoPilot enabled the ability to catch to
tangencies, etc. is much easier.
For example, assume CoPilot is enabled and LINE TWO_PTS is invoked. If the
endpoints of the line are picked so that they are approximately tangent to two arcs,
then two tangent constraints will be created.
Delete
When geometry is deleted all relational parametric constraints will be transferred
to other geometry whenever possible. For example, consider three perpendicular
lines:
If the middle line is deleted the perpendicular constraints associated with it will
also be deleted. But a new constraint will be generated so that the parallelism
between the remaining lines is kept:
Split
When elements are split constraints will be assigned to maintain consistency
between the pieces. Each portion of a split line will be given a collinear constraint.
Split circles and arcs will be assigned same size constraints.
In addition to the basic constraints for split lines and arcs, other constraints may
need to be modified or assigned. For example, if a line with a size constraint is
split, a distance constraint will be created and associated with the endpoints of the
original line.
Merge
When elements are merged constraints will be combined whenever possible. For
example, when line segments are merged the collinear constraint associated with
them will be removed (if it exists). Relational constraints between the segments
and other elements will be associated with the new, merged line.
Geometry Cleaning
Complete and Solve both have the ability to recognize and compensate for minor
geometric inconsistencies in a part. Common problems such as lines which are
slightly out of parallel, elements with zero length or radius, and small gaps
between "tangent" elements can be recognized and corrected.
Note
The "cleanup" capabilities used by Complete and Solve are separate from the
Clean command. See Working with Parametric Design on page 20 for more
information on the Clean options.
Caution
It is usually a good idea to disable tolerance-based merging in motion-study or
kinematics applications where several entities will be moved around in close
proximity to one another. In these applications, it is often the case that two
entities which are intended to remain separate will come into close enough
contact that a point on each will fall within the merge tolerance. If merging is
on, the two entities will be effectively fused together, preventing further
independent motion. To disable merging, set the tolerance to -1.
{If AUTO must create new points, make sure we can delete them
later}
ADD_CURRENT_INFO "DELETE" END
To get a feel for how this macro works, copy the text above into a file and then
Input the file to Creo Elements/Direct Drafting. Note that this chapter is supplied
in HTML format on the Creo Elements/Direct Electronic Manuals CD-ROM.
Now quickly create the part below. Use Polygon in Geometry with the Creo
Elements/Direct Drafting catch-mode set to OFF. Try to reproduce the figure as
shown, but don't worry about inconsistencies in your part.
If the first pass at this didn't work for you (remember, SquareUp is a very simple
macro that will handle many, but certainly not all cases!), reject the results and
experiment with different values for the length and angle tolerances.
As you experiment with SquareUp, it may be helpful to try it with severely flawed
sketches and to give "unreasonable" values for the linear and angular tolerances to
learn the strengths and weaknesses of this technique.
Zone Gymnastics
Parametric Design's zone mechanism is implemented using Creo Elements/Direct
Drafting infos. The info text PD_ZONE is used to specify which drawing
elements are in the Parametric Design zone. Any drawing element in the current
part that has the info text PD_ZONE attached to it is included in the zone. By
treating the zone as simply a collection of element infos, several powerful options
for working with the zone become available. The following sections contain a few
ideas.
Automatic Inclusion
As shipped, the pd_def.mac file contains the string:
This causes all new geometry created during your Creo Elements/Direct Drafting
session to be automatically included in the zone (i.e., the PD_ZONE info is added
to all new geometry). You can turn off the auto-inclusion feature at startup by
removing this line from pd_def.mac. To turn off auto-inclusion from within
Creo Elements/Direct Drafting, you could type in:
C-Splines
To parametrically control the shape of a C-spline, you first place point elements
on the data points used to create the spline and then assign the appropriate
constraints to these points to actually control the shape of the spline. Any
constraint that can be assigned to a point can be used.
To find the location of the C-spline's data points, turn on vertices with SHOW
VERTEX ON. Before assigning point elements to the spline data points, you
should also make sure that splitting is turned off.
Note
By default, Creo Elements/Direct Drafting converts all rational splines in a
drawing into B-splines when you load it. The conversion will invalidate any
constraints that you have assigned to the data points of these rational splines.
Refelem constraints which are assigned directly to spline elements are not
invalidated, and will be carried over from the rational spline to the new B-
spline.
To prevent spline conversion and the subsequent invalidation of constraints on
rational splines, you must enter SPLINE_CONVERSION OFF prior to loading
any master part that contains constrained rational splines. Alternatively, you
could include this line in the Creo Elements/Direct Drafting pd_def file to
permanently disable spline conversion.
100 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
When extracting constraints from the part, the solver must determine the location
and connectivity of each element in order to decide if that element is a suitable
candidate for the constraint type currently being assigned. The user can specify
several tolerances for the solver to use when determining an element's location
and connectivity. These tolerances, described in detail in Geometry Cleaning on
page 87 above, allow the solver to handle minor inconsistencies that may occur in
the part.
Finally, after all the geometry has been examined and all new constraints have
been extracted, Complete goes back through the part looking for redundant or
unused constraints. These are removed. For example, if a line element is found
that is constrained horizontal and is also constrained collinear with another line
that is constrained horizontal, the horizontal constraint can be freed from the first
line.
DEFINE Pdeval
DEFINE Pdeval
PARAMETER B
(B+10)
END_DEFINE
And A is assigned to be the result of
Pdeval 6
A syntax error can occur during the evaluation. When this happens, a message is
displayed indicating which dependent parameter has the faulty expression and
Solve is terminated. Since the offending expression is the last expression to be
evaluated, you can view it by running EDIT_MACRO Pdeval immediately after
the failure occurs. This procedure may point out problems that might otherwise
escape attention, since there is very little syntax checking done when the
expression is defined.
For example, if the above sample expression were (rad+10) then the above macro
would be:
DEFINE Pdeval
(rad+10)
END_DEFINE
which fails because rad is a keyword and keywords are not recognized as
parameters, even if there was a parameter called Rad.
Invisible Geometry
As constraints are created the Parametric Design module may need to create
points and construction lines to serve as reference geometry. For example, when
Design Intent Capture is enabled and LINE PARALLEL is invoked construction
lines are created between the original and new lines, so that the two lines will
remain both parallel and the same length.
102 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Invisible Geometry is managed completely by the Parametric Design module.
Whenever operations such as DELETE, MODIFY, or STRETCH are performed
on real geometry any necessary changes are made to invisible geometry.
Viewing
Invisible geometry is displayed whenever an associated constraint is displayed.
Typically constraints are displayed via the Display dialog box.
Viewing invisible geometry can be helpful in understanding the relationship
between constraints and geometry.
Attributes
The only two types of invisible geometry that are created are points and
construction lines.
PD_NEW_POINT_VISIBILITY and PD_NEW_C_LINE_VISIBILITY determine
whether or not invisible geometry created by the Parametric Design module
should be displayed at all times or only when constraints are displayed. Allowable
qualifiers are VISIBLE and INVISIBLE.
Other functions that set display attributes of invisible geometry are:
• PD_NEW_POINT_COLOR
• PD_NEW_C_LINE_COLOR
• PD_NEW_POINT_LINETYPE
• PD_NEW_C_LINE_LINETYPE
104 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Roadmap
Work through the examples in this chapter to familiarize yourself with the
Parametric Design software. If you have not yet done so, you should read
Introduction on page 9 before continuing. If you are not familiar with Creo
Elements/Direct Drafting, we also recommend that you read through Creo
Elements/Direct Drafting User's Guide before continuing.
Introduction
This chapter contains several examples that will help you become familiar with
Parametric Design tools and techniques.
All the examples assume that you are at a workstation, have Creo Elements/Direct
Drafting up and running, and that Parametric Design is installed.
The first example introduces all the Parametric Design tools, proceeding step-by-
step through an extended session with a simple drawing. We strongly recommend
that you spend a little time going through this example before going on to the
others. Subsequent examples present particular techniques or applications that you
are likely to encounter as you use the software. These examples assume that you
are comfortable with the Parametric Design interface.
The Creo Elements/Direct Drafting parts used in the examples are included online
with the software. They are installed as uncompressed MI-format files in the pd_
demos\ directory. Several of the examples depend on information in these files,
so we encourage you to load each file as you work through the corresponding
example.
The examples were chosen to be simple, and yet introduce you to the breadth and
depth of this product. After going through these examples and carefully
considering the questions at the end of each one, you should have developed a feel
for nature of parametric design.
It would be a mistake to hope that you will be an expert Parametric Design user
after just using these examples. In the real world, geometry is often more
complicated. Models are underdimensioned, have unwanted symmetries, suffer
from geometric inaccuracies, or have other "features" that are difficult for the
automatic constraint generator to interpret correctly.
There are two rules of thumb that apply when using Parametric Design:
• If it isn't clear to you, at least in general, how a part should change in response
to a modified dimension, then AUTO will likely have trouble as well.
• The better you understand the interplay between the various constraint types,
and the rules governing each constraint type, the more effectively you'll be
able to use Parametric Design.
Examples 105
One very good way to become expert in the science of constraining a part, is to
practice using manual constraints on parts of increasing complexity. Use the
automatic constraint generator to see how it would solve a particular problem, but
make sure you understand the constraints that are generated. Once you fully
understand how the various constraint types can be used and you get used to using
the debugging tools, then begin to rely more on the automatic constraint generator.
106 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Figure 29. Demopart01
The important features of this part for parametric design are as follows:
• It is an ordinary Creo Elements/Direct Drafting part.
• It is fully dimensioned. The length and height are specified, as is the radius of
one corner. The location and radius of the holes is also given. Generally, a part
with full dimensioning works best for Parametric Design.
• It is "clean." There are no duplicate or stacked elements. Such inconsistencies
can lead to unexpected results. Parametric Design has several commands that
find and fix inconsistencies in a part, but you won't have to use them right
away!
• Construction lines have been used to mark the "origin" of the part as well as
the centerlines of the holes. Construction geometry, if available, is often very
useful to the Parametric Design solver. When possible, you should include
construction geometry to mark important features of a part: major axes, lines
of symmetry, centerlines of circles, etc.
Examples 107
Fully Constrain the Part
Before you can use the Parametric Design solver to generate variations from an
existing part, each element in the zone must have one or more constraints assigned
to it. Enough constraints must be assigned to tell the solver exactly what to do
with each element in the part. If elements in the zone are not fully constrained or
are incorrectly constrained, the solver will not be able to generate the variation.
The best way to assign a full set of constraints is to first constrain all the elements
in the part in their current configuration. After the part is fully constrained in its
current configuration, you can modify constraints as needed to generate a
variation.
Both manual and automatic options are available for assigning constraints.
Typically, the manual options are used to assign a few important constraints like
reference elements, and then Solve will generate the remaining constraints needed
to fully constrain the part.
Modify Constraints
To generate a variation that is different from the original, you must change one or
more constraints from their current values to the values you want to see in the
variation.
108 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Dimension.
2. Click Apply.
3. Click the dimension text that gives the height of the triangle (40.5).
Type in: 55 [Enter]
4. Click the dimension text that gives the length of the triangle (65.25).
Type in: 55 [Enter]
5. Click End.
Notice how the dimension text is updated.
Solve
Now use Solve to generate the variation.
1. Click Preview in Solve. The magenta outline shows how the variation will be
created without disrupting the current part, Figure 30. Preview Mode on page
110.
2. Click End.
3. Click No Keep in Solve. Your original part is now replaced with the variation.
Notice that the dimensions you assigned to be 55 earlier are now indeed 55.
The hole geometry has not moved.
4. Click Undo to restore your original part.
Examples 109
Figure 30. Preview Mode
The third Solve option, Keep, allows you to keep both the original and the
variation Figure 31. Part and Kept Variation on page 110. If you try Keep now,
make sure you delete all the variations (but not the master part) when you have
finished.
Parameters
At this point, you've created a variation of your original part, but it's probably not
exactly what you want. One obvious flaw is that the holes in the plate are not
constrained to adjust along with the perimeter. Although you could move them by
giving new values to their dimensional constraints (just like you did for the length
and height of the plate), this is not efficient, because you would have to calculate
and re-enter these values each time you generated a variation with different
dimensions. Parameters provide a much better method for accomplishing this.
Parameters allow you to use expressions to define relationships among
constraints.
110 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Assign Parameter Names
First, assign parameter names to the appropriate dimensional constraints.
1. Unless you have already done so, click No Keep in Solve and then End to
replace the original part with the variation you created in the last step.
2. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Dimension.
3. Click on the dimension text that gives the length of the triangle (55).
Type in: 'Base' [Enter]
4. Click on the dimension text that gives the height of the triangle (55).
Type in: 'Height' [Enter]
5. Click on the "12.37" dimension on the top hole.
Type in: 'Dim1' [Enter]
6. Click on the "29.69" dimension on the top hole.
Type in: 'Dim2' [Enter]
7. Click on the "10.01" dimension on the leftmost hole.
Type in: 'Dim3' [Enter]
8. Click on the "49.21" dimension on the rightmost hole.
Type in: 'Dim4' [Enter]
9. Click End.
The dimension text should now look like Figure 32. Parameter Names Assigned
on page 111.
Examples 111
With the names assigned, you now define the relationships among the parameters
in the parameter definition table. For this example, we'll set up the parameters so
that all parameterized dimensions are functions of the Base parameter. The
parameter definition table should resemble Figure 33. Parameter Values Defined
on page 112 when you are finished.
112 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Figure 34. Variation of Demopart01
• Since all the linear dimensions are related to the base dimension, you only
need to modify this dimension to make the entire part adjust. Try assigning
several different values to the base dimension, solving after each change. You
can change this dimension one of three ways:
1. In Generate Constraints, click the Assign radio button, select Dimension
from the Type list, click Apply, click the dimension label, and enter the
new value.
2. Display the Current Constraints dialog box, select the dimension to be
changed, enter a new value and click Apply.
3. In the Current Constraints dialog box, click Advanced to display the
parameter table. Then click on the value to be changed in the New Value or
Expression column and enter the new value.
Examples 113
Figure 35. New Geometry on Demopart01
To incorporate this new feature into the Parametric Design constraint system, you
only need to click the Complete radio button in Current Constraints again.
Clicking this button generates the additional constraints needed for the new
geometry. Subsequent Solve commands will recognize the new feature:
1. After adding the new geometry, click the Complete radio button in Current
Constraints.
2. In Current Constraints, click the Show radio button, then select New from the
Act On list and All Types from the Type list. Then click Apply to see how the
new geometry was constrained.
3. In some cases, the addition of new geometry adds information to the part that
causes existing constraints to become unnecessary. Complete will tell you if it
finds unused constraints. If applicable, display these constraints with Show,
Unused, All Types and Free them if you wish.
4. Change the value of the base dimension to 48.
5. Use No Keep in Solve to generate the variation. Note that the new lip adjusts
along with the rest of the part.
To Consider
Here are a couple of additional tasks that you can try with this drawing. Both will
give you some practice with manual constraint assignment.
• Through the center of each hole, add a vertical and horizontal line that extends
a short distance beyond the circle (like a cross hair). Use manual constraints to
force each line to move with the hole and to continue to extend the correct
distance beyond the circle when the hole changes size. Hint: Apply Point on
and point-to-circle Distance constraints.
• Go back to the original geometry, but first remove the both fillets on the left
vertical line of the model. Go through exercise again, including the creation of
114 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
the equidistant inner contour. This time, Complete will not cause the inner
contour to remain equidistant. Why? Can you add manual constraints to fix the
problem? Hint: Use Samedist constraints.
Examples 115
Figure 36. Demopart02
116 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
The icons are now visible, but may still be overlapping. If all four icons are not
visible, move them to uncover the obscured icons:
1. In Parametric, click Modify and Move Icon.
2. Click on the constraint icon you want to move. The icon is replaced with a
"rubberband" line.
3. Drag the rubberband line to where you want the icon and click at that location.
4. Move the rest of the icons until you can see all four.
Examples 117
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Symmline.
2. Click Apply.
3. Click on each of the four construction lines that run through the center of the
part.
4. Click End.
Examine Constraints
Following a Complete command, you should always check the part to make sure
that a reasonable set of constraints has been assigned. Check the following:
1. Are all important dimensions constrained?
Click the Show radio button in Generate Constraints, select Used from the Act
On list and Dimensions from the Type list, then click Apply.Notice that the
dimension for the top of the plate has not been constrained. This is not needed
in this case because other constraints fix this line.
2. Are there any Distance or Size constraints? Complete usually only assigns
these constraints as a "last resort" if it can find no other way to constrain an
element. A distance-constrained element may move along with other elements
when it not intended to. Click the Show radio button and select Size and
Distance to display any instances of these constraints.
An alternate way to check the constraints on your part is with Element and Icon in
Inquire. For this example, you can use Element to see how Complete used the
symmetry lines you defined to constrain components of the center circle:
1. In Parametric, click Inquire and then Element.
2. Click on each line in the dimensioned slot of the part. Notice how mirror
constraints were extracted for each element in the slot. Try clicking on other
components around the center circle.
3. In Generate Constraints, press Clear and select All Types. Then click End when
you have finished with Inquire Element.
118 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Generate a Variation
The part is now fully constrained. To generate the first variation:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Dimension.
2. Click Apply.
3. Click the dimension for the radius of the large hole (currently 373.32).
Type in: 250 [Enter]
4. Click the dimension for the width of the slot (currently 28.48).
Type in: 20.75 [Enter]
5. Click the dimension for length of the slot (currently 31.41).
Type in: 58 [Enter]
6. Click End.
7. Click Preview in Solve. The magenta outline shows how the variation will be
drawn without changing the part. Alternatively, you can replace the master
part with the new geometry by selecting No Keep.
8. Click End to remove the preview, or Undo if you solved with No Keep.
Repeat this procedure several times, substituting new values of your choosing.
Examples 119
Parameterize
Suppose you are asked to generate several variations of this part in which the slots
change size proportionally to the radius of the large hole. You could accomplish
this using the methods shown above, but you would have to recalculate the
dimensions of the slots each time you re-sized the hole. Your task is much easier if
you parameterize the three dimensions in question. For example:
120 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Generate Variations
Because HoleRad is defined as a "value" parameter, and both SlotWid and
SlotLen can be resolved from it, you need only change the value of HoleRad to
generate variations. Use the parameter value table to do this:
1. Click Current Constraints to bring up the parameter value table. Only
parameters defined as "Value" parameters appear in this table.
2. Click on the entry for HoleRad in this table and type in:
425 and click Apply.
3. Click No Keep in Solve to create the variation.
4. Click End to accept the variation.
As you can see, the dimensions of the slots now change with the hole radius. Input
several different values for HoleRad now.
Examples 121
There are three general strategies for this situation. Try each one.
○ Use Complete and then Ban those unintended constraints. Continue this
process until the goal has been reached.
○ Manually constrain the side elements so that Complete doesn't need to add
any constraints.
○ Use Modify Stretch to change the default part into one that is more general.
Which is easiest?
122 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Figure 39. Demopart03
For this example, you will resize the hole and the ring indicated by the arrows in
Figure 39. Demopart03 on page 123. Modifications to the large hole in the front
face should carry over to the side view. Changing the width of the ring in the side
view should change the radii of the hidden-line circles in the front view.
The main mechanism used to carry dimension information from one section of the
part to the other is the construction line. When building this part, we included
many construction lines whose only purpose was to link elements for Parametric
Design. Look, for example, at the small hole in the side view. In most situations, it
would be considered excessive to place horizontal and vertical construction lines
on the perimeter as well as the center of this hole. For Parametric Design,
however, these lines are critical: The vertical lines "link" the diameter of this hole
with the two vertical holes in the side view, while the horizontal construction lines
give us a link to the front view.
Examples 123
4. Click End.
Examine Constraints
When Complete finishes, examine the part carefully with both Show and Inquire
Element to see how Complete used the construction geometry to link up the
elements we want to resize. Inquire Element is especially useful for showing how
individual construction lines are associated with other geometric elements.
124 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Generate The Variation
When you feel you understand the connections between the two views of the part,
modify the constraints on the hole and the ring and SOLVE to see how Parametric
Design makes use of these connections.
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Dimension.
2. Click Apply.
3. Click the dimension for the diameter of the large hole in the front view (This
dimension is currently 6.5).
Type in: 4.5 [Enter]
4. Click the dimension for the inner diameter of the ring in the side view. (This
dimension is currently 31.8.)
Type in: 30.5 [Enter]
5. Click End.
6. Click NoKeep in Solve.
To Consider
• What other dimensions can be carried over from view to view in this part with
the existing construction lines? Try resizing some other dimensions and see
how the solver handles them.
• Could you delete some of the construction geometry in this part and still
accomplish the example? How?
Examples 125
• Suppose that you want to increase the distance between the two views of this
part. This is trivial to do with Parametric Design, but there is one hitch: How
do you get the centerline that runs through both views to "stretch" as the views
move apart? Hint: try adding a point element to each end of the center line and
then, for each point, fix the distance between it and an element in the nearest
view.
Example 4: Macros
Your task is to design a series of fan housings. The housings are identical except
that the air intakes and exhaust ports of each housing must vary to accommodate
fans of different power. It is important that the area of the air intakes equal the
area of the exhaust ports to maintain proper air flow through the housing.
Unfortunately, the intakes are wedge-shaped while the exhaust ports are slots. This
makes the area calculations more complicated.
To accomplish this task, you'll use an Creo Elements/Direct Drafting macro that:
1. Calls Parametric Design to design the air intakes.
2. Calculates the area of the intakes.
3. Transforms the area value into the exhaust port size.
4. Calls Parametric Design to design the exhaust ports.
Most of the setup for this example has been done for you. The part,
demopart04.mi, has already been constrained and parameterized, and the
macros you need are already defined in the file demopart04.mac. As you work
through this example, focus on the contents of the macro and how they relate to
what you see on your screen.
126 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Figure 42. Demopart04
The Dimension, Distance, and Symmline constraints ensure that all four intake
ports retain their configuration in variations. The Refpoint constraints Pt1 and
Pt2 were created only to provide information to our macro. This is explained
later.
Examples 127
Figure 43. Intake Constraints
• Examine the constraints on the "slot_grid" part now. (Hint: make "slot_grid"
the current part in order to examine it). Notice that the slot radius has been
parameterized as "Newrad." How did we ensure that all three exhaust ports
will remain the same size?
When you have finished looking at the constraints, make sure that top part is
current and that your main window shows both parts.
To prove that the parameters work as we say they do, try them:
a. Change the value for "Out_rad" to 120. Click on the "Outrad" entry in the
table and enter 120 from the keyboard.
b. Click Preview in Solve.
c. Notice how the hole configuration changes.
128 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
d. Restore the parameters to their original values when you've finished
experimenting.
Take a look at the parameters on the exhaust ports now.
e. Make "slot_grid" the current part.
f. Preview a few variations of this part by inserting new values for the
"Newrad" parameter and solving in Preview mode.
g. Set "Newrad" to 5 and solve in No Keep mode.
h. Make the top part current.
The configuration of the parameters should give you an idea of the strategy we'll
use to accomplish our task. We can easily vary the size and configuration of the
four air intakes in the top part by changing the parameter values for "Bwid,"
"Inrad," and "Outrad." On the "slot_grid" part, we can vary the width of all three
exhaust ports by entering a new value for the "Newrad" parameter. All that needs
to be done now is to translate the area defined by "Bwid," "Inrad," and "Outrad"
into a radius that can be fed to "Newrad." This is exactly what our macro, Do_it,
does.
Examples 129
Examining Do_it
The definition for Do_it is listed below:
130 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
END_WHILE
LET A (SUBSTR A 4 (LEN A)) {set A to be just area value
(area of 1 hole}
LET A ((VAL A)*4) {total area of front holes is 4A}
(((SQRT(L*L + (PI*A)/3))-L)/PI){Given area of holes A and length
of slots L}
{return hole radius for
equivalent area. }
END_DEFINE {of New_radius}
The algorithm used by Do_it is as follows:
1. Solve the variation for the intake ports.
2. Use AREA_PROPERTIES to find the area properties of an intake port and
write this data to a file. Call the macro Find_midp to generate the point
which identifies this port.
3. Change the current part to the exhaust ports.
4. Call the macro New_radius to calculate the needed radius from the data in
the file written above. Assign this radius to "Newrad."
5. Solve the variation for the exhaust slots.
This procedure is straightforward, but does use some interesting features of both
Creo Elements/Direct Drafting and Parametric Design commands:
• Although Parametric Design only operates on the current part, a macro like
Do_it can easily manage interchanges among multiple parts.
• The macro Find_midp uses the reference-point constraints Pt1 and Pt2 to
determine a point that is guaranteed to be inside an intake port. Since Pt1 and
Pt2 are constrained to always be on the corners of this port, the point between
them will always be inside the port. Passing this point to AREA_
PROPERTIES makes sure that we always get the properties for an intake port.
Note how PD_PARAM_INQ is used to grab the locations of these points from
the parameter table.
• New-radius simply reads the area data from a file and uses it along with hard-
coded data about the slot length to generate the appropriate radius. The output
is input to Parametric Design via PD_FIX_PARAM. Of course a much more
complex macro could be used to supply this input!
To Consider
• Currently, Do_it counts on the slot length being 200. How would you re-
write Do_it to inquire the slot length directly from the part? (Hint: You
probably need to add a new parameter to the part.)
Examples 131
• Do_it is not foolproof. You can cause problems by setting "B_wid" to 0.
How would you fix this flaw? How would you implement general error or
range checking in Do_it?
• Could you implement Do_it so that slot size drives intake size? So that either
dimension could drive the other?
• Do_it is linked very tightly to this particular drawing. How would you
generalize Do_it?
132 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
The goal of this example is to force the follower to stay in contact with the cam
profile as the cam rotates. By setting up both the cam and the follower as rigid
bodies, we dramatically reduce the number of constraints needed to implement
this action, and can concentrate more on interaction between the two pieces.
The demopart05.mi model is fairly simple. The only elements in the drawing
that are needed specifically for parametrics are the construction line and the three
point elements, which are used to facilitate placement of several Point on
constraints.
Assign Constraints
Only six constraints are needed to completely constrain this drawing. Assign each
one manually:
1. In the Generate Constraints dialog box, click the Assign radio button. Then
pull down the Type selection list and select Refelem.
2. Click Apply.
3. Click the construction line to fix it in place.
4. Use the same general method to assign a Refpoint constraint to the point
element at the centerpoint of the cam. This fixes the cam in place on the
construction line while allowing it to rotate.
5. Use the same general method to assign a Slope constraint to one of the small
line elements that cross at the centerpoint of the cam. Name this constraint
Rotation, but don't assign it a specific value yet.
Examples 133
Note that this constraint and the previous one are all that's needed to
completely constrain the "cam" rigid body: The reference point fixes
translation while the slope constraint fixes rotation.
6. Constrain the follower: Assign a Point on constraint between the leftmost
point element on the follower and the construction line. Fix the rightmost
point element to the construction line with a second Point on constraint. These
two constraints fix the rotational degree of freedom for the follower, but its
motion along the axis of the construction line still needs to be fixed.
7. Assign a final Point on constraint between the leftmost point element on the
follower and B-spline profile of the cam. This fixes the translation of the cam.
8. In Parametric, click Inquire and Icon to confirm that you've assigned each of
the constraints as described above. The constraints should resemble Figure 45.
Demopart05 Constraints on page 134. As you examine the constraints, make
sure you understand how each one constrains the motion of the rigid body to
which it's applied.
Solve
Before running the solver on this drawing, it is important to turn off the point-
merging functionality of the Solve command. Remember that by default the solver
will merge any two points that fall within the PD_RESOLVE_MERGE_
TOLERANCE distance of one another. Normally this is desirable, as it helps to
keep the drawing clean. In this case however, it is possible for the endpoint of the
follower profile to come into contact with the endpoint of the cam profile as the
cam rotates. Were this to occur, these two points would be merged, and further
134 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
parametric manipulation of this drawing would be impossible. To keep this from
happening, type in: pd_resolve_merge_tolerance -1 at the command
line.
Now, click Solve and No Keep to generate the initial variation.
To confirm that the follower will indeed maintain contact with the cam as it
rotates, display the Current Constraints dialog box and enter several different
values for the Rotation parameter, solving after each one.
To Consider
• Rotating the cam by "hand" (entering a new slope and re-solving) is fairly
tedious. It should be simple to write a macro to do this.
• Try this example with pd_resolve_merge_tolerance set to the default
value (1E-6). Rotate the cam until the follower comes to rest at the very top of
the cam profile. What happens with the very next rotation?
• Try to replicate this example without using rigid bodies. How many
constraints are needed? How would you force the hatching on the cam to
rotate along with the elements?
Examples 135
A
Tutorial
$MEDIR\pd_demos
This tutorial is intended for students who are already familiar with the Creo
Elements/Direct Drafting user interface for doing such things as creating
geometry, windowing, and dimensioning. Instructions for the mouse input device
are given first.
136 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Exercise 1
In this exercise, you draw a plate and then modify its shape by changing the
driving dimensions.
Make sure the Copilot and Parametric Design functionalities are enabled in the
System tabs (accessible via Setup).
Tutorial 137
Modify the design ...
To modify the design, click Parametric ▶ Modify ▶ Dimension ▶ Show and enclose
the design in a box. Creo Elements/Direct Drafting displays the design's
dimension in green to indicate that these are the driving dimensions. It is the
driving dimensions that are used to modify the design according to the design-
capture rules. These dimensions reflect the way in which you created the design.
Note
Remember to use the windowing functions for fitting, panning, and zooming!
138 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
7. Click the intersecting lines at S.
8. Click Redraw in View.
9. Click Parametric, Modify, Dimension, Show, and enclose the entire design in a
box.
10. Click Parametric, Modify, Dimension, Swap, and click the yellow angle.
11. Click the dimension 15 (this dimension disappears because the angle becomes
the driving dimension).
12. Click Redraw in View.
Tutorial 139
To clear the display, click Delete ▶ All ▶ Confirm.
Now go on to Exercise 2.
Exercise 2
In this exercise, you copy and modify a cogwheel to demonstrate how to create
families of parts.
140 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Identify the dimensions to change ...
1. Click Parametric ▶ Modify ▶ Dimension ▶ Show.
2. Click point B on arc of tooth.
3. Repeat for points C, D, and E.
4. Click Fit.
5. Click Parametric ▶ Modify ▶ Dimension ▶ Deferred.
6. Click the dimensions in turn and move them to unclutter the drawing.
Tutorial 141
c. Click R31 and enter 35
d. Click R30 and enter 34
2. Click End. Creo Elements/Direct Drafting updates the cogwheel accordingly.
3. Click Fit.
4. Click Geometry ▶ Circle ▶ Center & Point or Radius.
5. Draw a circle with radius 4 mm at point G.
6. In the Modify menu, tick the Keep and the Repeat checkboxes.
7. In Modify, click Rotate ▶ Center.
8. Enter the repeat factor 5.
9. Click point A to mark the center of rotation.
10. Enter 60 to define the rotation angle.
11. Enclose the 4 mm circle in a box.
12. Click Dimension ▶ Circular ▶ Radius ▶ Centerline and dimension the radii of
the six circles.
13. Click Parametric ▶ Modify ▶ Dimension ▶ Show and click the original circle
(not one of the copies).
142 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
3. Click Delete and delete the six yellow dimensions.
4. In Generate Constraints, click the Show radio button, select Size from the Type
list, and click Apply.
The parametrics module has used the actions performed during the creation of
the design to generate constraints for dynamic modification of the design.
5. In Generate Constraints, click the Assign radio button, select Size from the
Type list, and click Apply.
6. Click the original circle at G.
7. Enter 'Borehole_radius'on the command line.
8. Click End.
9. Click Advanced in Current Constraints.
10. Click the value 3 in the column New Value or Expression.
11. Enter 4 and click Preview in Solve.
12. Click Keep in Solve and click the design.
13. Move the copy of the design to another location (you may need to Pan).
14. Click the destination point for the copy.
15. Click End.
16. Click Fit.
Note the smooth transition from simple design creation using the green driving
dimensions to parametric design.
Tutorial 143
• To make sure your design intent drawing is always stored right away, switch
Parametric Design and Copilot on every time you create geometry. This avoids
having to give any constraints afterwards.
• Note, that when you modify geometry using Solve in Parametrics, you can
decide whether you want to keep the original geometry and let the modified be
a copy or if you want to modify the original geometry without a copy. This is
done by selecting either the Keep or the No Keep option.
• When you specify a parameter, you can either specify a figure or enter an
expression that is evaluated when the design is solved. This is useful, for
example, when maintaining relations between width and height of designs.
• In case you want to do specific modification to more complex designs,
consider forming rigid bodies of geometry you want to move and translate as a
whole. This can facilitate the modification of large designs.
• How you create the design is important. For example, try creating Figure 46
on page using horizontal and vertical geometry instead of using the Polygon
command. You would get very different results.
144 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
B
Parametric Design Command
Syntax
145
PD_RESOLVE_MERGE_TOLERANCE function ....................................................... 164
PD_RIGID_ADD command ...................................................................................... 164
PD_RIGID_REMOVE command............................................................................... 165
PD_RIGID_REFRESH_TABLE function .................................................................... 165
PD_RIGID_SHOW function...................................................................................... 165
PD_SHOW function................................................................................................. 165
PD_SHOW_CLEAR function.................................................................................... 167
PD_SHOW_COLOR function ................................................................................... 168
PD_SHOW_LABEL_SIZE function ........................................................................... 169
PD_SHOW_MOVE_TEXT function........................................................................... 169
PD_SHOW_USE_POSTFIX function ........................................................................ 169
PD_USE_DIMENSION command............................................................................. 169
PD_ZONE_ADD command ...................................................................................... 170
PD_ZONE_REMOVE command............................................................................... 170
PD_ZONE_SHOW function...................................................................................... 170
parameter name...................................................................................................... 170
This appendix contains the command syntax for the Parametric Design module.
Parametric Design is implemented in the Creo Elements/Direct Drafting macro
programming language, and the descriptions here follow Creo Elements/Direct
Drafting conventions. Macros are listed in alphabetical order.
146 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
PD_AUTO_ANGLE_TOLERANCE function
-->(PD_AUTO_ANGLE_TOLERANCE)----|number|--->
This function specifies the absolute tolerance used during PD_RESOLVE
AUTOMATIC constraint extraction to compare angles, such as checking whether
two lines are parallel, or a single line is horizontal. The number supplied must be
greater than or equal to zero. The initial value is 0.000001 radians.
PD_AUTO_SAME_DISTANCE_
TOLERANCE function
-->(PD_AUTO_SAME_DISTANCE_TOLERANCE)----|number|--->
This function specifies the color of lines which will be treated as symmetry lines
during automatic constraint generation. If ANY is specified then color will not be
used to exclude lines from being automatically constrained as symmetry lines.
PD_AUTO_SYMMETRY_COLOR is used in combination with PD_AUTO_
SYMMETRY_LINE and PD_AUTO_SYMMETRY_LINETYPE. The initial
setting is ANY.
PD_AUTO_SYMMETRY_LINE function
-->(PD_AUTO_SYMMETRY_LINE)--+---(NO)--+--->
| |
+--(YES)--+
This function specifies whether the automatic constraint generator should scan the
drawing for symmetry lines. If so, then all lines which have the color specified by
PD_AUTO_SYMMETRY_COLOR and linetype specified by PD_AUTO_
SYMMETRY_LINETYPE will qualify. The initial setting is NO.
-->(PD_AUTO_SYMMETRY_LINETYPE)--+--|linetype|-----+--->
| |
+-----(ANY)-------+
This function specifies the linetype of lines which will be treated as symmetry
lines during automatic constraint generation. If ANY is specified then linetype
will not be used to exclude lines from being automatically constrained as
symmetry lines.
PD_AUTO_SYMMETRY_LINETYPE is used in combination with PD_AUTO_
SYMMETRY_LINE and PD_AUTO_SYMMETRY_COLOR. The initial setting
is ANY.
PD_AUTO_TANGENT_TOLERANCE
function
-->(PD_AUTO_TANGENT_TOLERANCE)----|number|--->
This function specifies the absolute distance tolerance used during PD_RESOLVE
AUTOMATIC constraint extraction to check whether two elements are tangent.
One of the elements extracted must be circular. The tolerance is used to compare
the radius of the circular element to the distance from the circular element center
point to the other element. The number supplied must be greater than or equal to
zero. The initial setting is 0.000001 mm.
PD_AUTO_ZERO_DISTANCE_
TOLERANCE function
-->(PD_AUTO_ZERO_DISTANCE_TOLERANCE)----|number|--->
148 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
|
|
-->(PD_CLEAN_DRAWING)-v-+-(CLEAN_CLOSE_POINTS)-------+-|tol|-
+-(CONFIRM)-v->
| |
|
+-(CLEAN_DUPLICATE_GEOMETRY)-+
|
|
|
+-(CLEAN_STACKED_GEOMETRY)-----------
+
This command is used to modify three geometrical situations which can cause
inefficiency and confusion for parametric design.
CLEAN_CLOSE_POINTS is used to merge points that are within the user
specified distance of each other. For each set of two or more points which are to
be merged, a new location is chosen to move the entire set of points to. The new
location will be within the tolerance zone specified. In general, there is no way to
predict or control which elements will be adjusted. This should not be a limitation,
since the tolerance used is usually very small.
CLEAN_DUPLICATE_GEOMETRY is used to delete elements that are
duplicates of other elements. Most geometry types are duplicates if their model
points match. Circles and construction circles are determined to be duplicates if
the center points match and the radii are within the specified tolerance. In general,
there is no way to control or specify which element will be deleted.
CLEAN_STACKED_GEOMETRY is used to split overlapping lines, arcs and
circles. There is no user specified tolerance for this operation. The geometry must
overlap with intersection tolerance.
Each option first scans the part for the desired modification. If there are instances
of the defect then the offending geometry is highlighted and the user is prompted
for a CONFIRM before actually performing the modification. If no cleanup is
necessary then the prompt notes this fact while asking for a new option. As an aid
to the macro writer, a CONFIRM at this point will be ignored.
PD_DEFAULT_DIM_COLOR command
-->(PD_DEFAULT_DIM_COLOR)--|color|-->
150 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
| +--|name|---+
|
|
|
|
|
|
+---------------------------------+ |
| |
| |
+-(PD_DISTANCE)-v-|elm 1|-|elm 2|-
+-----------+---^------+
| | |
|
| +--|value|--+
|
| | |
|
| +--|name|---+
|
|
|
|
|
| +-------+
|
| | |
|
+-(PD_ELEM)-v-|elm|-
^------------------------------------+
|
|
|
|
|
+----------------------------------+ |
| |
| |
+-(PD_FILLET)-v-|fillet|-|end elm 1|-|end elm
2|-^-------+
|
|
|
|
| +--------+
|
| | |
|
+-(PD_HORIZONTAL)-v-|line|-
^-----------------------------+
152 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
| | |
|
+-(PD_PERPENDICULAR)-v-|line 1|-|line 2|-
^---------------+
|
|
|
|
|
+---------------------------------+ |
| |
| |
+-(PD_SAME_DISTANCE)-v-|elm 1|-|elm 2|-|elm 3|-
|elm 4|-^-+
|
|
|
|
| +-----------------+
|
| | |
|
+-(PD_SAME_SIZE)-v-|elm 1|-|elm 2|-
^---------------------+
|
|
|
|
| +--------------------------+
|
| | |
|
+-(PD_SIZE)-v-|elm|----
+-----------+---^-----------------+
| | |
|
| +--|value|--+
|
| | |
|
| +--|name|---+
|
|
|
|
|
| +---------------------------+
|
| | |
|
PD_FIX is used to define new constraints. These constraints will be used in future
calls to PD_RESOLVE if the modify zone contains any of the elements involved.
The meaning of each constraint type is described below in terms of how it effects
PD_RESOLVE.
PD_ANGLE_LINES specifies the relative angle between two linear elements. If a
value or name is not specified then the current angle is preserved.
PD_COLLINEAR will force two linear elements to be collinear.
154 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
PD_DIMENSION will cause the geometry associated with the dimension to take
on the given value. If a value or name is not given, then the current value of the
dimension will be preserved. If a parameter name is defined then either the value
of the parameter will be used to define the geometry or the geometry will be used
to define the value of the parameter.
PD_DISTANCE specifies the distance between any two point, linear or circular
elements. If a value or name is not specified then the current distance is preserved.
PD_ELEM will maintain the position and size of the element.
PD_FILLET will force two real geometry elements to be filleted by a given
circular arc. Each end of the arc must share an end point with one of the elements.
PD_HORIZONTAL will force a linear element to be horizontal.
PD_MIRROR will force the extension of two elements to be mirror images of
each other about a given line.
PD_POINT will force the point to remain in its current position, or in the position
indicated by the parameter. Alternatively, other constraints can position the point
which will be used to define the value of the parameter. See NOTE below for
additional information about this constraint type.
PD_POINT_ON will force a point to slide along the indicated element or its
extension. See NOTE below for additional information about this constraint type.
PD_PARALLEL will force two linear elements to be parallel.
PD_PERPENDICULAR will force two linear elements to be perpendicular.
PD_SAME_DISTANCE will force the distances between two pairs of elements to
be identical.
PD_SAME_SIZE will force two lines to have the same length or two circular
elements to have the same radius.
PD_SIZE specifies the length of a line or the radius of a circular element. If a
value or name is not specified then the current size is preserved.
PD_SLOPE specifies the slope of a linear element. The slope is measured
counterclockwise relative to the positive x axis. If a value or name is not specified
then the current slope will be preserved.
PD_SYM_LINE identifies a line as a symmetry line. Lines identified in this
manner will be used by PD_RESOLVE GENERATE to search for pairs of
mirrored elements.
PD_TANGENT will force two elements be tangent. One of the elements must be
circular. Two elements can be tangent even if they do not touch. All that is
required is that the extension of the elements are tangent.
PD_VERTICAL will force a linear element to be vertical.
PD_FREE command
+---------------------------------------------+
|
|
-->(PD_FREE)-+-(NOBAN)-+-v-+-------------|id pnt|---------
+-+--------+-^--+-->
| | | | |
| |
+--(BAN)--+ | |
+-(UNDO)-+ |
| |
|
+--|kind|--+-+--(ALLTYPES)--+--+
|
| | |
|
| +----|type|----+
|
|
|
|
|
|
+----------+------------------------+ |
| | |
| |
+--v--|type|--v--|select|--
+--------+--^-------+
| |
| |
|
+-(UNDO)-+ |
|
|
156 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
|
|
+-------(ALLTYPES)---
(CONFIRM)-----------------+
158 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
PD_MAKE_DIMENSIONS displays parametric dimensions associated with
selected elements. Parametric dimensions are created when COPILOT is turned
on. Parametric dimensions are removed from the display with PD_HIDE_
DIMENSIONS.
PD_MODIFY_DIMENSION command
+-------------<------------+
v
^
-->(PD_MODIFY_DIMENSION)--+--(IMMEDIATE)--+--+--|sel dim|--|
new value|--+
| |
+--(DEFER)------+
This function specifies the color to be used for new points that are created by the
system. This creation can occur in either the automatic constraint generator or
when the user defines new PD_POINT and PD_POINT_ON constraints.
PD_NEW_POINT_LINETYPE function
-->(PD_NEW_POINT_LINETYPE)--|linetype|-->
This function specifies the linetype to be used for new points that are created by
the system. This creation can occur in either the automatic constraint generator or
when the user defines new PD_POINT and PD_POINT_ON constraints.
PD_NEW_POINT_VISIBILITY function
-->(PD_NEW_POINT_VISIBILITY)--+--(VISIBLE)----+-->
| |
+--(INVISIBLE)--+
160 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
+---(POINT_PAR)----+
| |
+---(USER_PAR)-----+
PD_PARAM_ADD adds a new parameter to the current part. The parameter must
be one of four types: angle, length, point or user.
PD_PARAM_FIX command
-->(PD_PARAM_FIX)--|parameter name|--+--------|
number|----------+--->
|
|
+--(')--|expression|--
(')--+
|
|
+----------()------------+
PD_PARAM_FIX defines what the value of the named parameter will be during
the next call to PD_RESOLVE.
Inputting a |value| causes the new value of that parameter to be the given value.
The value must be either a number or a point, depending on the parameter type.
Inputting a quoted expression will cause the expression to be evaluated during
subsequent calls to PD_RESOLVE. The expression can include references to other
parameters. Any valid Creo Elements/Direct Drafting expression is allowed.
Inputting a null string, , removes any previously defined value or expression for
the parameter.
PD_PARAM_INQ function
-->(PD_PARAM_INQ)----|parameter name|--->
PD_PARAM_INQ writes information about the parameter into the system inquiry
array. It can then be retrieved with INQ (see INQ).
PD_PARAM_INQ set the following values:
+----------------------------------------------------------------------+
| function/command | <inq_index> | result
|
+------------------+--------------
+-------------------------------------+
|................................................................-
......|
| if parameter type is not PD_POINT
|
|................................................................-
......|
| | 3 | Current parameter value.
|
|................................................................-
......|
| if parameter type is PD_POINT
|
|................................................................-
......|
| | 3 | X coordinate of point
parameter. |
| | 4 | Y coordinate of point
parameter. |
+----------------------------------------------------------------------+
PD_PARAM_REMOVE command
-->(PD_PARAM_REMOVE)----|parameter name|--->
PD_PARAM_REMOVE removes a parameter from the current part. The
command will fail if the named parameter is used within an expression for another
parameter or as the value for a constraint.
162 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
PD_PARAM_SAVE function
-->(PD_PARAM_SAVE)--->|output_spec|---->
PD_PARAM_SAVE saves the parameter settings to "output spec" ( see help for
OUTPUT_SPEC for details). Output consists of a PD_PARAM_FIX command
for each parameter. The file can be read with INPUT to restore the parameter
settings.
PD_PARAM_SHOW function
-->(PD_PARAM_SHOW)---+--(ALL)---+-------------->
| |
+--(USER)--+
+--(PREVIEW)----------------------------------+
|
|
+--(REPLACE)---
+----------+-------------------+
| | |
|
| +--(UNDO)--+
|
|
|
164 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
This command is used to define rigid bodies, which is a collection of geometric
entities which PD_SOLVE will translate and rotate as a group. No change of size
or relative position will occur on members of a rigid body.
You can have as many rigid bodies as you desire. The rigid name can be any user
string.
Members of a rigid body can be any geometric entity, including subparts and
hatchings. Subparts will translate and rotate with the rigid body. Hatchings will
rotate with the rigid body.
Rigid body membership is recorded as an info string on the member entity. The
form of the info string is always "PD_RIGID " + |rigid name|.
PD_RIGID_REMOVE command
+----------------+------------+
| | |
-->(PD_RIGID_REMOVE)--v--|rigid name|--v--|select|--^-->
This command is used to synchronize the contents of the logical table, rigids.ltab,
with the names of all rigid bodies in the current part. This synchronization is done
automatically whenever PD_RIGID_ADD, PD_RIGID_REMOVE, or PD_
RIGID_SHOW is invoked, or when the current part is changed. However, since a
rigid body is simply an info string, which can be edited by other means, this
command is occasionally useful in its own right.
PD_RIGID_SHOW function
+----------------+
| |
-->(PD_RIGID_SHOW)--v--|rigid name|--^-->
166 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
last call to PD_RESOLVE to determine the new geometry but were satisfied.
USED are those constraints that were used in the last call to PD_RESOLVE to
determine the new geometry. USER are those constraints added by the user or
system constraints that were modified by the user. VIOLATED are those
constraints that were violated by the last call to PD_RESOLVE.
PD_SHOW_CLEAR function
-->(PD_SHOW_CLEAR)--+--------------+--+--(ALLTYPES)----------
+-----+--->
| | |
|
+--(BANNED)----+ +--(PD_ANGLE_LINES)----
+
| | |
|
+--(NEW)-------+ +--(PD_COLLINEAR)------
+
| | |
|
+--(SYSTEM)----+ +--(PD_DIMENSION)------
+
| | |
|
+--(UNUSED)----+ +--(PD_DISTANCE)-------
+
| | |
|
+--(USED)------+ +--(PD_ELEM)-----------
+
| | |
|
+--(USER)------+ +--(PD_FILLET)---------
+
| | |
|
+--(VIOLATED)--+ +--(PD_HORIZONTAL)-----
+
|
|
+--(PD_MIRROR)---------
+
|
|
+--(PD_PARALLEL)-------
+
|
|
+--(PD_PERPENDICULAR)--
+
168 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
PD_SHOW_COLOR is used to set the color of constraint icons displayed by
subsequent calls to PD_SHOW.
PD_SHOW_LABEL_SIZE function
-->(PD_SHOW_LABEL_SIZE)---|size|--->
170 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
| |
+----(_)-------+
This describes the syntax of a parameter name. A parameter name follows the
same restrictions and guidelines as macro names. Parameter names must not
conflict with existing command names, qualifiers, macros, etc.
172 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
Setting Icon Defaults From the Screen
Menu.
Use Move Icon and Icon Setting to set the location, size and colors of Parametric
Design information labels and highlighting.
Move Icon
Move Icon allows you to change the location of constraint icons on the part. To
move icons:
1. Click Parametric ▶ Modify ▶ Move Icon or type:
PD_SHOW_MOVE TEXT [Enter]
2. Click the icon to be moved.
3. Drag the cursor to the new location and click again.
Note that you can only change the position of the constraint icon itself; you can't
change the position of the callout line on the referenced geometry.
Icon Size
To change the icon size:
1. Click Parametric ▶ Settings ▶ Icon to bring up the Icon Setting dialog box, or
type:
PD_SHOW_LABEL_SIZE [Enter]
2. Type in the new size.
Subsequent Show or Inquire Icon functions will draw constraint icons in the new
size. Existing icons can be cleared and re-displayed to get the new size. The Creo
Elements/Direct Drafting NEW_SCREEN function will also re-display icons in
the new size and location. The default icon size is the same as the Creo Elements/
Direct Drafting default text size, 3.5 mm.
Set Color
To set the icon color:
1. Click Parametric ▶ Settings ▶ Icon to bring up the Icon Setting dialog box, or
type:
PD_SHOW_COLOR [Enter]
2. Enter the new color.
174 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
PD_NEW_C_LINE_LINETYPE DOT_CENTER
PD_NEW_C_LINE_VISIBILITY INVISIBLE
PD_PREVIEW_COLOR MAGENTA
PD_DEFAULT_DIM_COLOR GREEN
Design_intent_on
PD_AUTO_SYMMETRY_*
The PD_AUTO_SYMMETRY_* options enable and disable automatic symmetry
line constraining. When PD_AUTO_SYMMETRY_LINE is set to YES, the
constraint generator and solver will automatically assign symmetry-line
constraints to all lines that have the PD_AUTO_SYMMETRY_COLOR and PD_
AUTO_SYMMETRY_LINETYPE.
PD_AUTO_*_TOLERANCE
The PD_AUTO_*_TOLERANCE options set various tolerances used by
Complete to determine the relationships among elements in a part. These
tolerances are used to compensate for minor inconsistencies in a part (e.g., fillets
that are not quite tangent, slightly disconnected elements, lines slightly out of
parallel, etc.).
PD_AUTO_ZERO_DISTANCE_TOLERANCE
This function specifies the absolute tolerance used by Complete to compare a
distance to zero. This tolerance is used to detect coincident points, collinear lines
and point-on-element constraints. The number supplied must be greater than or
equal to zero. The initial setting is 0.000001 mm.
PD_AUTO_SAME_DISTANCE_TOLERANCE
This function specifies the absolute tolerance used by Complete to compare two
non-zero distances. This tolerance may be used, for example, to check whether
two circular elements have the same radius. The number supplied must be greater
than or equal to zero. The initial value is 0.000001 mm.
PD_AUTO_ANGLE_TOLERANCE
This function specifies the absolute tolerance used by Complete to compare
angles. This tolerance is applied, for example, when checking whether two lines
are parallel or a single line is horizontal. The number supplied must be greater
than or equal to zero. The initial value is 0.000001 radians.
PD_RESOLVE_MERGE_TOLERANCE
PD_RESOLVE_MERGE_TOLERANCE specifies the absolute tolerance used by
the Parametric Design solver to decide whether the modification should result in
the merging of two or more points, or in the deletion of small elements. The merge
process can be eliminated by setting this tolerance to a negative number. The
initial setting is 0.000001 mm.
PD_SHOW_*
The PD_SHOW_COLOR and PD_SHOW_LABEL_SIZE options correspond to
the color and size settings in the Icon Setting dialog box.
PD_SHOW_USE_POSTFIX controls the display of dimensional constraints.
When set to the default value of NO, the constraint value replaces the normal
dimension text. If set to YES, the constraint value is displayed as a postfix to the
main dimension text. Earlier versions of the software always displayed
dimensional constraints as postfixes.
ADD_CURRENT_INFO
ADD_CURRENT_INFO "PD_ZONE" END causes the "PD_ZONE" info to be
included in all new geometry. As a result, all new geometry is added to the zone.
PD_NEW_C_LINE_*
The PD_NEW_C_LINE_* options determine the default color, linetype, and
visibility for any new construction lines that are created when constraints are
created. The default color and linetype causes these construction lines to be
displayed as green lines. Visibility of these construction lines can be set so they
are either always visible or visible only when constraints are displayed.
PD_NEW_POINT_*
The PD_NEW_POINT_* options determine the default color, linetype, and
visibility for any new points that are created. Typically, these points are created
only when needed to fix point-on or reference-point constraints. The default color
176 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
and linetype causes these points to be displayed as green ×'s. Visibility of these
points can be set so they are either always visible or visible only when constraints
are displayed.
PD_PREVIEW_COLOR
PD_PREVIEW_COLOR sets the default color used by the Preview mode of
Solve. This color cannot be set from the screen menu.
PD_DEFAULT_DIM_COLOR
PD_DEFAULT_DIM_COLOR sets the default color used when parametric
dimensions are displayed for Dimension Driven Modification. This color cannot
be set from the screen menu.
A Fillet, 49
freeing, 28
ADD CURRENT INFO function, 176
generating with Design Intent
Add Multiple command, 23
Capture, 80
Add Single command, 23
Horizontal, 50
All option, 33
icons, 42
Angle command, 65
Mirror, 51
Angle constraint, 42
Parallel, 52
Assign command, 27, 66
parametizable, 66
assigning
Perpendic, 54
constraints, 25
Point on, 55
parameters, 66
Refelem, 56
to the zone, 23
Refpoint, 57
automatic constraint generation, 87, 99
Samedist, 57
Samesize, 58
B showing, 28
Ban command, 29 Size, 59
banning constraints, 29 Slope, 59
Symmline, 60
Tangent, 61
C tools, 25
Clean commands, 21 Vertical, 62
cleaning geometry, 20-21, 87 X-Distance, 63
Clear command, 28 Y-Distance, 63
clearing constraints, 28 creating
Collinear constraint, 44 parameter value tables, 19
Complete command, 29-30, 87, 99 parameters, 65
constraints rigid body, 25
Angle, 42
assigning, 25 D
automatic generation, 87, 99
D_CLEAN_DRAWING command,
banning, 29
148
clearing, 28
defaults, 172
Collinear, 44
defining
Dimension, 44
parameters, 67
Distance, 46
178 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
zones, 20 geometry
deleting cleaning, 87
parameters, 70 geometry cleaning, 20
zone elements, 24
design intent capture
H
benefits, 80
constraint creation, 81 Horizontal constraints, 50
disabling, 80
elements affected, 81
I
enabling, 80
inquiring on/off status, 80 Icon Color command, 173
overview, 80 Icon command, 173
Dimension constraint, 44 Icon commands, 20
dimension driven modification Icon Size command, 173
benefits, 74 icons
defer, 76 coloring, 173
displaying parametric dimensions, constraint, 42
74 manipulating, 20
immediate, 76 modifying, 99
overview, 74 moving, 173
dimensions purpose, 27
controlling position, 47 removing, 28
Display command, 24, 33 resizing, 173
displaying Inconsistent option, 33
icons, 20 infos
zones, 24 PD RIGID, 24
Distance constraint, 46 PD STATUS, 34
Duplicate command, 22 PD ZONE, 23
Infos
PD ZONE, 91
E Input command, 18, 37
editing parameter dimensions, 67 input parameter value tables, 18
expression, defined, 64 Inquire command, 31
Inquire Element command, 31
Inquire Icon, 31
F invisible geometry, 102
Fillet constraint, 49 display attributes, 103, 176
Free command, 28, 66
freeing constraints, 28
K
Keep command, 17, 32
G
Generate Rigids commands, 24
Index 179
L changing values, 16
Length command, 65 creation, explicit, 65
loading master parts, 15 creation, implicit, 65
defining, 67
definition table, 64
M editing, 64, 67, 69-70
master part expressions, 64
creating, 36 naming rules, 66
defined, 15 removing, 70
evaluating, 39 showing, 16, 71
loading, 15 units, 67
preparation, 21 value table, 16
master parts value type, 68
and parameters, 37 Parametric Design
Mirror constraint, 51 starting, 11
Modify command, 98 Parametric Design software
modifying defaults, 172
parameter values, 16 overviewed, 10
modifying parameter value tables, 16 parametric dimensions
Move Icon command, 173 display attributes, 75
multiple parts, 97 modifying, 76
swapping, 77
viewing, 74
N Partially Determined option, 34
naming rules for parameters, 66 PD RIGID info text, 24
No Keep command, 18, 33 PD STATUS info text, 34
pd_auto_angle_tolerance, 87
PD_AUTO_ANGLE_TOLERANCE
P function, 147, 175
Parallel constraint, 52 pd_auto_same_distance_tolerance, 87
parameter definition table PD_AUTO_SAME_DISTANCE_
fields, 67 TOLERANCE function, 147, 175
parameter name, 170 PD_AUTO_SYMMETRY_COLOR
parameter value table function, 147, 175
application, 18, 71 PD_AUTO_SYMMETRY_LINE
creating, 19 function, 147, 175
illustrated, 16 PD_AUTO_SYMMETRY_
modifying, 16 LINETYPE function, 148, 175
restoring, 18 pd_auto_tangent_tolerance, 87
saving, 18 PD_AUTO_TANGENT_
parameters TOLERANCE function, 148, 176
assigning, 66 pd_auto_zero_distance_tolerance, 87
180 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
PD_AUTO_ZERO_DISTANCE_ PD_RIGID_ADD command, 164
TOLERANCE function, 148, 175 PD_RIGID_REFRESH_TABLE
PD_DEFAULT_DIM_COLOR function, 165
command, 75, 149, 177 PD_RIGID_REMOVE command, 165
PD_DEFAULT_DIM_TEXT_SIZE PD_RIGID_SHOW function, 165
command, 149 PD_SHOW function, 165
PD_FIX command, 150 PD_SHOW_CLEAR function, 167
PD_FREE command, 156 PD_SHOW_COLOR function, 168,
PD_HIDE_DIMENSIONS command, 176
158 PD_SHOW_LABEL_SIZE function,
PD_INFO_CONSTRAINT function, 169, 176
158 PD_SHOW_MOVE_TEXT function,
PD_INFO_ELEMENT function, 158 169
PD_MAKE_DIMENSIONS command, PD_SHOW_USE_POSTFIX function,
158 169, 176
PD_MODIFY_DIMENSION PD_USE_DIMENSION command,
command, 159 169
PD_NEW_C_LINE_COLOR function, PD_ZONE info text, 23, 91
159, 176 PD_ZONE_ADD command, 170
PD_NEW_C_LINE_LINETYPE PD_ZONE_REMOVE command, 170
function, 159, 176 PD_ZONE_SHOW function, 170
PD_NEW_C_LINE_VISIBILITY Perpendic constraints, 54
function, 103, 160, 176 Point command, 66
PD_NEW_POINT_COLOR function, Point on constraint, 55
160, 176 Points command, 22
PD_NEW_POINT_LINETYPE Preview command, 17, 32
function, 160, 176
PD_NEW_POINT_VISIBILITY
R
function, 103, 160, 176
PD_PARAM_ADD command, 160 Refelem constraint, 56
PD_PARAM_FIX command, 161 Refpoint constraint, 57
PD_PARAM_INQ function, 161 Remove command, 24, 70
PD_PARAM_REMOVE command, removing
162 parameters, 70
PD_PARAM_SAVE function, 163 zone elements, 24
PD_PARAM_SHOW function, 163 replication, 96
PD_PREVIEW_COLOR function, 28, rigid bodies, 94, 96
32, 163, 177 rigid body
PD_RESOLVE command, 163 clearing, 25
pd_resolve_merge_tolerance, 87 creating, 25
PD_RESOLVE_MERGE_ defined, 24
TOLERANCE function, 164, 176 showing, 25
Index 181
S pd_auto_zero_distance_tolerance,
87
Samedist constraint, 57
pd_resolve_merge_tolerance, 87
Samesize constraint, 58
Save command, 18, 37
saving parameter value tables, 18 U
Show command, 16, 28, 71
UA_DESIGN_INTENT command, 80
showing
UA_GET_DESIGN_INTENT
constraints, 28
arithmetic function, 80
parameters, 16, 71
Unsolved option, 34
Size constraint, 59
User command, 66
sketch input, 88
Slope constraint, 59
Solve command, 17, 32 V
Solved option, 34 variation, generating, 15
solving Vertical constraint, 62
errors, 33
Keep mode, 17, 32
modes, 17, 32 W
No Keep mode, 18, 33 working methods
Preview mode, 17, 32 advanced, 87
solver described, 101 for designer, 12
tolerances, 87 for draftsperson, 11
SPLINE CONVERSION function, 93 summarized, 11
splines
parametric control, 93-94
Stacked command, 22 X
strategy X-Distance constraint, 63
for constraining, 30, 32
for master parts, 36, 39
Symmline constraint, 60 Y
system defaults, 172 Y-Distance constraint, 63
T Z
Tangent constraint, 61 zone
tolerances implementation, 91
defined, 87 manipulation of, 91, 93
pd_auto_angle_tolerance, 87 multiple, 92
pd_auto_same_distance_tolerance, Zone commands, 21
87 zones
pd_auto_tangent_tolerance, 87 adding elements to, 23
defined, 21
182 Parametric Design with Creo Elements/Direct Drafting Windows User Interface
removing elements, 24
showing contents, 24
Index 183