Packages

trait GeomElem extends Product with Serializable

A geometric element to which 2D geometric transformations can be applied. Not all elements preserve their full properties under all transformations. So for example a Circle is no longer a Circle after a Shear transformation, but remains an Ellipse. GraphicElem inherits from GeomElem. A Circle is not a GraphicElem but if we add a fill colour to make a CircleFill, or a line width and line colour to it, we have a GraphicElem a graphical element that can be displayed on a canvas or output to SVG. It is expected that all elements that inherit from GeomElem that are not GraphicElems will be Drawable elements, but this has not been finalised.

Linear Supertypes
Known Subclasses
AffinePreserve, ArcLikeOld, Bezier, BezierDraw, BezierLikeOld, BoundedAligned, BoundedElem, BoundedGraphic, CArc, CArcDraw, CArcDrawOld, CArcOld, Circle, CircleCompound, CircleDraw, CircleFill, CircleGraphic, CircleGraphicSimple, Curve, CurveLikeOld, CurveLikeOldGraphicElem, CurveTail, CurveTailLike, DashedLineDraw, Drawable, EArc, Ellipse, EllipseImp, EllipseCompound, EllipseCompoundImplement, EllipseDraw, EllipseDrawImp, EllipseFill, EllipseFillImp, EllipseGraphic, EllipseGraphicSimple, Fillable, GraphicActive, GraphicActiveAffine, GraphicActiveOld, GraphicActiveSim, GraphicAffineElem, GraphicBoundedAffine, GraphicBoundedSimer, GraphicClickable, GraphicElem, GraphicParentFull, GraphicParentOld, GraphicSimElem, GraphicSimple, Line, LineDraw, LinePath, LinePathDraw, LineSeg, LineSegs, LinesDraw, PhiRect, PhiRectangle, PolyCurve, PolyCurveActive, PolyCurveActiveOnly, PolyCurveAll, PolyCurveCentred, PolyCurveDraw, PolyCurveElem, PolyCurveFill, PolyCurveFillDraw, PolyCurveFillDrawText, PolyCurveParentFull, Polygon, PolygonActive, PolygonCompound, PolygonCompoundImp, PolygonDraw, PolygonDrawImp, PolygonFill, PolygonFillImp, PolygonGraphic, PolygonGraphicSimple, PolygonImp, ProlignPreserve, Rect, RectImp, RectCenV0, RectCompound, RectGraphic, Rectangle, RectangleImp, RectangleCompound, RectangleCompoundImp, RectangleDraw, RectangleDrawImp, RectangleFill, RectangleFillImp, RectangleGraphic, RectangleGraphicSimple, Shape, ShapeAligned, ShapeCompound, ShapeDraw, ShapeFill, ShapeGraphic, ShapeGraphicAligned, ShapeGraphicSimple, SimilarAffPreserve, SimilarPreserve, Sqlign, Square, SquareImp, TextGraphic, TextOutline, Triangle, TriangleClass, TriangleEqui, TriangleIsos, TriangleIsosGen, Vec2s, Vec2sLike, Vec2sLikeProdDbl2, XAxis, XLine, XParallel, XorYAxis, YAxis, YLine, YParallel
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GeomElem
  2. Serializable
  3. Product
  4. Equals
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def canEqual(that: Any): Boolean
    Definition Classes
    Equals
  2. abstract def negX: GeomElem

    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.

  3. abstract def negY: GeomElem

    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.

  4. abstract def productArity: Int
    Definition Classes
    Product
  5. abstract def productElement(n: Int): Any
    Definition Classes
    Product
  6. abstract def prolign(matrix: ProlignMatrix): GeomElem

    2D Transformation using a ProlignMatrix.

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

  7. abstract def reflect(lineLike: LineLike): GeomElem

    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.

  8. abstract def rotate(angle: Angle): GeomElem

    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.

  9. abstract def rotate180: GeomElem

    Rotate 180 degrees 2D geometric transformation.

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

  10. abstract def rotate270: GeomElem

    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.

  11. abstract def rotate90: GeomElem

    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.

  12. abstract def scale(operand: Double): GeomElem

    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.

  13. abstract def slate(xOffset: Double, yOffset: Double): GeomElem

    Translate 2D geometric transformation.

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

  14. abstract def slate(offset: Vec2): GeomElem

    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.

  15. abstract def xShear(operand: Double): GeomElem

    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.

  16. abstract def xyScale(xOperand: Double, yOperand: Double): GeomElem

    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.

  17. abstract def yShear(operand: Double): GeomElem

    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.

Concrete 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. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  8. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  9. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  13. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  14. def productElementName(n: Int): String
    Definition Classes
    Product
  15. def productElementNames: Iterator[String]
    Definition Classes
    Product
  16. def productIterator: Iterator[Any]
    Definition Classes
    Product
  17. def productPrefix: String
    Definition Classes
    Product
  18. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  19. def toString(): String
    Definition Classes
    AnyRef → Any
  20. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  21. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  22. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

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

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped