Packages

class PolyCurve extends ArrProdDbl7[CurveTail] with AffinePreserve

Shape is an Array[Double] based collection for a sequence of CurveSegs, similar to a Polygon which is an Array[Double based collection of just LineSegs. It Uses 6 Doubles for each CurveSeg. The first Double of each curveSeg is set to Negative Infinity for a LineSeg positive infinity for an ArcSeg, but represents the x component of the first control point for a BezierSeg.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PolyCurve
  2. AffinePreserve
  3. SimilarPreserve
  4. ProlignPreserve
  5. GeomElem
  6. Serializable
  7. Product
  8. Equals
  9. ArrProdDbl7
  10. ArrProdDblN
  11. ArrayDblBased
  12. ArrProdHomo
  13. ArrBase
  14. ArrayLike
  15. ArrayLikeBase
  16. AnyRef
  17. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new PolyCurve(arrayUnsafe: Array[Double])

Type Members

  1. type ThisT = PolyCurve

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

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

    Definition Classes
    PolyCurveAffinePreserveSimilarPreserveProlignPreserveArrProdDblNArrProdHomoArrBaseArrayLike

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def ++[N <: ArrProdHomo[CurveTail]](operand: N)(implicit factory: (Int) => N): N

    Appends ProductValue collection with the same type of Elements to a new ValueProduct collection.

    Appends ProductValue collection with the same type of Elements to a new ValueProduct collection. Note the operand collection can have a different type, although it shares the same element type. In such a case, the returned collection will have the type of the operand not this collection.

    Definition Classes
    ArrProdHomo
  4. def :+[N <: ArrProdHomo[CurveTail]](operand: CurveTail)(implicit factory: (Int) => N): N

    Appends an element to a new ProductValue collection of type N with the same type of Elements.

    Appends an element to a new ProductValue collection of type N with the same type of Elements.

    Definition Classes
    ArrProdHomo
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def appendArray(appendProductsLength: Int): Array[Double]

    Builder helper method that provides a longer array, with the underlying array copied into the new extended Array.

    Builder helper method that provides a longer array, with the underlying array copied into the new extended Array.

    Definition Classes
    ArrProdDblN
  7. def apply(index: Int): CurveTail
    Definition Classes
    ArrProdDbl7ArrayLike
  8. def arrLen: Int
    Definition Classes
    ArrProdDblNArrProdHomo
  9. val arrayUnsafe: Array[Double]
    Definition Classes
    PolyCurveArrayDblBased
  10. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  11. def boundingRect: BoundingRect

    Not sure if this method should be a member of Transable

  12. def canEqual(that: Any): Boolean
    Definition Classes
    PolyCurve → Equals
  13. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  14. def collect[B, BB <: ArrBase[B]](pf: PartialFunction[CurveTail, B])(implicit ev: ArrBuild[B, BB]): BB

    Collects values of B by applying partial function to only those elements of A, for which the PartialFunction is defined.

    Collects values of B by applying partial function to only those elements of A, for which the PartialFunction is defined.

    Definition Classes
    ArrayLike
  15. def collectList[B](pf: PartialFunction[CurveTail, B]): List[B]

    Collects a List values of B by applying partial function to only those elements of A, for which the PartialFunction is defined.

    Collects a List values of B by applying partial function to only those elements of A, for which the PartialFunction is defined.

    Definition Classes
    ArrayLike
  16. def contains[A1 >: CurveTail](elem: A1): Boolean
    Definition Classes
    ArrayLike
  17. def draw(lineWidth: Double, lineColour: Colour = Black): PolyCurveDraw
  18. def eMap[B, BB <: ArrBase[B]](f: (CurveTail) => EMon[B])(implicit ev: ArrBuild[B, BB]): EMon[BB]
    Definition Classes
    ArrayLike
  19. def eMapList[B](f: (CurveTail) => EMon[B]): EMon[List[B]]
    Definition Classes
    ArrayLike
  20. final def elemsStr: String

    The element String allows the composition of toString for the whole collection.

    The element String allows the composition of toString for the whole collection. The syntax of the output will be reworked.

    Definition Classes
    ArrBase
  21. def empty: Boolean
    Definition Classes
    ArrayLike
    Annotations
    @inline()
  22. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  24. def existsCount(f: (CurveTail) => Boolean): Int

    Counts the number of elements that fulfil the condition A => Boolean

    Counts the number of elements that fulfil the condition A => Boolean

    Definition Classes
    ArrayLike
  25. def fElemStr: (CurveTail) => String
    Definition Classes
    PolyCurveArrBase
  26. def fHeadElse[B](noHead: => B)(ifHead: (CurveTail) => B): B
    Definition Classes
    ArrayLike
  27. def fMax[B](f: (CurveTail) => B)(implicit cmp: Ordering[B]): B
    Definition Classes
    ArrayLike
  28. def fMin[B](f: (CurveTail) => B)(implicit cmp: Ordering[B]): B
    Definition Classes
    ArrayLike
  29. def fTrans(f: (Vec2) => Vec2): PolyCurve
    Definition Classes
    PolyCurveProlignPreserve
  30. def fill(colour: Colour): PolyCurveFill
  31. def fillScale(colour: Colour, factor: Double): PolyCurveFill
  32. def fillScaleSlate(colour: Colour, factor: Double, offset: Vec2): PolyCurveFill
  33. def filter[AA <: ArrBase[CurveTail]](f: (CurveTail) => Boolean)(implicit ev: ArrBuild[CurveTail, AA]): AA
    Definition Classes
    ArrayLike
  34. def filterNot[AA <: ArrBase[CurveTail]](f: (CurveTail) => Boolean)(implicit ev: ArrBuild[CurveTail, AA]): AA
    Definition Classes
    ArrayLike
  35. def filterToList(f: (CurveTail) => Boolean): List[CurveTail]
    Definition Classes
    ArrayLike
  36. def find(f: (CurveTail) => Boolean): Option[CurveTail]
    Definition Classes
    ArrBase
  37. def flatMap[BB <: ArrBase[_]](f: (CurveTail) => BB)(implicit ev: ArrFlatBuild[BB]): BB

    Specialised flatMap to an immutable Arr.

    Specialised flatMap to an immutable Arr.

    Definition Classes
    ArrayLike
  38. def foldHeadTail[B](initial: B)(fHead: (B, CurveTail) => B)(fTail: (B, CurveTail) => B): B
    Definition Classes
    ArrayLike
  39. def foldLeft[B](initial: B)(f: (B, CurveTail) => B): B
    Definition Classes
    ArrayLike
  40. def foldTailLeft[B](initial: B)(f: (B, CurveTail) => B): B
    Definition Classes
    ArrayLike
  41. def foldWithPrevious[B](initPrevious: CurveTail, initAcc: B)(f: (B, CurveTail, CurveTail) => B): B
    Definition Classes
    ArrProdHomo
  42. def forAll(p: (CurveTail) => Boolean): Boolean
    Definition Classes
    ArrayLike
  43. def foreach[U](f: (CurveTail) => U): Unit

    Performs the effectful function on each member of the collection.

    Performs the effectful function on each member of the collection.

    Definition Classes
    ArrayLikeArrayLikeBase
  44. def foreachArr(f: (Dbls) => Unit): Unit
    Definition Classes
    ArrProdDbl7ArrProdDblN
  45. def foreachInit[U](f: (CurveTail) => U): Unit
    Definition Classes
    ArrayLike
  46. def foreachReverse[U](f: (CurveTail) => U): Unit

    Consider changing this name, as might not be appropriate to all sub classes.

    Consider changing this name, as might not be appropriate to all sub classes.

    Definition Classes
    ArrayLike
  47. def foreachTail[U](f: (CurveTail) => U): Unit
    Definition Classes
    ArrayLike
  48. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  49. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  50. def head: CurveTail
    Definition Classes
    ArrayLike
    Annotations
    @inline()
  51. def head1: Double
    Definition Classes
    ArrProdDbl7
  52. def head2: Double
    Definition Classes
    ArrProdDbl7
  53. def head3: Double
    Definition Classes
    ArrProdDbl7
  54. def head4: Double
    Definition Classes
    ArrProdDbl7
  55. def head5: Double
    Definition Classes
    ArrProdDbl7
  56. def head6: Double
    Definition Classes
    ArrProdDbl7
  57. def head7: Double
    Definition Classes
    ArrProdDbl7
  58. def headToStringElse(ifEmptyString: String): String
    Definition Classes
    ArrayLike
  59. def iFlatMap[BB <: ArrBase[_]](iInit: Int = 0)(f: (CurveTail, Int) => BB)(implicit build: ArrFlatBuild[BB]): BB

    Specialised flatMap with index to an immutable Arr.

    Specialised flatMap with index to an immutable Arr.

    Definition Classes
    ArrayLike
  60. def iFlatMap[BB <: ArrBase[_]](f: (CurveTail, Int) => BB)(implicit build: ArrFlatBuild[BB]): BB

    Specialised flatMap with index to an immutable Arr.

    Specialised flatMap with index to an immutable Arr.

    Definition Classes
    ArrayLike
  61. def iForAll(p: (CurveTail, Int) => Boolean): Boolean
    Definition Classes
    ArrayLike
  62. def iForeach[U](f: (CurveTail, Int) => U, startIndex: Int = 0): Unit

    foreach with index.

    foreach with index. The startIndex parameter is placed 2nd to allow it to have a default value of zero.

    Definition Classes
    ArrayLike
  63. def iForeachReverse[U](f: (CurveTail, Int) => U): Unit
    Definition Classes
    ArrayLike
  64. def iMap[B, BB <: ArrBase[B]](f: (CurveTail, Int) => B)(implicit ev: ArrBuild[B, BB]): BB

    Specialised map with index to an immutable ArrBase of B.

    Specialised map with index to an immutable ArrBase of B. This method should be overridden in sub classes.

    Definition Classes
    ArrayLike
  65. def ifEmpty[B](vEmpty: => B, vNonEmpty: => B): B
    Definition Classes
    ArrayLike
  66. def indexOf(elem: CurveTail): Int
    Definition Classes
    ArrayLike
  67. def indexWhere(f: (CurveTail) => Boolean): Int

    Return the index of the first element where predicate is true, or -1 if predicate not true forall.

    Return the index of the first element where predicate is true, or -1 if predicate not true forall.

    Definition Classes
    ArrayLike
  68. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  69. def iterFlatMap[B, BB <: ArrBase[B]](f: (CurveTail) => Iterable[B])(implicit ev: ArrBuild[B, BB]): BB

    FlatMaps over a function from A to any Iterable.

    FlatMaps over a function from A to any Iterable.

    Definition Classes
    ArrayLike
  70. def last: CurveTail
    Definition Classes
    ArrayLike
    Annotations
    @inline()
  71. def lenStr: String

    Just a handy short cut to give the length of this collection as a string.

    Just a handy short cut to give the length of this collection as a string.

    Definition Classes
    ArrayLikeBase
  72. final def length: Int

    The number of elements in the collection.

    The number of elements in the collection. These collections use underlying mutable Arrays and ArrayBuffers. The length of the underlying Array maybe longer by a multiple of this number.

    Definition Classes
    ArrProdHomoArrayLikeBase
  73. def map[B, BB <: ArrBase[B]](f: (CurveTail) => B)(implicit ev: ArrBuild[B, BB]): BB

    Specialised map to an immutable ArrBase of B.

    Specialised map to an immutable ArrBase of B.

    Definition Classes
    ArrayLike
  74. def map2To1[B, BB <: ArrBase[B]](f: (CurveTail, CurveTail) => B)(implicit ev: ArrBuild[B, BB]): BB

    map 2 elements of A to 1 element of B.

    map 2 elements of A to 1 element of B. Ignores the last element on a collection of odd numbered length.

    Definition Classes
    ArrayLike
  75. def mapCollectGoods[B, BB <: ArrBase[B]](f: (CurveTail) => EMon[B])(implicit ev: ArrBuild[B, BB]): BB

    maps from A to EMon[B], collects the good values.

    maps from A to EMon[B], collects the good values.

    Definition Classes
    ArrayLike
  76. def mapList[B <: AnyRef](f: (CurveTail) => B): List[B]

    maps ValueProduct collection to List

    maps ValueProduct collection to List

    Definition Classes
    ArrayLike
  77. def mapWithAcc[B, BB <: ArrBase[B], C](initC: C)(f: (CurveTail, C) => (B, C))(implicit ev: ArrBuild[B, BB]): BB
    Definition Classes
    ArrayLike
  78. def max[B >: CurveTail](implicit ord: Ordering[B]): CurveTail
    Definition Classes
    ArrayLike
  79. def min[B >: CurveTail](implicit ord: Ordering[B]): CurveTail
    Definition Classes
    ArrayLike
  80. def mkString(seperator: String): String

    Not sure about this method.

    Not sure about this method.

    Definition Classes
    ArrayLike
  81. def modifyWhere(pred: (CurveTail) => Boolean, fNewValue: (CurveTail) => CurveTail): ThisT

    Replaces all instances of the old value that fulfill predicate with the new value.

    Replaces all instances of the old value that fulfill predicate with the new value.

    Definition Classes
    ArrBase
  82. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  83. 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
  84. 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
  85. def newElem(iMatch: Double, d1: Double, d2: Double, d3: Double, d4: Double, d5: Double, d6: Double): CurveTail
    Definition Classes
    PolyCurveArrProdDbl7
  86. def nonEmpty: Boolean
    Definition Classes
    ArrayLike
    Annotations
    @inline()
  87. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  88. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  89. def pMap[B, N <: ArrProdHomo[B]](f: (CurveTail) => B)(implicit factory: (Int) => N): N
    Definition Classes
    ArrProdHomo
  90. def productArity: Int
    Definition Classes
    PolyCurve → Product
  91. def productElement(n: Int): Any
    Definition Classes
    PolyCurve → Product
  92. def productElementName(n: Int): String
    Definition Classes
    Product
  93. def productElementNames: Iterator[String]
    Definition Classes
    Product
  94. def productIterator: Iterator[Any]
    Definition Classes
    Product
  95. def productPrefix: String
    Definition Classes
    Product
  96. def productSize: Int
    Definition Classes
    ArrProdDbl7ArrProdHomo
  97. 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
  98. def ptInShape: (Vec2) => Boolean
  99. 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
  100. def removeFirst(f: (CurveTail) => Boolean): ThisT
    Definition Classes
    ArrBase
  101. def replace(oldValue: CurveTail, newValue: CurveTail): ThisT

    Replaces all instances of the old value with the new value.

    Replaces all instances of the old value with the new value.

    Definition Classes
    ArrBase
  102. def replaceWhere(pred: (CurveTail) => Boolean, newValue: CurveTail): ThisT

    Replaces all instances of the old value that fulfill predicate with the new value.

    Replaces all instances of the old value that fulfill predicate with the new value.

    Definition Classes
    ArrBase
  103. def returnThis: ThisT
    Definition Classes
    ArrayLike
  104. def rotate(angle: Angle): 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
  105. def rotate180: ThisT

    Rotate 180 degrees 2D geometric transformation.

    Rotate 180 degrees 2D geometric transformation. The return type will be narrowed in sub traits / classes.

    Definition Classes
    ProlignPreserveGeomElem
  106. def rotate270: ThisT

    Rotate 270 degrees anti clockwise or rotate 90 degrees clockwise 2D geometric transformation.

    Rotate 270 degrees anti clockwise or rotate 90 degrees clockwise 2D geometric transformation. The return type will be narrowed in sub traits / classes.

    Definition Classes
    ProlignPreserveGeomElem
  107. def rotate90: ThisT

    Rotate 90 degrees anti clockwise or rotate 270 degrees clockwise 2D geometric transformation.

    Rotate 90 degrees anti clockwise or rotate 270 degrees clockwise 2D geometric transformation. The return type will be narrowed in sub traits / classes.

    Definition Classes
    ProlignPreserveGeomElem
  108. 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
  109. def shapeAll(shape: PolyCurve, evObj: AnyRef, fillColour: Colour, str: String, fontSize: Int = 24, lineWidth: Double = 2, lineColour: Colour = Black): PolyCurveAll
  110. def slate(xOffset: Double, yOffset: Double): ThisT

    Translate 2D geometric transformation.

    Translate 2D geometric transformation. The Return type will be narrowed in sub traits.

    Definition Classes
    ProlignPreserveGeomElem
  111. def slate(offset: Vec2): ThisT

    Translate 2D geometric transformation on this GeomElem.

    Translate 2D geometric transformation on this GeomElem. The Return type will be narrowed in sub traits and classes.

    Definition Classes
    ProlignPreserveGeomElem
  112. def sumBy(f: (CurveTail) => Int): Int
    Definition Classes
    ArrayLike
  113. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  114. def tailForeach(fLineSeg: (CurveTail) => Unit, fArcSeg: (CurveTail) => Unit, fBezierSeg: (CurveTail) => Unit): Unit

    Not sure if this is useful

  115. def toList: List[CurveTail]
    Definition Classes
    ArrayLike
  116. final def toString(): String
    Definition Classes
    ArrBase → Any
  117. def toStrsCommaFold(fToStr: (CurveTail) => String): String
    Definition Classes
    ArrayLike
  118. def toStrsCommaNoSpaceFold(fToStr: (CurveTail) => String): String
    Definition Classes
    ArrayLike
  119. def toStrsCommaParenth(fToStr: (CurveTail) => String): String
    Definition Classes
    ArrayLike
  120. def toStrsFold(seperator: String, f: (CurveTail) => String): String
    Definition Classes
    ArrayLike
  121. def toStrsSemiFold(fToStr: (CurveTail) => String): String
    Definition Classes
    ArrayLike
  122. def toStrsSemiParenth(fToStr: (CurveTail) => String): String
    Definition Classes
    ArrayLike
  123. def typeStr: String
    Definition Classes
    PolyCurveArrBase
  124. def unsafeArrayCopy(operand: Array[CurveTail], offset: Int, copyLength: Int): Unit
    Definition Classes
    ArrBase
  125. def unsafeCopyFromArray(opArray: Array[Double], offset: Int = 0): Unit
    Definition Classes
    ArrProdDblN
  126. def unsafeFromArray(array: Array[Double]): PolyCurve
    Definition Classes
    PolyCurveArrProdDblN
  127. final def unsafeNew(length: Int): ThisT
    Definition Classes
    ArrProdDblNArrBase
  128. def unsafeSetElem(index: Int, elem: CurveTail): Unit
    Definition Classes
    ArrProdDbl7ArrBase
  129. def unsafeSetElemSeq(index: Int, elems: Iterable[CurveTail]): Unit
    Definition Classes
    ArrBase
  130. def unsafeSetElems(index: Int, elems: CurveTail*): Unit
    Definition Classes
    ArrBase
  131. def unsafeSetHead(value: CurveTail): Unit
    Definition Classes
    ArrBase
  132. def unsafeSetLast(value: CurveTail): Unit
    Definition Classes
    ArrBase
  133. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  134. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  135. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  136. def xShear(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.

    Definition Classes
    AffinePreserveGeomElem
  137. def xyScale(xOperand: Double, yOperand: Double): ThisT

    XY scaling 2D geometric transformation on a GeomElem.

    XY scaling 2D geometric transformation on a GeomElem. This allows different scaling factors across X and Y dimensions. The return type will be narrowed in sub classes and traits.

    Definition Classes
    AffinePreserveGeomElem
  138. def yShear(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.

    Definition Classes
    AffinePreserveGeomElem

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 GeomElem

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from ArrProdDbl7[CurveTail]

Inherited from ArrProdDblN[CurveTail]

Inherited from ArrayDblBased

Inherited from ArrProdHomo[CurveTail]

Inherited from ArrBase[CurveTail]

Inherited from ArrayLike[CurveTail]

Inherited from ArrayLikeBase[ostrat.geom.CurveTail @scala.annotation.unchecked.uncheckedVariance]

Inherited from AnyRef

Inherited from Any

Ungrouped