提高点在曲线上的精度. IKWGF#note_976669

pull/76/head
ChenX 6 years ago
parent 4520f33a6f
commit a6440a6f3f

@ -121,11 +121,11 @@ export abstract class Curve extends Entity
//点在曲线上 //点在曲线上
PtOnCurve(pt: Vector3): boolean PtOnCurve(pt: Vector3): boolean
{ {
return equal(this.StartPoint, pt) || equal(this.EndPoint, pt) || this.ParamOnCurve(this.GetParamAtPoint(pt)); return equal(this.StartPoint, pt, 1e-12) || equal(this.EndPoint, pt, 1e-12) || this.ParamOnCurve(this.GetParamAtPoint(pt));
} }
//参数在曲线上,增加误差范围1e-6 //参数在曲线上 容差,1e-12
ParamOnCurve(param: number): boolean { return !isNaN(param) && param >= -1e-6 && param <= this.EndParam + 1e-6; } ParamOnCurve(param: number, fuzz = 1e-12): boolean { return !isNaN(param) && param >= -fuzz && param <= this.EndParam + fuzz; }
GetOffsetCurves(offsetDist: number): Array<Curve> { return; } GetOffsetCurves(offsetDist: number): Array<Curve> { return; }
GetClosestPointTo(pt: Vector3, extend: boolean): Vector3 { return; } GetClosestPointTo(pt: Vector3, extend: boolean): Vector3 { return; }

Loading…
Cancel
Save