format Unit32 count = MTH_Curve3t (MthCurveWork * work, MthXyz * in_aray,
: Unit32 in_n, Unit32 out_n, MthXyz * out_aray, MthXyz * tan_aray)
Input work: Work area pointer
: in_aray: Input coordinate array
: in_n: Number of input coordinates
: out_n: Number of output coordinates
Output out_aray: Output coordinate array
tan_aray: Tangent vector of each output coordinate
Function value count: Number of output coordinates of 2 or more 0: Parameter error
Function work specifies the work area secured by the MTH_INIT_CURVE macro.
. in_aray specifies the input coordinate array pointer that passes the curve.
in_n specifies the number of in_arays. Specify a value of 3 or greater.
out_n specifies the number of out_arays. Specify a value of 2 or greater.
out_aray is a pointer that receives the calculation result. An array of output coordinates passing through the curve
is returned .
In tan_aray, a tangent vector indicating the direction of travel at each output coordinate is returned. Tangent
The size of vector is 1.0.
Precautions
These curve calculation functions are developed with priority given to processing speed, so overflow
We do not check. However, these functions handle large values during the operation.
May overflow. The allowable range of input data is as follows.
It is.
・ Distance between points is 0.1 or more
・ The coordinate value of the point ranges from -1000 to 1000
Also, in future version upgrades, input parameters may be changed due to algorithm changes.
The same output coordinates may not be returned even if the data is the same.