void PrimitiveBatch::draw_aabb( const AABB3& box, const ColourRGBA8& colour/*=ColourARGB8::White()*/ ) { Vector3 v[8]; v[0] = box.center() + box.dimensions() * Vector3(-0.5f,-0.5f,-0.5f); v[1] = box.center() + box.dimensions() * Vector3(+0.5f,-0.5f,-0.5f); v[2] = box.center() + box.dimensions() * Vector3(-0.5f,+0.5f,-0.5f); v[3] = box.center() + box.dimensions() * Vector3(+0.5f,+0.5f,-0.5f); v[4] = box.center() + box.dimensions() * Vector3(-0.5f,-0.5f,+0.5f); v[5] = box.center() + box.dimensions() * Vector3(+0.5f,-0.5f,+0.5f); v[6] = box.center() + box.dimensions() * Vector3(-0.5f,+0.5f,+0.5f); v[7] = box.center() + box.dimensions() * Vector3(+0.5f,+0.5f,+0.5f); draw_line(Line3(v[0],v[1]), colour); draw_line(Line3(v[2],v[3]), colour); draw_line(Line3(v[4],v[5]), colour); draw_line(Line3(v[6],v[7]), colour); draw_line(Line3(v[0],v[4]), colour); draw_line(Line3(v[1],v[5]), colour); draw_line(Line3(v[2],v[6]), colour); draw_line(Line3(v[3],v[7]), colour); draw_line(Line3(v[0],v[2]), colour); draw_line(Line3(v[1],v[3]), colour); draw_line(Line3(v[4],v[6]), colour); draw_line(Line3(v[5],v[7]), colour); }
Line3 Line3::clone() { return Line3( *this ); }