formZ SDK | 5.0 API Reference | Project | Modeling | Objects | Control Objects | Tangent Curve

# fz_objt_cnstr_tang_curve

Description

Creates a tangent curve through a given set of points. This is a degree 2 nurbz curve, with 2 additional control points constructed around each input point. These additional 2 points and the input point are collinear which causes the curve to go through the input point. The distance of the 2 additional points from the input point is derived from the curvature parameter. This is an array of size npts, with one curvature per input point. At 0, the 2 points are closer to the input point, causing a sharper turn of the curve. At 1.0 they are farther which creates a more bulgy curve.

Plugin Prototype

fzrt_error_td fz_objt_cnstr_tang_curve(

fzrt_int | windex,
fz_xyz_td * | pts,
fzrt_int | npts,
double * | curvature,
fzrt_boolean | closed,
fzrt_boolean | do_smooth,
fz_attr_refn_ptr | refn_opts,
fz_objt_ptr * | obj )

Parameters

windex [Input]

project window index

pts [Input]

points array

npts [Input]

number of points in pts array

Range: npts >= 3

curvature [Input]

curvature

closed [Input]

closed curve

do_smooth [Input]

smooth curve

refn_opts [Input, Optional]

refinement options

obj [Result]

tangent curve

Returns

Error codes

Availability

5.0.0.0

Example Files

util_objt_cnstr_tcrv.fsl

See Also

fz_objt_cnstr_nrbz_curve

Function Set

fz_model_fset

Defined in

fz_objt_ncrv_api.h