forEachWorldCorner method
Implementation
void forEachWorldCorner(Vec3 pos, Quaternion quat, void Function(num x, num y, num z) callback) {
final Vec3 e = halfExtents;
final List<List<double>> corners = [
[e.x, e.y, e.z],
[-e.x, e.y, e.z],
[-e.x, -e.y, e.z],
[-e.x, -e.y, -e.z],
[e.x, -e.y, -e.z],
[e.x, e.y, -e.z],
[-e.x, e.y, -e.z],
[e.x, -e.y, e.z],
];
for (int i = 0; i < corners.length; i++) {
_worldCornerTempPos.set(corners[i][0], corners[i][1], corners[i][2]);
quat.vmult(_worldCornerTempPos, _worldCornerTempPos);
pos.vadd(_worldCornerTempPos, _worldCornerTempPos);
callback(_worldCornerTempPos.x, _worldCornerTempPos.y, _worldCornerTempPos.z);
}
}