Spring 2002
Table of Contents | Home
Page 1 2
Design Using Inheritance Features
(continued from page 1)

Using Multiple Inheritance Features

A base model used as the parent of an inheritance feature can contain one or more inheritance features. In this case, only the first-level inheritance feature can be modified in the derivative part and only dimensions from the first-level inheritance feature can be added to the varied dimensions table.

Replacing the Base Model with a Different Part

To replace the base model of an inheritance feature with a family table instance of the base model, follow these steps:

1. Select Base Model from the Inheritance Feature dialog box.

2. Select Define.

3. Select Confirm. A Family Table dialog box displays a listing of the instances in the family table.

4. Select the desired instance from the list and then OK.

If the base model does not belong to a family table, the inheritance feature dialog box will not present the option to replace it.

Helpful Hints

Configuration Options
There is an undocumented configuration option in Pro/ENGINEER 2001 that affects access to inheritance features. The default setting for this option is “yes.” If set to “no,” inheritance features will not appear in the feature creation menu structures.

Inheritance_feature yes, no

Patterning Inheritance Features
Inheritance features can be referenced patterned if they were placed using a coordinate system other than the default system. The placement coordinate system itself must also be patterned. All instances of such a pattern maintain a reference to the first inheritance feature, so that any changes applied to the first are reflected in all pattern instances.

Accessing Relations and Parameters

(Note: In the following examples, the internal ID of the inheritance feature is 39.)

Use the following syntax to access the inherited parameters of the base model. These rules apply to both parameter names and dimension symbols. The term symbol_string is interchangeable (parameter or dim symbol) when applying the syntax.

The general form is:

symbol_string:IID_##

where symbol_string is the parameter name or dimension symbol from the base model, and IID_## is the inheritance feature internal feature ID.

The relation for setting dimension d1 in the inheritance feature equal to the parameter total_length inherited from the base model is:

d1=total_length:IID_39

Local parameters (feature parameters of the inheritance feature) are also accessible if they exist. The syntax in this case is:

symbol_string = param_name:FID_##

where param_name is the parameter name of the local parameter, and ## is the feature ID number of the inheritance feature.

The relation d2=boss_dia:FID39 would thus set local dimension d2 equal to the parameter boss_dia, which is a local parameter of the inheritance feature.

The syntax for accessing feature parameters of the inherited features is:

symbol_string = feature_param_ name: FID_##:IID_##.

where feature_param_name is the feature parameter name of interest from the base model feature, FID_## is the feature ID of the feature in the base model containing the parameter, and IID_## is the inheritance feature internal feature ID.

The relation d32=path_length: FID_43:IID_39 would set local dimension d32 equal to the value of the parameter path_length, which was defined within feature ID 43 of the base model. Access to this feature parameter is through the inheritance feature IID 39.

The menu manager’s parameter and relations options can be used to query parameter and relation information on individual features in an inheritance feature. Picking Parameter, Feature and then selecting the inheritance feature invokes a FEAT PARAM menu with two choices—local and inherited. If the inherited option is selected, the MODEL PARAMS menu only allows selection of INFO (all other options are grayed out). The same behavior applies to the relation option in the menu manager.

The inclusion of inheritance features as an enhancement to the merge geometry functionality affords additional flexibility in managing external dependencies among Pro/ENGINEER models. They offer an improved method to establish and maintain external dependencies in many cases over previously available functionality. I hope that some of the specific applications illustrated here will help you determine if inheritance features might have utility within your Pro/ENGINEER environment.

Thomas Braxton is an engineering manager at Motorola BCDC in Boynton Beach, Florida, USA.
He can be reached at thomas.braxton@motorola.com.