Skip to main content
18-Opal
June 17, 2026
Question

Accessing Original UDF Feature Names via Creo Toolkit

  • June 17, 2026
  • 3 replies
  • 57 views

Hello,

I am working on a Creo Toolkit customization that needs to identify features created from a UDF and generate sequences based on the original UDF feature names.

As described in CS196043, when a UDF is placed in Creo Parametric, the feature names from the source UDF are not preserved in the resulting model. Because of this behavior, I cannot directly compare the placed feature names with the original UDF feature names.

However, in the UDF Placement dialog, under the Options tab, the "Redefine These Features" section displays the original feature names from the source UDF. This information appears to be available somewhere internally within Creo.

I reviewed the Creo Toolkit API documentation but could not find an API that provides access to the original UDF feature names.

My question is:

  • Is there any Creo Toolkit API that allows access to the original feature names shown in the "Redefine These Features" list?
  • If not directly, is there another supported method to retrieve the mapping between placed UDF features and their source UDF feature names?

Any guidance or recommended approach would be greatly appreciated.

Thank you.

3 replies

CHASEONHO18-OpalAuthor
18-Opal
June 18, 2026

As discussed in CS196043, original feature names are not preserved after UDF placement in Creo Parametric. Because of this limitation, I investigated a possible way to infer the original feature names.

The approach is based on having both:

  • The UDF definition (.gph)
  • The original model used to create the UDF (<GPH_NAME>_GP.prt)

The idea is to compare the Feature Type sequence contained in the UDF against the Feature Type sequence found in the original model. By locating a matching sequence, it is possible to infer the correspondence between the original feature names and the features created after UDF placement.

In my testing, the Feature Type order was largely preserved between the original model and the placed UDF, allowing a high-confidence mapping of feature names in many cases.

However, there are some limitations. If the UDF was created from only a subset of the original model (for example, a UDF instance containing only part of the feature tree), the same Feature Type sequence may appear in multiple locations within the model. In such cases, identifying the exact source location becomes more difficult and the confidence of the mapping decreases.

Therefore, this method should be considered an inference-based approach rather than a guaranteed recovery mechanism. Nevertheless, given the lack of Toolkit APIs for accessing original UDF feature names, comparing Feature Type sequences between the .gph definition and its source model currently appears to be the most practical approach available.

I would be interested to know if anyone has found a more reliable method or an API that exposes the original UDF feature name information.

RPN
18-Opal
June 18, 2026

I guess the UDF is placed without reference, what will the feature info output tell, or model info?

A hash over type order is minimum, but not save. So tell the customer to enhance the UDFs by using a feature drive ID, but all will not help if the group is deleted at the end, or the user edit something.

On redefine the UDF, is the original one the default?

FV_01
June 18, 2026

the easiest is to have a UDF stored with the original model and query that model after UDF placement because the model should be in the UDF library directory (hopefully).
to my recollection feature level parameters and/or relations are carried over into receiving feature - write a command to add a name-parameter or name-relation to original features, ask end users to call this command before UDF definition, define UDF, place UDF, query this parameter from the resulting feature.