![]() |
PK_TOPOL_local_r_t |
struct PK_TOPOL_local_r_s { PK_local_status_t status; int n_error_entities; PK_ENTITY_t *error_entities; }; typedef struct PK_TOPOL_local_r_s PK_TOPOL_local_r_t; This structure is used to return the status of the local operation and in the case of a failure, any associated entities.
PK_BODY_emboss
PK_BODY_enlarge_r_t
PK_BODY_extend
PK_BODY_extrude
PK_BODY_hollow_2
PK_BODY_offset_2
PK_BODY_taper
PK_BODY_thicken_3
PK_BODY_thicken_r_t
PK_BODY_transform_2
PK_EDGE_delete
PK_FACE_change
PK_FACE_delete_blends
PK_FACE_emboss
PK_FACE_hollow_3
PK_FACE_offset_2
PK_FACE_replace_surfs_3
PK_FACE_replace_with_sheet
PK_FACE_taper
PK_FACE_transform_2
PK_TOPOL_local_r_f
When a call to the local operation returns a value of PK_ERROR_no_errors, then the actual status of the operation is given by the 'status' field. If a fault is indicated by the 'status' field, then the number of entities associated with the fault are given by the field 'n_error_entities', and the entities are returned in the array 'error_entities'. Description of fields: 'status' This field indicates the overall state of the local operation. See PK_local_status_t for values and meanings. 'n_error_entities' The number of topological or geometric entities in the 'error_entities' array. 'error_entities' If the 'status' field of this return structure indicates a failure, this array may contain topological or geometric entities which are associated with the failure. Error entities returned: The 'error_entities' array will contain the following entities according to the value of the 'status' field. The typical class of error entities for each value of 'status' is given, however exceptions do exist. Error entities relate to pre-operation topologies and status_values refer to the class of post-operation topologies derived from them. Options for some local operations may involve class migration, for instance the option 'PK_EDGE_offset_blend_t' used in thicken operations indicates that the desired offset representation of an EDGE is a blend FACE derived from that edge. An error condition arising from such a face will return an entity of type PK_CLASS_edge and a 'status' value usually associated with FACES. Similarly, if we encounter an error in determining the vertex or edge geometry during offset operations, and the error is deemed to have resulted from a self intersection or failure to offset face, the error entities correspond to the pre-operation faces which failed to offset, and a 'status' value 'PK_local_status_cant_offset_c'. The documentation accompanying a local operation or the options used by that operation will indicate whether class migration may occur. It is recommended practice to always check the class of error entities before processing them (after first restoring the modeller to a previous roll mark). NOTE: Entity classes given in the following represent typical cases. PK_local_status_ok_c : No entities PK_local_status_nocheck_c : No entities PK_local_status_fail_c : No entities PK_local_status_cant_get_pt_c : 1 VERTEX Failed to find new geometry for existing vertex. n FACEs Failed to find geometry for new vertex. PK_local_status_cant_get_cu_c : 1 EDGE Failed to find new geometry for existing edge. n FACEs Failed to find geometry for new edge. PK_local_status_cant_get_su_c : n FACEs Unable to produce offset surfaces for these faces. No surface replacement is performed. PK_local_status_cant_offset_c : n FACEs Failed to offset the face or the face is only partially offset. Likely causes are self intersection or regions of tight curvature on offset surfaces. : n EDGEs Failed to offset the associated entities to provide the geometry for these edges. PK_local_status_side_cu_fail_c : 1 EDGE Failed to find side curve. PK_local_status_side_su_fail_c : 1 FACE Failed to create a side surface. PK_local_status_not_same_by_c : n/a Not currently returned. PK_local_status_fa_fail_c : 1 FACE Face which failed check. PK_local_status_fa_fa_fail_c : 2 FACEs Pair of faces where inconsistency found. PK_local_status_ed_remains_c : 1 EDGE An existing edge should have disappeared n FACEs A transient edge should have disappeared PK_local_status_point_contact_c : 1 VERTEX Vertex where point contact has has been found. PK_local_status_bad_reference_c : 1 EDGE Taper reference edge is not valid. 1 FACE Taper reference face is not valid. 1 SURF Taper reference surface is not valid. PK_local_status_not_supported_c : 1 FACE Face that has currently unsupported combination of reference entities. PK_local_status_cant_extend_c : n VERTEXs Side edges could not be extended at the vertices. 1 EDGE Geometry attached to returned edge could not be extended. 1 FACE Geometry attached to returned face could not be extended. PK_local_status_sheet_small_c : 1 FACE Given sheet is too small. PK_local_status_cant_use_cu_c : 1 EDGE The supplied/existing curve for this edge lies more than 'tolerance' away from the resulting face surfaces. PK_local_status_eds_unconnected_c : n VERTEXs The vertices at which the boundary is not simply connected. PK_local_status_non_laminar_c : n EDGEs The non-laminar edges. PK_local_status_reference_loop_c : n EDGEs Reference edges in the inconsistent boundary. n FACEs Reference faces in the inconsistent regions. PK_local_status_lp_outside_fa_c : n LOOPs Loops which are outside a face. PK_local_status_target_missed_c : n EDGEs Target entity cannot bound the regions that originate from these boundary edges. PK_local_status_wrong_side_c : n EDGEs the side of target entity has been specified and the boundary formed by these edges lies completely on the wrong side of the target. PK_local_status_miter_fail_c : n EDGEs The reference edges where mitering has failed. PK_local_status_self_shadowing_c : n EDGEs The reference edges where self-shadowing occurs. Any space allocated by Parasolid within this structure may be freed by calling PK_TOPOL_local_r_f.