Packages

final class LineSeg extends LineLike with CurveSeg with Show2[Pt2, Pt2] with Dbl4Elem with AffinePreserve

Straight line segment. A straight line in every day terminology. Mathematically: 2 dimensional directed, line segment. The name was chosen to avoid ambiguity.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LineSeg
  2. AffinePreserve
  3. SimilarPreserve
  4. ProlignPreserve
  5. Dbl4Elem
  6. DblNElem
  7. ValueNElem
  8. SpecialT
  9. Show2
  10. ShowProduct
  11. Show
  12. CurveSeg
  13. Drawable
  14. LineLike
  15. GeomElem
  16. AnyRef
  17. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new LineSeg(startX: Double, startY: Double, endX: Double, endY: Double)

Type Members

  1. type ThisT = LineSeg

    The most narrow type preserved in some 2d geometric transformations.

    The most narrow type preserved in some 2d geometric transformations.

    Definition Classes
    LineSegAffinePreserveSimilarPreserveProlignPreserve

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def angle: Angle

    The angle of this line segment.

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  7. def dbl1: Double
    Definition Classes
    LineSegDbl4Elem
  8. def dbl2: Double
    Definition Classes
    LineSegDbl4Elem
  9. def dbl3: Double
    Definition Classes
    LineSegDbl4Elem
  10. def dbl4: Double
    Definition Classes
    LineSegDbl4Elem
  11. def draw(colour: Colour = Black, lineWidth: Double = 2): LineSegDraw

    Draws this geometric element to produce a GraphElem graphical element, tht can be displayed or printed.

    Draws this geometric element to produce a GraphElem graphical element, tht can be displayed or printed.

    Definition Classes
    LineSegDrawable
  12. def elemNames: Strings

    A Strings Arr of the element names of this Show Product class.

    A Strings Arr of the element names of this Show Product class.

    Definition Classes
    Show2ShowProduct
  13. def elemTypeNames: Strings

    A Strings Arr of the element type names of this Show Product class.

    A Strings Arr of the element type names of this Show Product class.

    Definition Classes
    Show2ShowProduct
  14. def endPt: Pt2
  15. def endToLeft(distFromEnd: Double): Pt2

    Gives the Vec2 point at the specified distance to the left of the end point.

    Gives the Vec2 point at the specified distance to the left of the end point. At the end point turn left 90 degrees and then travel the given distance to the point. The Vec2 of that point is returned by this method.

  16. def endToRight(distFromEnd: Double): Pt2

    Gives the Vec2 point at the specified distance to the right of the end point.

    Gives the Vec2 point at the specified distance to the right of the end point. At the end point turn right 90 degrees and then travel the given distance to the point. The Vec2 of that point is returned by this method.

  17. val endX: Double

    The X component of the end point of this curve segment.

    The X component of the end point of this curve segment. Often called x2 on a line or x4 on a cubic bezier in other APIs.

    Definition Classes
    LineSegCurveSeg
  18. val endY: Double

    The Y component of the end point of this curve segment.

    The Y component of the end point of this curve segment. Often called y2 on a line or y4 on a cubic bezier in other APIs.

    Definition Classes
    LineSegCurveSeg
  19. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  21. def func4Dou[T](f: (Double, Double, Double, Double) => T): T
  22. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  23. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  24. def isHorizontal: Boolean
  25. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  26. def isVertical: Boolean
  27. def left90: Angle

    The angle 90 degrees anti-clock wise from the angle of this directed line segment.

    The angle 90 degrees anti-clock wise from the angle of this directed line segment. The angle one gets by turning left from this Sline.

  28. def length: Double
    Annotations
    @inline()
  29. def midPt: Pt2

    The mid or half way point of this lineSeg.

  30. def midPtToLeft(distFromMidPt: Double): Pt2

    Gives the Vec2 point at the specified distance to the left of the mid point.

    Gives the Vec2 point at the specified distance to the left of the mid point. At the mid point turn left 90 degrees and then travel the given distance to the point. The Vec2 of that point is returned by this method.

  31. def midPtToRight(distFromMidPt: Double): Pt2

    Gives the Vec2 point at the specified distance to the right of the mid point.

    Gives the Vec2 point at the specified distance to the right of the mid point. At the mid point turn right 90 degrees and then travel the given distance to the point. The Vec2 of that point is returned by this method.

  32. def mirrorPt(pt: Pt2): Pt2
  33. def name1: String

    the name of the 1st element of this 2 element product.

    the name of the 1st element of this 2 element product.

    Definition Classes
    LineSegShow2
  34. def name2: String

    the name of the 2nd element of this 2 element product.

    the name of the 2nd element of this 2 element product.

    Definition Classes
    LineSegShow2
  35. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  36. def negX: ThisT

    Mirror, reflection 2D geometric transformation across the Y axis by negating X.

    Mirror, reflection 2D geometric transformation across the Y axis by negating X. The return type will be narrowed in sub traits / classes.

    Definition Classes
    SimilarPreserveProlignPreserveGeomElem
  37. def negY: ThisT

    Mirror, reflection 2D geometric transformation across the X axis by negating y.

    Mirror, reflection 2D geometric transformation across the X axis by negating y. The return type will be narrowed in sub traits / classes.

    Definition Classes
    SimilarPreserveProlignPreserveGeomElem
  38. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  39. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  40. final def pEnd: Pt2

    The end point Pt2 of this curve segment.

    The end point Pt2 of this curve segment. Often called p2 on a line or p4 on a cubic bezier in other APIs.

    Definition Classes
    CurveSeg
  41. final def pStart: Pt2

    Start point of this curve segment, often called p1

    Start point of this curve segment, often called p1

    Definition Classes
    CurveSeg
  42. def prolign(matrix: ProlignMatrix): ThisT

    2D Transformation using a ProlignMatrix.

    2D Transformation using a ProlignMatrix. The return type will be narrowed in sub classes / traits.

    Definition Classes
    ProlignPreserveGeomElem
  43. def ptsTrans(f: (Pt2) => Pt2): LineSeg

    A method to perform all the ProlignPreserve transformations with a function from PT2 => PT2.

    A method to perform all the ProlignPreserve transformations with a function from PT2 => PT2.

    Definition Classes
    LineSegProlignPreserve
  44. def rayIntersection(pt: Pt2): Boolean

    Checks whether a forward horizontal ray crosses this polygon side.

  45. def reflect(lineLike: LineLike): ThisT

    Reflect 2D geometric transformation across a line, line segment or ray on a GeomElem.

    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.

    Definition Classes
    SimilarPreserveGeomElem
  46. def revVec: Vec2

    The relative vector Vec2 of the start point from the end point.

  47. def right90: Angle

    The angle 90 degrees clock wise from the angle of this line segment.

    The angle 90 degrees clock wise from the angle of this line segment. The angle one gets by turning from from this Sline.

  48. def rotate(angle: AngleVec): ThisT

    Rotation 2D geometric transformation on a GeomElem.

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

    Definition Classes
    SimilarPreserveGeomElem
  49. def rotate180: ThisT

    Rotation of 180 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem.

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

    Definition Classes
    SimilarPreserveGeomElem
  50. def rotate270: ThisT

    Rotation positive or anti clockwise 270 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem.

    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.

    Definition Classes
    SimilarPreserveGeomElem
  51. def rotate90: ThisT

    Rotation positive or anti clockwise 90 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem.

    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.

    Definition Classes
    SimilarPreserveGeomElem
  52. def scale(operand: Double): ThisT

    Uniform 2D geometric scaling transformation.

    Uniform 2D geometric 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. The Return type will be narrowed in sub traits / classes.

    Definition Classes
    ProlignPreserveGeomElem
  53. def scaleXY(xOperand: Double, yOperand: Double): ThisT

    Scaling X and Y axes independently, 2D geometric transformation on this GeomElem, returns a new GeomElem.

    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.

    Definition Classes
    AffinePreserveGeomElem
  54. def shearX(operand: Double): ThisT

    Shear 2D geometric transformation along the X Axis on a GeomElem.

    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.

    Definition Classes
    AffinePreserveGeomElem
  55. def shearY(operand: Double): ThisT

    Shear 2D geometric transformation along the Y Axis on a GeomElem.

    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.

    Definition Classes
    AffinePreserveGeomElem
  56. def shortArray: Array[Short]
  57. def show(way: Way, maxPlaces: Int, minPlaces: Int): String

    Intended to be a multiple parameter comprehensive Show method.

    Intended to be a multiple parameter comprehensive Show method. Intended to be paralleled by showT method on ShowT type class instances.

    Definition Classes
    ShowProductShow
  58. def show1: Pt2

    Element 1 of this Show 2 element product.

    Element 1 of this Show 2 element product.

    Definition Classes
    LineSegShow2
  59. def show2: Pt2

    Element 2 of this Show 2 element product.

    Element 2 of this Show 2 element product.

    Definition Classes
    LineSegShow2
  60. implicit def showT1: ShowT[Pt2]

    The ShowT type class instance for the 1st element of this 2 element product.

    The ShowT type class instance for the 1st element of this 2 element product.

    Definition Classes
    LineSegShow2
  61. implicit def showT2: ShowT[Pt2]

    The ShowT type class instance for the 2nd element of this 2 element product.

    The ShowT type class instance for the 2nd element of this 2 element product.

    Definition Classes
    LineSegShow2
  62. def shows(way: Way, decimalPlaces: Int): Strings

    A Strings Arr collection of the show methods return values of the elements of this Show Product class.

    A Strings Arr collection of the show methods return values of the elements of this Show Product class.

    Definition Classes
    Show2ShowProduct
  63. def slateXY(xDelta: Double, yDelta: Double): ThisT

    Translate 2D geometric transformation, taking the xOffset and yOffset as parameters on this GeomElem returning a GeomElem.

    Translate 2D geometric transformation, taking the xOffset and yOffset as parameters on this GeomElem returning a GeomElem. The Return type will be narrowed in sub traits. End users will often want to use the slate method taking a Pt2 or Vec2 as a parameter, the slateX or the slateY methods. These methods will be offered as extension methods using this method for their implementations.

    Definition Classes
    ProlignPreserveGeomElem
  64. def startPt: Pt2
  65. def startToLeft(distFromStart: Double): Pt2

    Gives the Vec2 point at the specified distance to the left of the start point.

    Gives the Vec2 point at the specified distance to the left of the start point. At the start point turn left 90 degrees and then travel the given distance to the point. The Vec2 of that point is returned by this method.

  66. def startToRight(distFromStart: Double): Pt2

    Gives the Vec2 point at the specified distance to the right of the start point.

    Gives the Vec2 point at the specified distance to the right of the start point. At the start point turn right 90 degrees and then travel the given distance to the point. The Vec2 of that point is returned by this method.

  67. val startX: Double

    The X component of the start point of this curve segment often called x1 in other APIs.

    The X component of the start point of this curve segment often called x1 in other APIs.

    Definition Classes
    LineSegCurveSeg
  68. val startY: Double

    The Y component of the start point of this curve segment, often called y1 in other APIs.

    The Y component of the start point of this curve segment, often called y1 in other APIs.

    Definition Classes
    LineSegCurveSeg
  69. def str: String

    The most basic Show method, paralleling the strT method on ShowT type class instances.

    The most basic Show method, paralleling the strT method on ShowT type class instances.

    Definition Classes
    ShowProductShow
  70. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  71. def syntaxdepth: Int
    Definition Classes
    LineSegShow
  72. def toLatLongLine(f: (Pt2) => LatLong): LineSegLL
  73. final def toString(): String
    Definition Classes
    Show → Any
  74. def typeStr: String

    the name of the type of this object.

    the name of the type of this object.

    Definition Classes
    LineSegShow
  75. def vec: Vec2

    The relative vector Vec2 of the end point from the start point.

  76. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  77. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  78. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  79. def withArrow(colour: Colour = Black, lineWidth: Double = 2): GraphicElems

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from AffinePreserve

Inherited from SimilarPreserve

Inherited from ProlignPreserve

Inherited from Dbl4Elem

Inherited from DblNElem

Inherited from ValueNElem

Inherited from SpecialT

Inherited from Show2[Pt2, Pt2]

Inherited from ShowProduct

Inherited from Show

Inherited from CurveSeg

Inherited from Drawable

Inherited from LineLike

Inherited from GeomElem

Inherited from AnyRef

Inherited from Any

Ungrouped