• | One-by-one—a chain of edges, curves or composite curves, each adjacent pair of which has a coincident endpoint. Some applications may place other conditions on the resulting chain. |
• | Tangent—a chain defined by the selected item and the extent to which adjacent entities are tangent. |
• | Curve—an entire composite curve or some portion of it that is defined by two component curves of the curve. |
• | Boundary—an entire loop of one-sided edges that bound a quilt or some portion thereof defined by two edges of the boundary loop. |
• | Surf Chain—an entire loop of edges that bound a face (solid or surface) or some portion of it that is defined by two edges of the loop. |
• | Intent Chain—an intent chain entity, usually created as the result of two intersecting features. |
• | From/To—a chain that begins at a start-point, follows an edge line, and ends at the end-point. |
• | One-by-One Surface Set—Represents a single or a set of single selected surfaces, which belong to solid or surface geometry. |
• | Intent Surface Set—Represents a single or set of intent surfaces, which are used for the construction of the geometry of features. This instruction facilitates the reuse of the feature construction surface geometry as "intent" reference. This is also known as "logical object surface set". |
• | All Solid or Quilt Surface Set—Represents all the solid or quilt surfaces in the model. |
• | Loop Surface Set—Represents all the surfaces in the loop in relation with the selected surface and the edge. This is also known as "neighboring surface set". |
• | Seed and Boundary Surface Set—Represents all the surfaces between the seed surface and the boundary surface, excluding the boundary surface itself. |
• | types—Specifies an array defining the permitted instruction types. The following instruction types are supported:
|
• | n_types—Specifies the size of the types array. |
• | filter_func—Specifies the filter function. The filter function is called before each selection is accepted. If your application wishes to reject a certain selection, it can return an error status from this filter. You may pass NULL to skip the filter. |
• | app_data—Specifies the application data that will be passed to filter_func. You may pass NULL when this is not required. |
• | collection—Specifies the collection object where the results will be stored. This should be preallocated using ProCollectionAlloc() (for ProCurvesCollect()) and ProSrfcollectionAlloc() (for ProSurfacesCollect()) respectively. The collection properties and instructions will be stored in this handle after the call to the functions ProCurvesCollect() and ProSurfacesCollect(). Use the functions for programmatic access to curve and surface collections and to extract the required information. |
• | sel_list—Specifies a pointer to an array of ProSelection objects describing the current resulting curves and edges or surfaces resulting from the collection. You may pass NULL if you are not currently interested in the results of the collection. |
• | n_sel—Specifies the number of entries in sel_list. |
• | PRO_TK_INVALID_TYPE—The selection object does not contain a collection. |
• | PRO_TK_INVALID_PTR—The selection object contains a chain, but this chain reference is no longer valid. Chain references contained in ProSelections
are only valid for as long as the chain is selected in the selection buffer. Note
It is recommended to extract the ProCollection object from the ProSelection before it can be cleared from the selection buffer.
|
• | PRO_TK_INVALID_ITEM—The collection does not correctly reference the current model. |
• | PRO_TK_NOT_DISPLAYED—The collection contains one or more items that are not currently displayed (for example, due to inactive geometry) and so cannot be added to the buffer. |
• | PRO_TK_BAD_CONTEXT—The selection cannot be added to the buffer in combination with one or more objects that are already in the buffer (for example geometry and features selected at the same time). |
• | PRO_COLLECTION_LEGACY—legacy curve collection type (generated by ProCurvesCollect() or a superseded function like ProCollectionAlloc(). |
• | PRO_COLLECTION_SRFCOLL—surface collection type. |
• | PRO_COLLECTION_CRVCOLL—curve collection type. |
|
|
|
|
|
|
|
• | PRO_CURVCOLL_EMPTY_INSTR—to be used when you do not want to pass any other instruction. |
• | PRO_CURVCOLL_ADD_ONE_INSTR—for creating "One by One" chain. |
• | PRO_CURVCOLL_TAN_INSTR—for creating "Tangent" chain. |
• | PRO_CURVCOLL_CURVE_INSTR—for creating "Curve" chain. |
• | PRO_CURVCOLL_SURF_INSTR—for creating "Surface Loop" chain. |
• | PRO_CURVCOLL_BNDRY_INSTR—for creating "Boundary Loop" chain. |
• | PRO_CURVCOLL_LOG_OBJ_INSTR—for creating "Logical Object" chain. |
• | PRO_CURVCOLL_PART_INSTR—for creating chain on all possible references, or to choose from convex or concave only. |
• | PRO_CURVCOLL_FEATURE_INSTR—for creating chain from feature curves. |
• | PRO_CURVCOLL_FROM_TO_INSTR—for creating "From-To" chain. |
• | PRO_CURVCOLL_EXCLUDE_ONE_INSTR—for excluding the entity from the chain. |
• | PRO_CURVCOLL_TRIM_INSTR—to trim chain. |
• | PRO_CURVCOLL_EXTEND_INSTR—to extend chain. |
• | PRO_CURVCOLL_START_PNT_INSTR—to set the chain start point. |
• | PRO_CURVCOLL_ADD_TANGENT_INSTR—to add all edges tangent to the ends of the chain. |
• | PRO_CURVCOLL_ADD_POINT_INSTR—to add selected point or points to the collection. |
• | PRO_CURVCOLL_OPEN_CLOSE_LOOP_INSTR—to add a closed chain that is considered as open. |
• | PRO_CURVCOLL_QUERY_INSTR—for creating “Query” chain. |
• | PRO_CURVCOLL_CNTR_INSTR—to add contours to the collection. |
• | PRO_CURVCOLL_SRFS_BNDRY_INSTR—to collect boundary of the given set of surfaces. |
• | PRO_CURVCOLL_SRFS_BNDRY_ADJ_INSTR—to collect edges adjacent to the boundary of the given surfaces. |
• | PRO_CURVCOLL_SKET_ADD_ONE_INSTR—for creating “One by One” in sketcher. |
• | PRO_CURVCOLL_SKET_FROM_TO_INSTR—for creating “From-to” sketcher chain. |
• | PRO_CURVCOLL_RESERVED_INSTR—to determine the number of instructions defined in the curve instruction. |
• | PRO_CURVCOLL_NO_ATTR—applicable when there are no attributes present. |
• | PRO_CURVCOLL_ALL—applicable for all edges. |
• | PRO_CURVCOLL_CONVEX—applicable for convex edges only. |
• | PRO_CURVCOLL_CONCAVE—applicable for concave edges only. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
• | PRO_SURFCOLL_SINGLE_SURF—Instruction specifying a set of single surfaces. |
• | PRO_SURFCOLL_SEED_N_BND—Instruction specifying a combination of Seed and Boundary type of surfaces. |
• | PRO_SURFCOLL_SEED_N_BND_INC_BND—Instruction specifying a combination of Seed and Boundary type of surfaces and also includes the seed surfaces. |
• | PRO_SURFCOLL_QUILT_SRFS—Instruction specifying quilt type of surfaces. |
• | PRO_SURFCOLL_ALL_SOLID_SRFS—Instruction specifying all solid surfaces in the model. |
• | PRO_SURFCOLL_NEIGHBOR—Instruction specifying neighbor type of surfaces (boundary loop). |
• | PRO_SURFCOLL_NEIGHBOR_INC—Instruction specifying neighbor type of surfaces (boundary loop) and also includes the seed surfaces. |
• | PRO_SURFCOLL_LOGOBJ_SRFS—Instruction specifying intent surfaces. Intent surfaces are also known as "logical objects". |
• | PRO_SURFCOLL_GEOM_RULE—— Instruction specifying collection of surfaces using geometry rules. |
• | PRO_SURFCOLL_SHAPE_BASED—Instruction specifying collection of shape based surfaces. |
• | PRO_SURFCOLL_TANG_SRF—Instruction specifying collection of tangent surfaces. |
• | PRO_SURFCOLL_DISALLOW_QLT—Do not allow selections from quilts. |
• | PRO_SURFCOLL_DISALLOW_SLD—Do not allow selections from solid geometry. |
• | PRO_SURFCOLL_DONT_MIX—Allow selections from only solid or only quilt but no mixing. |
• | PRO_SURFCOLL_SAME_SRF_LST—Allow selections from same solid or same quilt. |
• | PRO_SURFCOLL_USE_BACKUP—Prompts Creo Parametric to regenerate using backups. |
• | PRO_SURFCOLL_DONT_BACKUP—Do not back up copy of references. |
• | PRO_SURFCOLL_DISALLOW_LOBJ—Do not allow selections from intent surfaces or logical objects. |
• | PRO_SURFCOLL_ALLOW_DTM_PLN—Allows datum plane selection. It is not supported in Pro/ENGINEER Wildfire 2.0. |
• | PRO_SURFCOLL_REF_SINGLE—Specifying the collection reference belonging to the "single surface set" type of instruction. This type of reference can belong to single surface type of instruction. |
• | PRO_SURFCOLL_REF_SINGLE_EDGE—Specifying the collection reference belonging to the an "single surface set" edge type of instruction. |
• | PRO_SURFCOLL_REF_SEED—Specifying the collection reference to be the seed surface. This type of reference can belong to seed and boundary type of instruction. |
• | PRO_SURFCOLL_REF_SEED_EDGE—Specifying the collection reference of seed edge type. This type of reference can belong to seed and boundary type of instruction. |
• | PRO_SURFCOLL_REF_BND—Specifying the collection reference to be a boundary surface. This type of reference can belong to seed and boundary type
of instruction. A single seed and boundary type of instruction will have at least one of each seed and boundary type of reference.
|
• | PRO_SURFCOLL_REF_NEIGHBOR—Specifying the collection reference to be of neighbor type. This type of reference belongs neighbor type of instruction. |
• | PRO_SURFCOLL_REF_NEIGHBOR_EDGE—Specifying the collection reference of neighbor edge type. This type of reference belongs to neighbor type of instruction. A neighbor type of instruction will have one neighbor and one neighbor edge type of reference.
|
• | PRO_SURFCOLL_REF_GENERIC—Specifying the collection reference to be of generic type. This type of reference can belong to intent surfaces , quilt and all-solid type of instructions. |
|
|
|
|
|
|
|
|
|
|
|
• | Specify the surface collection instruction as PRO_SURFCOLL_SINGLE_SURF. |
• | Specify the include argument as PRO_B_FALSE. |
• | PRO_SURFCOLL_ALL_GEOM_RULE—Specifies that when this flag is included with other rule flags, all the rules are applied. Otherwise, any applicable geometry rule is applied. |
• | PRO_SURFCOLL_CO_PLANNAR_GEOM_RULE—Specifies that the surfaces coplanar to the seed surface should be collected. |
• | PRO_SURFCOLL_PARALLEL_GEOM_RULE—Specifies that the surfaces parallel to the seed surface should be collected. |
• | PPRO_SURFCOLL_CO_AXIAL_GEOM_RULE—Specifies that the surfaces coaxial with the seed surface should be collected. |
• | PRO_SURFCOLL_EQ_RADIUS_GEOM_RULE—Specifies that the surfaces with the same radius and type as the seed surface should be collected. |
• | PRO_SURFCOLL_SAME_CONVEXITY_GEOM_RULE—Specifies that the surfaces that have the same convexity and type as the seed surface should be collected.
Note
The bit flags PRO_SURFCOLL_ALL_GEOM_RULE, PRO_SURFCOLL_CO_PLANNAR_GEOM_RULE, PRO_SURFCOLL_PARALLEL_GEOM_RULE, PRO_SURFCOLL_CO_AXIAL_GEOM_RULE, PRO_SURFCOLL_EQ_RADIUS_GEOM_RULE, and PRO_SURFCOLL_SAME_CONVEXITY_GEOM_RULE are related to PRO_SURFCOLL_GEOM_RULE, that is, the geometry rule surface set.
|
• | PRO_SURFCOLL_SHAPE_CHAMFER—Collects surfaces with chamfered edges. If used alone then only primary chamfer shapes are added to the collection set. |
• | PRO_SURFCOLL_SHAPE_ROUND—Collects surfaces with round shape. If used alone then only the primary round shapes are added to the collection set. |
• | PRO_SURFCOLL_SHAPE_PROTR_BOSS—Collects surfaces of the type boss. The protrusion surfaces with the secondary shapes are also added to the set. |
• | PRO_SURFCOLL_SHAPE_PROTR_RIB—Collects surfaces of the type rib. The protrusion surfaces without the secondary shapes are added to set. |
• | PRO_SURFCOLL_SHAPE_CUT_POCKET—Collects cut surfaces with the secondary shapes. |
• | PRO_SURFCOLL_SHAPE_CUT_SLOT—Collects cut surfaces without the secondary shapes being added to set. |
• | PRO_SURFCOLL_SHAPE_MORE_SHAPES—Use this flag only with PRO_SURFCOLL_SHAPE_CHAMFER and PRO_SURFCOLL_SHAPE_ROUND to add the secondary chamfer and round shapes to the surface set.
Note
The bit flags PRO_SURFCOLL_SHAPE_ROUND, PRO_SURFCOLL_SHAPE_PROTR_BOSS, PRO_SURFCOLL_SHAPE_PROTR_RIB, PRO_SURFCOLL_SHAPE_CUT_POCKET, PRO_SURFCOLL_SHAPE_CUT_SLOT, PRO_SURFCOLL_SHAPE_MORE_SHAPES and PRO_SURFCOLL_SHAPE_CHAMFER are related to PRO_SURFCOLL_SHAPE_BASED, that is, the shape surface set.
|
• | PRO_SURFCOLL_TANGENT_NEIGBOURS_ONLY—Specifies that the surfaces that have at least one tangent edge with another surface in the tangent surface set, starting
from the seed surface should be collected.
Note
The bit flag PRO_SURFCOLL_TANGENT_NEIGBOURS_ONLY is related to PRO_SURFCOLL_TANG_SRF, that is, the tangent surface set.
|
• | PRO_SURFCOLL_SEEDNBOUND_STRONG_REFS—Specifies that the boundary surfaces are considered as strong surfaces. This bit flag is related to PRO_SURFCOLL_SEED_N_BND and PRO_SURFCOLL_SEED_N_BND_INC_BND. If the selected references is missing, the feature will fail. |
• | Before you call ProSrfCollinstrInfoSet() function, you must set the include flag (PRO_B_TRUE / PRO_B_FALSE) for the surface collection instruction using the ProSrfcollinstrIncludeSet(). |
• | For the geometry based, the shape based, and the tangent based surface collections, the surface collection reference type (first input argument to the function ProSrfcollrefAlloc()) must be PRO_SURFCOLL_REF_SEED. |
• | If you want to apply all the geometry rule flags included in the info argument of the function ProSrfCollinstrInfoSet(), the flag PRO_SURFCOLL_ALL_GEOM_RULE must be included in info argument. If you do not include the PRO_SURFCOLL_ALL_GEOM_RULE flag, any of the geometry rule flags will be applied. |
• | PRO_E_STD_CURVE_COLLECTION_APPL |
• | PRO_E_STD_SURF_COLLECTION_APPL |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|