RectClip64

clipper.RectClip64 (Class) → RectClipLines64

Instance Members

execute(paths: Paths64): Paths64
Name Type
paths Paths64
Returns
Paths64

new(rect: Rect64): Void
Name Type
rect Rect64

Private Members

rect_: Rect64


rectPath_: Path64

pathBounds_: Rect64

results_: Array<Null<OutPt2>>

edges_: Array<Array<Null<OutPt2>>>

currIdx_: Int

path1ContainsPath2(path1: Path64, path2: Path64): Bool
Name Type
path1 Path64
path2 Path64
Returns
Bool

isClockwise(prev: clipper._ClipperRectClip.Location, curr: clipper._ClipperRectClip.Location, prevPt: Point64, currPt: Point64, rectMidPoint: Point64): Bool
Name Type
prev clipper._ClipperRectClip.Location
curr clipper._ClipperRectClip.Location
prevPt Point64
currPt Point64
rectMidPoint Point64
Returns
Bool

Name Type
prev clipper._ClipperRectClip.Location
curr clipper._ClipperRectClip.Location
Returns
Bool

Name Type
prev clipper._ClipperRectClip.Location
curr clipper._ClipperRectClip.Location
Returns
Bool

Name Type
loc clipper._ClipperRectClip.Location
isClockwiseDir Bool
Returns
clipper._ClipperRectClip.Location

unlinkOp(op: OutPt2): Null<OutPt2>
Name Type
op OutPt2
Returns
Null<OutPt2>

unlinkOpBack(op: OutPt2): Null<OutPt2>
Name Type
op OutPt2
Returns
Null<OutPt2>

getEdgesForPt(pt: Point64, rec: Rect64): Int
Name Type
pt Point64
rec Rect64
Returns
Int

isHeadingClockwise(pt1: Point64, pt2: Point64, edgeIdx: Int): Bool
Name Type
pt1 Point64
pt2 Point64
edgeIdx Int
Returns
Bool

hasHorzOverlap(left1: Point64, right1: Point64, left2: Point64, right2: Point64): Bool
Name Type
left1 Point64
right1 Point64
left2 Point64
right2 Point64
Returns
Bool

hasVertOverlap(top1: Point64, bottom1: Point64, top2: Point64, bottom2: Point64): Bool
Name Type
top1 Point64
bottom1 Point64
top2 Point64
bottom2 Point64
Returns
Bool

addToEdge(edge: Array<Null<OutPt2>>, op: OutPt2): Void
Name Type
edge Array<Null<OutPt2>>
op OutPt2

uncoupleEdge(op: OutPt2): Void
Name Type
op OutPt2

setNewOwner(op: OutPt2, newIdx: Int): Void
Name Type
op OutPt2
newIdx Int

getLocation(rec: Rect64, pt: Point64): AnonStruct
Name Type
rec Rect64
pt Point64
Returns
AnonStruct

isHorizontal(pt1: Point64, pt2: Point64): Bool
Name Type
pt1 Point64
pt2 Point64
Returns
Bool

getSegmentIntersection(p1: Point64, p2: Point64, p3: Point64, p4: Point64): AnonStruct
Name Type
p1 Point64
p2 Point64
p3 Point64
p4 Point64
Returns
AnonStruct

getIntersection(rectPath: Path64, p: Point64, p2: Point64, loc: clipper._ClipperRectClip.Location): AnonStruct
Name Type
rectPath Path64
p Point64
p2 Point64
loc clipper._ClipperRectClip.Location
Returns
AnonStruct

startLocsAreClockwise(startLocs: Array<clipper._ClipperRectClip.Location>): Bool
Name Type
startLocs Array<clipper._ClipperRectClip.Location>
Returns
Bool

getBounds(path: Path64): Rect64
Name Type
path Path64
Returns
Rect64

getPath(op: Null<OutPt2>): Path64
Name Type
op Null<OutPt2>
Returns
Path64

add(pt: Point64, ?startingNewPath: Bool = false): OutPt2
Name Type Default
pt Point64
startingNewPath Bool false
Returns
OutPt2

Name Type
prev clipper._ClipperRectClip.Location
curr clipper._ClipperRectClip.Location

Name Type
loc clipper._ClipperRectClip.Location
isClockwiseDir Bool
Returns
clipper._ClipperRectClip.Location

getNextLocation(path: Path64, loc: clipper._ClipperRectClip.Location, i: Int, highI: Int): AnonStruct
Name Type
path Path64
loc clipper._ClipperRectClip.Location
i Int
highI Int
Returns
AnonStruct

executeInternal(path: Path64): Void
Name Type
path Path64

checkEdges(): Void

tidyEdgePair(idx: Int, cw: Array<Null<OutPt2>>, ccw: Array<Null<OutPt2>>): Void
Name Type
idx Int
cw Array<Null<OutPt2>>
ccw Array<Null<OutPt2>>