Action:
|
Creates a curve that interpolates or fits to the given tolerance the given points, with the given tangent directions at the two end points.
|
|
Prototype:
|
bs3_curve bs3_curve_interp (
|
|
|
int npts,
|
// number of points to
|
|
|
|
|
// interpolate
|
|
|
SPAposition const* pts,
|
// points to interpolate
|
|
|
|
|
// or fit
|
|
|
SPAunit_vector const&
|
// start direction
|
|
|
|
start_dir,
|
// vector
|
|
|
SPAunit_vector const&
|
// end direction
|
|
|
|
end_dir,
|
// vector
|
|
|
double fitol,
|
// fit tolerance
|
|
|
double& actual_tol
|
// returned actual
|
|
|
|
=*(double*)NULL_REF,
|
// tolerance used
|
|
|
logical periodic
|
// make periodic if no
|
|
|
|
= FALSE
|
// end conditions and
|
|
|
|
|
// matching end points
|
|
|
);
|
|
Includes:
|
#include "kernel/acis.hxx"
|
|
#include "baseutil/vector/position.hxx"
|
|
#include "baseutil/vector/unitvec.hxx"
|
|
#include "kernel/spline/bs3_crv/bs3curve.hxx"
|
|
#include "kernel/spline/bs3_crv/sp3crtn.hxx"
|
|
#include "baseutil/logical.h"
|
|
Description:
|
If an end direction is a
NULL reference or has zero length, then a
natural boundary condition is used, i.e., the second derivative at that end is set to zero.
|
|
|
If any of the start or end conditions are set and are non-zero, or the last point to interpolate is more than
SPAresabs from the first point, the periodic flag is ignored.
|
|
Library:
|
kernel
|
|
Filename:
|
kern/kernel/spline/bs3_crv/sp3crtn.hxx
|
|
Effect:
|
Changes model
|