setAsBox method
Build vertices to represent an oriented box.
center
and angle
should be in local coordinates.
Implementation
void setAsBox(
double halfWidth,
double halfHeight,
Vector2 center,
double angle,
) {
setAsBoxXY(halfWidth, halfHeight);
centroid.setFrom(center);
final xf = Transform.zero();
xf.p.setFrom(center);
xf.q.setAngle(angle);
// Transform vertices and normals.
for (var i = 0; i < vertices.length; ++i) {
vertices[i].setFrom(Transform.mulVec2(xf, vertices[i]));
normals[i].setFrom(Rot.mulVec2(xf.q, normals[i]));
}
}