StarBorder class Null safety

A border that fits a star or polygon-shaped border within the rectangle of the widget it is applied to.

Typically used with a ShapeDecoration to draw a polygonal or star shaped border.

This example serves both as a usage example, as well as an explorer for determining the parameters to use with a StarBorder. The resulting code can be copied and pasted into your app. A Container is just one widget which takes a ShapeBorder. Dialogs, OutlinedButtons, ElevatedButtons, etc. all can be shaped with a ShapeBorder.
To create a local project with this code sample, run:
flutter create --sample=painting.StarBorder.1 mysample

See also:

  • BorderSide, which is used to describe how the edge of the shape is drawn.
Inheritance

Constructors

StarBorder({BorderSide side = BorderSide.none, double points = 5, double innerRadiusRatio = 0.4, double pointRounding = 0, double valleyRounding = 0, double rotation = 0, double squash = 0})
Create a const star-shaped border with the given number points on the star.
const
StarBorder.polygon({BorderSide side = BorderSide.none, double sides = 5, double pointRounding = 0, double rotation = 0, double squash = 0})
Create a const polygon border with the given number of sides.
const

Properties

dimensions EdgeInsetsGeometry
The widths of the sides of this border represented as an EdgeInsets.
read-onlyoverride
hashCode int
The hash code for this object.
read-onlyoverride
innerRadiusRatio double
The ratio of the inner radius of a star with the outer radius.
read-only
pointRounding double
The amount of rounding on the points of stars, or the corners of polygons.
final
points double
The number of points in this star, or sides on a polygon.
final
rotation double
The rotation in clockwise degrees around the center of the shape.
read-only
runtimeType Type
A representation of the runtime type of the object.
read-onlyinherited
side BorderSide
The border outline's color and weight.
finalinherited
squash double
How much of the aspect ratio of the attached widget to take on.
final
valleyRounding double
The amount of rounding of the interior corners of stars.
final

Methods

add(ShapeBorder other, {bool reversed = false}) ShapeBorder?
Attempts to create a new object that represents the amalgamation of this border and the other border.
protected">@protectedinherited
copyWith({BorderSide? side, double? points, double? innerRadiusRatio, double? pointRounding, double? valleyRounding, double? rotation, double? squash}) StarBorder
Returns a copy of this OutlinedBorder that draws its outline with the specified side, if side is non-null.
override
getInnerPath(Rect rect, {TextDirection? textDirection}) Path
Create a Path that describes the inner edge of the border.
override
getOuterPath(Rect rect, {TextDirection? textDirection}) Path
Create a Path that describes the outer edge of the border.
override
lerpFrom(ShapeBorder? a, double t) ShapeBorder?
Linearly interpolates from another ShapeBorder (possibly of another class) to this.
override
lerpTo(ShapeBorder? b, double t) ShapeBorder?
Linearly interpolates from this to another ShapeBorder (possibly of another class).
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
paint(Canvas canvas, Rect rect, {TextDirection? textDirection}) → void
Paints the border within the given Rect on the given Canvas.
override
scale(double t) ShapeBorder
Creates a copy of this border, scaled by the factor t.
override
toString() String
A string representation of this object.
override

Operators

operator +(ShapeBorder other) ShapeBorder
Creates a new border consisting of the two borders on either side of the operator.
inherited
operator ==(Object other) bool
The equality operator.
override