Line

ostrat.geom.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

Attributes

Graph
Supertypes
trait LineLike
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
class XLine
class XParallel
object XAxis.type
object YAxis.type
trait XorYAxis
class YLine
class YParallel

Members list

Concise view

Value members

Abstract methods

def reflectPt(pt: Pt2): Pt2

Reflects, mirrors a point across this line.

Reflects, mirrors a point across this line.

Attributes

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.

Attributes

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.

Attributes

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.

Attributes

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

Transforms this Line using a ProlignMatrix.

Transforms this Line using a ProlignMatrix.

Attributes

Definition Classes
override def reflect(lineLike: LineLike): Line

Reflect 2D geometric transformation across a line, line segment or ray on a GeomElem. The return type will be narrowed in sub classes and traits.

Reflect 2D geometric transformation across a line, line segment or ray on a GeomElem. The return type will be narrowed in sub classes and traits.

Attributes

Definition Classes
override def rotate(angle: AngleVec): Line

Rotation 2D geometric transformation on a GeomElem. The return type will be narrowed in sub classes and traits.

Rotation 2D geometric transformation on a GeomElem. The return type will be narrowed in sub classes and traits.

Attributes

Definition Classes
override def rotate180: Line

Rotation of 180 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in sub classes and traits.

Rotation of 180 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in sub classes and traits.

Attributes

Definition Classes
override def rotate270: Line

Rotation positive or anti clockwise 270 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in sub classes and traits.

Rotation positive or anti clockwise 270 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in sub classes and traits.

Attributes

Definition Classes
override def rotate90: Line

Rotation positive or anti clockwise 90 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in sub classes and traits.

Rotation positive or anti clockwise 90 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in sub classes and traits.

Attributes

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.

Attributes

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

Scaling X and Y axes independently, 2D geometric transformation on this GeomElem, returns a new GeomElem. This allows different scaling factors across X and Y dimensions. The return type will be narrowed in sub classes and traits. This is an affine transformation but it is not a similar transformation.

Scaling X and Y axes independently, 2D geometric transformation on this GeomElem, returns a new GeomElem. This allows different scaling factors across X and Y dimensions. The return type will be narrowed in sub classes and traits. This is an affine transformation but it is not a similar transformation.

Attributes

Definition Classes
override def shearX(operand: Double): Line

Shear 2D geometric transformation along the X Axis on a GeomElem. The return type will be narrowed in sub classes and traits. This is an affine transformation but it is not a similar transformation.

Shear 2D geometric transformation along the X Axis on a GeomElem. The return type will be narrowed in sub classes and traits. This is an affine transformation but it is not a similar transformation.

Attributes

Definition Classes
override def shearY(operand: Double): Line

Shear 2D geometric transformation along the Y Axis on a GeomElem. The return type will be narrowed in sub classes and traits. This is an affine transformation but it is not a similar transformation.

Shear 2D geometric transformation along the Y Axis on a GeomElem. The return type will be narrowed in sub classes and traits. This is an affine transformation but it is not a similar transformation.

Attributes

Definition Classes