Shape class abstract
Base class for various 2D geometric primitives defined on a Cartesian coordinate plane.
Implementations include:
- Implementers
Constructors
- Shape()
Properties
- aabb → Aabb2
-
The axis-aligned bounding box of the shape.
no setter
- center → Vector2
-
The central point of the shape.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- isClosed → bool
-
True if the shape is "closed", in the sense that it has an interior. For
example, a closed shape can be filled with a paint.
no setter
- isConvex → bool
-
True if the shape is convex, i.e. a line segment connecting any two points
of the shape would lie completely within the shape.
no setter
- perimeter → double
-
The length of the shape's boundary. For some more complicated shapes this
can be computed approximately.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
asPath(
) → Path - Converts the shape to a Path object, suitable for rendering on a canvas. If a particular geometric primitive cannot be represented as a Path faithfully, an approximate path can be returned.
-
containsPoint(
Vector2 point) → bool -
Returns true if the given
point
is inside the shape or on the boundary. -
move(
Vector2 offset) → void -
Translates the shape by the specified
offset
vector, in-place. -
nearestPoint(
Vector2 point) → Vector2 -
Returns a point on the shape's boundary which is closest to the given
point
. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
project(
Transform2D transform, [Shape? target]) → Shape - Returns the result of applying an affine transformation to the shape.
-
randomPoint(
{Random? random, bool within = true}) → Vector2 -
Returns a random point within the shape if
within
is true (default) and otherwise a point along the edges of the shape. Do note thatwithin
=true also includes the edges. -
support(
Vector2 direction) → Vector2 -
Finds the intersection of this shape with another one, if it exists.
Returns a point on the boundary that is furthest in the given
direction
. -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited