Action:
|
Creates a cone bounding the tangent directions of a curve.
|
|
Prototype:
|
bs3_curve_tancone bs3_curve_tangent_cone (
|
|
|
bs3_curve cur,
|
// given curve
|
|
|
logical approx_OK
|
// make a quick
|
|
|
|
= FALSE
|
// approximation
|
|
|
);
|
|
Includes:
|
#include "kernel/acis.hxx"
|
|
#include "baseutil/logical.h"
|
|
#include "kernel/spline/bs3_crv/bs3curve.hxx"
|
|
#include "kernel/spline/bs3_crv/sp3crtn.hxx"
|
|
Description:
|
A tangent cone is a cone that contains all the tangent vectors of a curve. If the curve is a straight line, the cone would be directed along the line and having a very small angle would contain all the tangent vectors of the line; in fact, the angle could be 0. All the tangent go in the same direction. If the curve was almost a straight line, the cone axis could approximate the direction of the curve somehow, and the cone's angle would need to be a little bigger. The more the curve curves, the bigger the cone angle. If the curve were a complete circle, the cone would need to encompass every direction (even though it lies in a plane), so the cone's half angle would be
pi. If the curve were a helix, the cone's half angle would be slightly less than
pi/2, depending on the pitch and radius of the helix.
|
|
|
If the logical
approx
argument is
TRUE, a quick approximation is found. The resulting cone is guaranteed to be wholly within the one found with a
FALSE argument, but is not guaranteed to be a true bound - the curve tangent could lie outside it at some parts of the curve.
|
|
Library:
|
kernel
|
|
Filename:
|
kern/kernel/spline/bs3_crv/sp3crtn.hxx
|
|
Effect:
|
System routine
|