Rectangle<T extends num> constructor
- T left,
- T top,
- T width,
- T height
Create a rectangle spanned by (left, top)
and
(left+width, top+height)
.
The rectangle contains the points
with x-coordinate between left
and left + width
, and
with y-coordinate between top
and top + height
, both inclusive.
The width
and height
should be non-negative.
If width
or height
are negative, they are clamped to zero.
If width
and height
are zero, the "rectangle" comprises only the
single point (left, top)
.
Example:
var rectangle = const Rectangle(20, 50, 300, 600);
print(rectangle.left); // 20
print(rectangle.top); // 50
print(rectangle.right); // 320
print(rectangle.bottom); // 650
Implementation
const Rectangle(this.left, this.top, T width, T height)
: width = (width < 0)
? (width == double.negativeInfinity ? 0.0 : (-width * 0)) as dynamic
: (width + 0 as dynamic), // Inline _clampToZero<num>.
height = (height < 0)
? (height == double.negativeInfinity ? 0.0 : (-height * 0))
as dynamic
: (height + 0 as dynamic);