 |
PK_EDGE_is_planar |
|
PK_ERROR_code_t PK_EDGE_is_planar
(
--- received arguments ---
PK_EDGE_t edge, --- edge
PK_LOGICAL_t want_plane, --- whether plane is wanted
--- returned arguments ---
PK_LOGICAL_t *const is_planar, --- whether 'edge' is planar
PK_PLANE_t *const plane --- plane if 'is_planar' and 'want_plane'
--- otherwise PK_ENTITY_null
)
This function detects whether an edge lies in a plane.
Specific Errors:
PK_ERROR_missing_geom (MILD) 'edge' has no curve
'is_planar' is returned as PK_LOGICAL_true if the function detects that the
edge lies in a plane, otherwise it is returned as PK_LOGICAL_false. If the
application sets 'want_plane' to PK_LOGICAL_true and 'is_planar' is
PK_LOGICAL_true, then Parasolid will also return a 'plane' in which the 'edge'
lies. The 'plane' will be orphan geometry of the current partition.
o If 'edge' is linear and also 'want_plane' is set to PK_LOGICAL_true,
then the 'plane' returned will be an arbitrary plane that contains the
edge.
o If 'want_plane' is PK_LOGICAL_false or 'is_planar' is PK_LOGICAL_false
then 'plane' will be returned as PK_ENTITY_null.
PK_EDGE_is_planar will not incorrectly detect a non-planar edge as planar.
However, it may fail to correctly detect some planar edges.