|
|
|
@ -128,17 +128,17 @@ export abstract class Curve extends Entity
|
|
|
|
|
//点在曲线上
|
|
|
|
|
PtOnCurve(pt: Vector3): boolean
|
|
|
|
|
{
|
|
|
|
|
return equalv3(this.StartPoint, pt, 1e-12) || equalv3(this.EndPoint, pt, 1e-12) || this.ParamOnCurve(this.GetParamAtPoint(pt));
|
|
|
|
|
return equalv3(this.StartPoint, pt, 1e-6) || equalv3(this.EndPoint, pt, 1e-6) || this.ParamOnCurve(this.GetParamAtPoint(pt));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//点在曲线中,不在起点或者终点.
|
|
|
|
|
PtOnCurve2(pt: Vector3): boolean
|
|
|
|
|
{
|
|
|
|
|
return !(equalv3(this.StartPoint, pt, 1e-12) || equalv3(this.EndPoint, pt, 1e-12)) && this.ParamOnCurve(this.GetParamAtPoint(pt), 0);
|
|
|
|
|
return !(equalv3(this.StartPoint, pt, 1e-6) || equalv3(this.EndPoint, pt, 1e-6)) && this.ParamOnCurve(this.GetParamAtPoint(pt), 0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//参数在曲线上 容差,1e-12
|
|
|
|
|
ParamOnCurve(param: number, fuzz = 1e-12): boolean { return !isNaN(param) && param >= -fuzz && param <= this.EndParam + fuzz; }
|
|
|
|
|
//参数在曲线上 容差,1e-6
|
|
|
|
|
ParamOnCurve(param: number, fuzz = 1e-6): boolean { return !isNaN(param) && param >= -fuzz && param <= this.EndParam + fuzz; }
|
|
|
|
|
GetOffsetCurves(offsetDist: number): Array<Curve> { return; }
|
|
|
|
|
GetClosestPointTo(pt: Vector3, extend: boolean): Vector3 { return; }
|
|
|
|
|
|
|
|
|
|