 |
PK_EDGE_curve_direction_t |
|
struct PK_EDGE_curve_direction_s
{
PK_EDGE_curve_dir_t type; --- type of method used
--- (PK_EDGE_curve_dir_none_c)
PK_EDGE_t edge; --- Edge we want to orient with
--- (PK_ENTITY_null)
PK_FIN_t fin; --- fin sets direction
--- (PK_ENTITY_null)
PK_VERTEX_t end_vertex; --- vertex sets direction
--- (PK_ENTITY_null)
PK_VECTOR_t point; --- point to be used with direction
PK_VECTOR1_t direction; --- direction to be used with point
};
typedef struct PK_EDGE_curve_direction_s PK_EDGE_curve_direction_t;
This structure is used to explicitly set the direction for the generated curve.
Used in:
PK_EDGE_make_curve_o_t
'type' : Type of direction method supplied.
'edge' : The edge that will be used with one of the three direction
options.
'fin' : The curve will be in the direction of the supplied fin.
'end_vertex' : This is a vertex on the edge supplied. This can only
be used with an edge with two vertices. The resulting
curve direction will be towards the vertex.
'point' : 'point' and 'direction' are to be supplied together to
'direction' : determine the direction of the curve. The point must lie
on the supplied edge and the direction must be
near parallel or anti parallel to the edges curve tangent
at the point given. The direction must be a unit vector.
Only one form of direction information can be supplied. If more than one is
supplied the error 'PK_ERROR_wrong_direction' will be returned.
'edge' must be an edge in the set of edges supplied.
The valid forms of direction information are:
A single fin from the supplied edge. This option will not be valid for wire
edges.
A single vertex from the supplied edge. The edge must have two vertices for
this option to be valid.
A point and direction. The point must lie on the edge supplied. The direction
must be near parallel or anti parallel to the edge curve tangent at the point
given. Both must be supplied for this option to be valid.