QuadCompoundGen

ostrat.geom.QuadCompoundGen
class QuadCompoundGen(val shape: Quadrilateral, val facets: RArr[GraphicFacet], quadChilds: RArr[Quadrilateral => GraphicElems], adopted: RArr[Graphic2Elem]) extends QuadCompound

The implementation for the general case of a compound graphic based on a quadrilateral.

Attributes

Graph
Supertypes
trait QuadCompound
trait QuadGraphic
trait Aff2Elem
trait Simil2Elem
trait NoCanvElem
trait ShapeGraphic
trait BoundedElem
trait Graphic2Elem
trait Axlign2Elem
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

override def children: RArr[Graphic2Elem]

The ShapeCompound type will be widened at a later point.

The ShapeCompound type will be widened at a later point.

Attributes

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

Shear 2D geometric transformation along the X Axis on a GeomElem. The return type will be narrowed in subclasses 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 subclasses and traits. This is an affine transformation, but it is not a similar transformation.

Attributes

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

Shear 2D geometric transformation along the Y Axis on a GeomElem. The return type will be narrowed in subclasses 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 subclasses and traits. This is an affine transformation, but it is not a similar transformation.

Attributes

Definition Classes

Inherited methods

Functionally adds more child Graphic2Elem graphics. These child graphics will be at placed in front of previous children.

Functionally adds more child Graphic2Elem graphics. These child graphics will be at placed in front of previous children.

Attributes

Inherited from:
PolygonCompound
final override def attribs: RArr[XAtt]

Attributes

Definition Classes
Inherited from:
ShapeCompound

Attributes

Inherited from:
BoundedElem

Attributes

Inherited from:
BoundedElem

Attributes

Inherited from:
BoundedElem
final def boundingCen: Pt2

The centre of the bounding rectangle. consider also using cenDefault.

The centre of the bounding rectangle. consider also using cenDefault.

Attributes

Inherited from:
BoundedElem
final override def boundingHeight: Double

The height of the BoundingRect of this object.

The height of the BoundingRect of this object.

Attributes

Definition Classes
Inherited from:
ShapeGraphic
final override def boundingRect: Rect

The bounding Rectangle provides an initial exclusion test, as to whether the pointer is inside the polygon / shape

The bounding Rectangle provides an initial exclusion test, as to whether the pointer is inside the polygon / shape

Attributes

Definition Classes
Inherited from:
ShapeGraphic
final override def boundingWidth: Double

The width of the BoundingRect of this object.

The width of the BoundingRect of this object.

Attributes

Definition Classes
Inherited from:
ShapeGraphic

Attributes

Inherited from:
BoundedElem
override def canvElems: RArr[CanvElem]

This method converts this non-standard graphic element into CanvElems that can be processed by the pCanv.CanvasPlatform.

This method converts this non-standard graphic element into CanvElems that can be processed by the pCanv.CanvasPlatform.

Attributes

Definition Classes
Inherited from:
PolygonCompound

If the geometric element has a defined centre then the cenDefault uses that, else it defaults to the centre of the bounding rectangle.

If the geometric element has a defined centre then the cenDefault uses that, else it defaults to the centre of the bounding rectangle.

Attributes

Inherited from:
BoundedElem
def ifv2: Boolean

Checks for 2 or more vertices

Checks for 2 or more vertices

Attributes

Inherited from:
PolygonGraphic
def ifv3: Boolean

Checks for 3 or more vertices

Checks for 3 or more vertices

Attributes

Inherited from:
PolygonGraphic
override def mainSvgElem: SvgElem

Attributes

Definition Classes
Inherited from:
PolygonCompound
override def negX: PolygonCompound

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

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

Attributes

Definition Classes
Inherited from:
PolygonCompound
override def negY: PolygonCompound

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

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

Attributes

Definition Classes
Inherited from:
PolygonCompound
override def prolign(matrix: AxlignMatrix): PolygonCompound

2D Transformation using a AxlignMatrix. The return type will be narrowed in subclasses / traits.

2D Transformation using a AxlignMatrix. The return type will be narrowed in subclasses / traits.

Attributes

Definition Classes
Inherited from:
PolygonCompound
override def reflect(lineLike: LineLike): PolygonCompound

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

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

Attributes

Definition Classes
Inherited from:
PolygonCompound
override def rendToCanvas(cp: CanvasPlatform): Unit

Renders this functional immutable GraphicElem, using the imperative methods of the abstract pCanv.CanvasPlatform interface.

Renders this functional immutable GraphicElem, using the imperative methods of the abstract pCanv.CanvasPlatform interface.

Attributes

Definition Classes
Inherited from:
PolygonCompound
override def rotate(rotation: AngleVec): QuadCompound

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

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

Attributes

Definition Classes
Inherited from:
QuadCompound
override def rotate180: PolygonCompound

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

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

Attributes

Definition Classes
Inherited from:
PolygonCompound
override def rotate270: PolygonCompound

Rotation positive or anti-clockwise 270 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in subclasses 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 subclasses and traits.

Attributes

Definition Classes
Inherited from:
PolygonCompound
override def rotate90: PolygonCompound

Rotation positive or anti-clockwise 90 degrees, 2D geometric transformation on a GeomElem, returns a GeomElem. The return type will be narrowed in subclasses 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 subclasses and traits.

Attributes

Definition Classes
Inherited from:
PolygonCompound
override def scale(operand: Double): QuadCompound

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.

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.

Attributes

Definition Classes
Inherited from:
QuadCompound
override def scaleXY(xOperand: Double, yOperand: Double): PolygonCompound

Scaling X and Y axes independently, 2D geometric transformation on this Aff2Elem, returns a new Aff2Elem. This allows different scaling factors across X and Y dimensions. The return type will be narrowed in subclasses 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 Aff2Elem, returns a new Aff2Elem. This allows different scaling factors across X and Y dimensions. The return type will be narrowed in subclasses and traits. This is an affine transformation, but it is not a similar transformation.

Attributes

Definition Classes
Inherited from:
PolygonCompound

Attributes

Inherited from:
ShapeGraphic
override def slate(xOperand: Double, yOperand: Double): QuadCompound

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.

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.

Attributes

Definition Classes
Inherited from:
QuadCompound
override def slate(operand: VecPt2): QuadCompound

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.

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.

Attributes

Definition Classes
Inherited from:
QuadCompound
override def slateX(xOperand: Double): QuadCompound

Translate 2D geometric transformation in the X dimension, returning a GeomElem. The Return type will be narrowed in sub traits.

Translate 2D geometric transformation in the X dimension, returning a GeomElem. The Return type will be narrowed in sub traits.

Attributes

Definition Classes
Inherited from:
QuadCompound
override def slateY(yOperand: Double): QuadCompound

Translate 2D geometric transformation in the Y dimension, returning a GeomElem. The Return type will be narrowed in sub traits.

Translate 2D geometric transformation in the Y dimension, returning a GeomElem. The Return type will be narrowed in sub traits.

Attributes

Definition Classes
Inherited from:
QuadCompound
override def svgElems: RArr[SvgElem]

Attributes

Definition Classes
Inherited from:
ShapeCompound
override def svgInline: HtmlSvg

Attributes

Definition Classes
Inherited from:
ShapeCompound
final def svgInlineStr: String

Attributes

Inherited from:
ShapeGraphic

Attributes

Inherited from:
BoundedElem
def vertsFoldLeft[B](init: B)(f: (B, Pt2) => B): B

Attributes

Inherited from:
PolygonGraphic
def vertsFoldLeft[B](f: (B, Pt2) => B)(implicit default: DefaultValue[B]): B

Attributes

Inherited from:
PolygonGraphic
def vertsForeach(f: Pt2 => Unit): Unit

Attributes

Inherited from:
PolygonGraphic
def vertsMap[A, ArrT <: Arr[A]](f: Pt2 => A)(implicit build: BuilderArrMap[A, ArrT]): ArrT

Attributes

Inherited from:
PolygonGraphic
def vertsNum: Int

The number of vertices.

The number of vertices.

Attributes

Inherited from:
PolygonGraphic
def x1: Double

Attributes

Inherited from:
PolygonGraphic

Attributes

Inherited from:
PolygonGraphic
def y1: Double

Attributes

Inherited from:
PolygonGraphic

Attributes

Inherited from:
PolygonGraphic

Concrete fields

Graphical facet such as fills, drawing lines and active.

Graphical facet such as fills, drawing lines and active.

Attributes