# PolyCurveActive

ostrat.geom.PolyCurveActive

A pointable shape

Graph
Supertypes
Known subtypes

Concise view

## Type members

### Types

type ThisT

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

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

## Value members

def shape

### Concrete methods

override def boundingRect

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 ptInside(pt: Pt2): Boolean

This method needs improving.

This method needs improving.

## Attributes

Definition Classes

## 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.

Inherited from:
BoundedElem

## Attributes

Inherited from:
BoundedElem

The width of the BoundingRect of this object.

The width of the BoundingRect of this object.

Inherited from:
BoundedElem

## Attributes

Inherited from:
BoundedElem

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
override 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

Definition Classes
Inherited from:
SimilarPreserve
override 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

Definition Classes
Inherited from:
SimilarPreserve
def pointerId: Any

The Pointer Identity is returned to the GUI application if the user mouse (or other pointing device, clicks within the polygon or shape It is purely up to the application to encode, its response if any to this object.

The Pointer Identity is returned to the GUI application if the user mouse (or other pointing device, clicks within the polygon or shape It is purely up to the application to encode, its response if any to this object.

## Attributes

Inherited from:
GraphicActive
override def prolign(matrix: ProlignMatrix): ThisT

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

Definition Classes
Inherited from:
ProlignPreserve
def ptsTrans(f: Pt2 => Pt2): ThisT

A method to perform all the ProlignPreserve transformations with a function from PT2 => PT2.

A method to perform all the ProlignPreserve transformations with a function from PT2 => PT2.

## Attributes

Inherited from:
ProlignPreserve
override def reflect(lineLike: LineLike): ThisT

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

Definition Classes
Inherited from:
SimilarPreserve

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

Inherited from:
GraphicElem
override def rotate(angle: AngleVec): ThisT

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

Definition Classes
Inherited from:
SimilarPreserve
override def rotate180

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:
SimilarPreserve
override def rotate270

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:
SimilarPreserve
override def rotate90

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:
SimilarPreserve
override def scale(operand: Double): ThisT

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:
ProlignPreserve
override def scaleXY(xOperand: Double, yOperand: Double): ThisT

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

Definition Classes
Inherited from:
AffinePreserve
override def shearX(operand: Double): ThisT

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

Definition Classes
Inherited from:
AffinePreserve
override def shearY(operand: Double): ThisT

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

Definition Classes
Inherited from:
AffinePreserve
override def slateXY(xDelta: Double, yDelta: Double): ThisT

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:
ProlignPreserve

Inherited from:
BoundedElem

Inherited from:
BoundedElem