ClipUtilities Class
Static class whose various methods are functions for clipping geometry
Methods
Name | Description | |
---|---|---|
announceLoopsOfConvexClipPlaneSetIntersectRange(convexSet: ConvexClipPlaneSet, range: Range3d, loopFunction: (loopPoints: GrowableXYZArray) => void, includeConvexSetFaces: boolean = true, includeRangeFaces: boolean = true, ignoreInvisiblePlanes: boolean = false): void Static | Emit point loops for intersection of a convex set with a range. | |
announceNNC(intervals: Range1d[], cp: CurvePrimitive, announce?: AnnounceNumberNumberCurvePrimitive): boolean Static | Announce triples of (low, high, cp) for each entry in intervals | |
clipPolygonToClipShape(polygon: Point3d[], clipShape: ClipPrimitive): Point3d[][] Static | Clip a polygon down to regions defined by each shape of a ClipShape. | |
clipPolygonToClipShapeReturnGrowableXYZArrays(polygon: Point3d[], clipShape: ClipPrimitive): GrowableXYZArray[] Static | Clip a polygon down to regions defined by each shape of a ClipShape. | |
collectClippedCurves(curve: CurvePrimitive, clipper: Clipper): CurvePrimitive[] Static | Find portions of the curve that are within the clipper. | |
doesClipperIntersectRange(clipper: ConvexClipPlaneSet | UnionOfConvexClipPlaneSets | ClipPrimitive | ClipVector | undefined, range: Range3d, observeInvisibleFlag: boolean = true): boolean Static | Test if various types of clippers have any intersection with a range. | |
doesConvexClipPlaneSetIntersectRange(convexSet: ConvexClipPlaneSet, range: Range3d, includeConvexSetFaces: boolean = true, includeRangeFaces: boolean = true, ignoreInvisiblePlanes: boolean = false): boolean Static | Emit point loops for intersection of a convex set with a range. | |
loopsOfConvexClipPlaneIntersectionWithRange(convexSet: ConvexClipPlaneSet, range: Range3d, includeConvexSetFaces: boolean = true, includeRangeFaces: boolean = true, ignoreInvisiblePlanes: boolean = false): GeometryQuery[] Static | Return a (possibly empty) array of geometry (Loops !!) which are facets of the intersection of the convex set intersecting a range. | |
pointSetSingleClipStatus(points: GrowableXYZArray, planeSet: UnionOfConvexClipPlaneSets, tolerance: number): ClipStatus Static | Given an array of points, test for trivial containment conditions. | |
rangeOfClipperIntersectionWithRange(clipper: ConvexClipPlaneSet | UnionOfConvexClipPlaneSets | ClipPrimitive | ClipVector | undefined, range: Range3d, observeInvisibleFlag: boolean = true): Range3d Static | Return the range of various types of clippersConvexClipPlaneSet -- dispatch to rangeOfConvexClipPlaneSetIntersectionWithRange UnionOfConvexClipPlaneSet -- union of ranges of member ConvexClipPlaneSet * ClipPrimitive -- access its UnionOfConvexClipPlaneSet . |
|
rangeOfConvexClipPlaneSetIntersectionWithRange(convexSet: ConvexClipPlaneSet, range: Range3d): Range3d Static | Return the (possibly null) range of the intersection of the convex set with a range. | |
selectIntervals01(curve: CurvePrimitive, unsortedFractions: GrowableFloat64Array, clipper: Clipper, announce?: AnnounceNumberNumberCurvePrimitive): boolean Static | Augment the unsortedFractionsArray with 0 and 1 sort test the midpoint of each interval with clipper.isPointOnOrInside pass accepted intervals to announce(f0,f1,curve) |
Defined in
Last Updated: 08 January, 2020