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.