# BoundedElem

ostrat.geom.BoundedElem
trait BoundedElem extends GeomElem

A 2D geometric element, that has a defined bounding rectangle, BoundingRect. This trait is for layout, such as placing Graphic elements in rows and columns. It includes polygon and shape graphics but not line and curve graphics.

Graph
Supertypes
trait GeomElem
class Object
trait Matchable
class Any
Known subtypes
class Circle
trait RectFill
trait Rect
class PhiRect
class PhiRectY
class RectImp
class Sqlign
trait Ellipse
trait HexReg
class HexRegImp
trait Hexlign
class HexParrX
class HexParrY
trait Rectangle
trait Square
class SquareImp
trait ShapeDraw
trait ShapeFill
trait Polygon
trait Triangle
trait Shape
class ShapeGen

Concise view

## Value members

### Abstract methods

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

### Concrete methods

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

The width of the BoundingRect of this object.

The width of the BoundingRect of this object.

## Attributes

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 methods

def negX

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

Inherited from:
GeomElem
def negY

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

Inherited from:
GeomElem

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

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

## Attributes

Inherited from:
GeomElem
def reflect(lineLike: LineLike): 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.

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.

## Attributes

Inherited from:
GeomElem
def rotate(angle: AngleVec): GeomElem

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

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

## Attributes

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

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

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

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

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

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

Inherited from:
GeomElem
def scale(operand: Double): GeomElem

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

Inherited from:
GeomElem
def scaleXY(xOperand: Double, yOperand: Double): 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.

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.

## Attributes

Inherited from:
GeomElem
def shearX(operand: Double): 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.

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.

## Attributes

Inherited from:
GeomElem
def shearY(operand: Double): 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.

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.

## Attributes

Inherited from:
GeomElem
def slateXY(xDelta: Double, yDelta: Double): 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.

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.

Inherited from:
GeomElem