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.