 |
PK_EDGE_split_at_param |
|
PK_ERROR_code_t PK_EDGE_split_at_param
(
--- received arguments ---
PK_EDGE_t edge, --- Target edge
double param, --- parameter to split at
--- returned arguments ---
PK_VERTEX_t *const new_vertex, --- new vertex
PK_EDGE_t *const new_edge --- new edge
)
This function splits an edge at the given parameter.
Specific Errors:
PK_ERROR_bad_parameter Supplied parameter is outside
edge range (MILD)
PK_ERROR_coincident Supplied parameter evaluates to
a point coincident with edge
vertex (MILD)
PK_ERROR_no_geometry 'edge' does not have geometry
(MILD)
Description
The edge is split at the given parameter. The allowable parameter range
can be found by using PK_EDGE_ask_geometry.
The function will handle both accurate and tolerant edges.
A new vertex will be created and returned in 'new_vertex'. If the 'edge'
originally had no vertices, 'new_edge' will be returned as PK_ENTITY_null,
otherwise a new edge will be created and returned in 'new_edge'.
If the given parameter is outside the edge range, PK_ERROR_bad_parameter
will be raised. Also if the parameter evaluates to a position coincident
with any of the edge vertices then PK_ERROR_coincident will be raised.
Vertex precision is taken into account.