User's Guide > Annotations: Annotation Features > Surface Finish Annotations
Surface Finish Annotations
The functions described in this section provide read access to the properties of the surface finish object. They also allow you to create and modify surface finishes.
The style of surface finishes for releases previous to Pro/ENGINEER Wildfire 2.0 was a flat-to-screen symbol attached to a single surface. From Pro/ENGINEER Wildfire 2.0 onwards, the method for construction of surface finishes has been modified. The new style of surface finish is a symbol instance that may be attached on a surface or with a leader or offset to another surface finish, symbol, note, or gtol. The following functions support both the old and new surface finish annotations, except where specified.
Functions Introduced:
The function ProSolidSurffinishVisit() visits the surface finishes stored in the specified solid model. This function accepts a visit function ProSurfaceVisitAction() and a filter function ProSurfaceFilterAction() as the input arguments.
The function ProSurffinishCreate() creates a new symbol-based surface finish annotation. The function requires a symbol instance data structure for creation. Once the surface finish annotation is created, use the function ProAnnotationShow() to display it.
Note:
 
The data must conform to the requirements for surface finishes, that is, attachment must be via leader to or on one or more surfaces.
You can use the standard surface finish symbol definitions from the symbol instance data structure. Use the function ProSolidDtlsymdefRetrieve() to retrieve the surface finish symbol definitions from the location PRO_DTLSYMDEF_SRC_SURF_FINISH_DIR. The surface finish value should be set using the variant text options for symbol instances.
The function ProSurffinishReferencesGet() returns the surface or surfaces referenced by the surface finish.
The function ProSurffinishSrfcollectionGet() obtains a surface collection which contains the references of the surface finish.
The function ProSurffinishSrfcollectionSet() assigns a surface collection to be the references of the surface finish. This overwrites all current surface finish references. The following types of surface collections are supported:
One by one surface set
Intent surface set
Excluded surface set
Seed and Boundary surface set
Loop surface set
Solid surface set
Quilt surface set
Note:
 
Only those surface finishes that are contained within annotation elements may use a collection of references instead of a single surface reference.
The function ProSurffinishAdditionalReferencesAdd() adds references to the specified surface finish. The input arguments follow:
surf_finish—Surface finish to which the references are to be added.
refs—Array of references specified using the ProAnnotationReference structure. You can add only one reference if you select PRO_ANNOT_REF_SRF_COLLECTION.
Note:
 
The function ProSurffinishAdditionalReferencesAdd() returns the error PRO_TK_MAX_LIMIT_REACHED when more than one reference from the type PRO_ANNOT_REF_SRF_COLLECTION is added
The function ProSurffinishAdditionalReferencesGet() returns a ProArray of references for a specified surface finish.
Use the function ProAnnotationreferencearrayFree() to release the memory assigned to the ProArray of references.
The function ProSurffinishAdditionalReferenceDelete() deletes the specified surface finish references. The input arguments follow:
surf_finish—Surface finish from which the references are to be deleted.
index_ref—Index of the references that must be deleted. Indices start from 0. Get existing references from the function ProDtlsyminstReferencesGet().
The function ProSurffinishDataGet() returns the symbol instance data for the surface finish. This function supports only new symbol-based surface finishes.
The function ProSurffinishModify() modifies the symbol instance data for the specified surface finish. This function supports only new symbol-based surface finishes.
The function ProSurffinishValueGet() retrieves the value of a surface finish annotation.
The function ProSurffinishValueSet() sets the value of a surface finish annotation.
The function ProSurffinishDelete() deletes the specified surface finish.
The functions described above supersede the Pro/Develop functions pro_surf_finish_number(), pro_get_surf_finish(), pro_delete_surface_finish() and pro_set_surface_finish().
War dies hilfreich?