Line

sealed
trait Line extends LineLike

An infinite length 2 dimensional straight line trait. Note this is the mathematical definition of a line. In SVG and other APIs the name line is used for a line segment, which in openstrat is called a LineSeg

trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
class XLine
class XParallel
object XAxis
object YAxis
trait XorYAxis
class YLine
class YParallel

Value members

Abstract methods

def reflectPt(pt: Pt2): Pt2

Reflects, mirrors a point across this line.

Reflects, mirrors a point across this line.

override
def slateXY(xDelta: Double, yDelta: Double): Line

Translate 2D geometric transformation. This abstract method returns a Line. The Return type will be narrowed in sub traits.

Translate 2D geometric transformation. This abstract method returns a Line. The Return type will be narrowed in sub traits.

Definition Classes

Concrete methods

override
def negX: Line

Mirror, reflection transformation across the X axis. This method has been left abstract in GeomElemNew to allow the return type to be narrowed in sub classes.

Mirror, reflection transformation across the X axis. This method has been left abstract in GeomElemNew to allow the return type to be narrowed in sub classes.

Definition Classes
override
def negY: Line

Mirror, reflection transformation across the X axis. This method has been left abstract in GeomElemNew to allow the return type to be narrowed in sub classes.

Mirror, reflection transformation across the X axis. This method has been left abstract in GeomElemNew to allow the return type to be narrowed in sub classes.

Definition Classes
override
def prolign(matrix: ProlignMatrix): Line

Transforms this Line using a ProlignMatrix.

Transforms this Line using a ProlignMatrix.

Definition Classes
override
def reflect(lineLike: LineLike): Line
Definition Classes
override
def rotate(angle: AngleVec): Line
Definition Classes
override
Definition Classes
override
Definition Classes
override
Definition Classes
override
def scale(operand: Double): Line

Uniform 2D scaling transformation. The scale name was chosen for this operation as it is normally the desired operation and preserves Circles and Squares. Use the xyScale method for differential scaling.

Uniform 2D scaling transformation. The scale name was chosen for this operation as it is normally the desired operation and preserves Circles and Squares. Use the xyScale method for differential scaling.

Definition Classes
override
def scaleXY(xOperand: Double, yOperand: Double): Line
Definition Classes
override
def shearX(operand: Double): Line
Definition Classes
override
def shearY(operand: Double): Line
Definition Classes