Skip to content

Latest commit

 

History

History
executable file
·
143 lines (95 loc) · 1.65 KB

Rectangle.md

File metadata and controls

executable file
·
143 lines (95 loc) · 1.65 KB

Rectangle

public struct Rectangle

Initializers

init(origin:size:)

public init(origin: Site, size: Size)

Properties

x

var x: Double

y

var y: Double

width

var width: Double

height

var height: Double

tl

var tl: Site

bl

var bl: Site

tr

var tr: Site

br

var br: Site

origin

var origin: Site

size

var size: Size

Methods

expandToContainPoint(_:padding:)

public mutating func expandToContainPoint(_ p: Site, padding: Double = 20.0)

getLine(_:)

public func getLine(_ edge: Edge) -> LineSegment

getEdges()

public func getEdges() -> [LineSegment]

rect(from:with:)

public static func rect(from sourceRect: Rectangle, with padding: Double) -> Rectangle

contains(_:)

func contains(_ point: Site?) -> Bool

intersection(origin:direction:)

func intersection(origin: Site, direction: Vector2D) -> (point: Site, edge: Rectangle.Edge)

getNextCCW(_:)

private func getNextCCW(_ edge: Edge) -> (edge: Edge, corner: Site)

sideForPoint(p:)

func sideForPoint(p: Site) -> Edge?

ccwTraverse(startEdge:endEdge:)

func ccwTraverse(startEdge: Edge, endEdge: Edge) -> [Site]

getRectPolylineForCCW(_:end:)

func getRectPolylineForCCW(_ start: Site, end: Site) -> [Site]

toClipper()

public func toClipper() -> Clipper