ShapeGen

ostrat.geom.ShapeGen
See theShapeGen companion object
class ShapeGen(val unsafeArray: Array[CurveSeg]) extends Shape, AxisFree

The new version of ShapeGen. Will prioritise easy and simplicity of functionality over efficiency. A generalised implementation of a Shape. A closed sequence of curve segments.

Attributes

Companion
object
Graph
Supertypes
trait AxisFree
trait Shape
trait BoundedElem
trait Fillable
trait Drawable
trait GeomElem
class Object
trait Matchable
class Any
Show all

Members list

Type members

Types

override type ThisT = ShapeGen

Value members

Concrete methods

override def attribs: RArr[XmlAtt]

Attributes

Definition Classes
override def boundingHeight: Double

The height of the BoundingRect of this object.

The height of the BoundingRect of this object.

Attributes

Definition Classes
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
override def boundingWidth: Double

The width of the BoundingRect of this object.

The width of the BoundingRect of this object.

Attributes

Definition Classes
override def draw(lineWidth: Double, lineColour: Colour): ShapeDraw

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

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

Attributes

Definition Classes
override def fill(fillColour: Colour): ShapeFill

Returns a fill graphic of this geometric object.

Returns a fill graphic of this geometric object.

Attributes

Definition Classes
override def fillActive(fillColour: Colour, pointerID: Any): ShapeCompound

Attributes

Definition Classes
override def fillActiveText(fillColour: Colour, pointerEv: Any, str: String, fontRatio: Double, fontColour: Colour, align: TextAlign, baseLine: BaseLine, minSize: Double): ShapeCompound

ShapeCompound graphic with a FillFacet, a TextFacet and a ShapeActive child.

ShapeCompound graphic with a FillFacet, a TextFacet and a ShapeActive child.

Attributes

Definition Classes
override def fillDraw(fillColour: Colour, lineColour: Colour, lineWidth: Double): ShapeCompound

Returns a fill and draw graphic of this geometric object.

Returns a fill and draw graphic of this geometric object.

Attributes

Definition Classes
override def fillInt(intValue: Int): ShapeFill

Returns a fill graphic of this geometric object from the Int RGBA value.

Returns a fill graphic of this geometric object from the Int RGBA value.

Attributes

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

2D Transformation using a ProlignMatrix on a Shape, returns a Shape. The Return type will be narrowed in sub traits / classes.

2D Transformation using a ProlignMatrix on a Shape, returns a Shape. The Return type will be narrowed in sub traits / classes.

Attributes

Definition Classes
override def ptInside(pt: Pt2): Boolean

Determines if the parameter point lies inside this Circle.

Determines if the parameter point lies inside this Circle.

Attributes

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

Reflect 2D geometric transformation across a line, line segment or ray on a Shape, returns a Shape. The Return type will be narrowed in sub traits / classes.

Reflect 2D geometric transformation across a line, line segment or ray on a Shape, returns a Shape. The Return type will be narrowed in sub traits / classes.

Attributes

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

Rotation 2D geometric transformation on a ShapeGen taking the rotation as a scalar measured in radians, returns a Shape. The Return type will be narrowed in sub traits / classes.

Rotation 2D geometric transformation on a ShapeGen taking the rotation as a scalar measured in radians, returns a Shape. The Return type will be narrowed in sub traits / classes.

Attributes

Definition Classes
override def scale(operand: Double): ShapeGen

Uniform scaling 2D geometric transformation on a ShapeGen returns a Shape. The Return type will be narrowed in sub traits / classes. Use the xyScale method for differential scaling on the X and Y axes.

Uniform scaling 2D geometric transformation on a ShapeGen returns a Shape. The Return type will be narrowed in sub traits / classes. Use the xyScale method for differential scaling on the X and Y axes.

Attributes

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

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

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

Attributes

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

Shear 2D geometric transformation along the X Axis on a Shape, returns a Shape. The return type will be narrowed in sub classes and traits.

Shear 2D geometric transformation along the X Axis on a Shape, returns a Shape. The return type will be narrowed in sub classes and traits.

Attributes

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

Shear 2D geometric transformation along the Y Axis on a Shape, returns a Shape. The return type will be narrowed in sub classes and traits.

Shear 2D geometric transformation along the Y Axis on a Shape, returns a Shape. The return type will be narrowed in sub classes and traits.

Attributes

Definition Classes
override def slateXY(xDelta: Double, yDelta: Double): ShapeGen

Translate 2D geometric transformation on a ShapeGen returns a Shape. The Return type will be narrowed in sub traits / classes.

Translate 2D geometric transformation on a ShapeGen returns a Shape. The Return type will be narrowed in sub traits / classes.

Attributes

Definition Classes

Inherited methods

Attributes

Inherited from:
BoundedElem
final def boundCen: 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

Attributes

Inherited from:
BoundedElem

Attributes

Inherited from:
BoundedElem
def canEqual(that: Any): Boolean

This canEqual override allow the comparison of Shapes.

This canEqual override allow the comparison of Shapes.

Attributes

Inherited from:
Shape

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 fillOrDraw(lineWidth: Double, colour: Colour): GraphicElem

If this element is Fillable applies the fill method, ignoring the line width parameter, else applies the draws method.

If this element is Fillable applies the fill method, ignoring the line width parameter, else applies the draws method.

Attributes

Inherited from:
Drawable
override def negX: ThisT

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:
AxisFree
override def negY: ThisT

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:
AxisFree
override def rotate180: ThisT

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
Inherited from:
AxisFree
override def rotate270: ThisT

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
Inherited from:
AxisFree
override def rotate90: ThisT

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
Inherited from:
AxisFree

Attributes

Inherited from:
BoundedElem

Concrete fields