В этом разделе представлены функции, которые вписывают максимальную по размеру плоскую фигуру ( чаще всего в этом качестве используется площадь ) в выпуклый многогранник: • Круг Def<Circle3d> maxCircleInConvexPolyhedron ( const Polyhedron & poly ); • Эллипс в треугольнике Def<Ellipse3d> maxEllipseInTriangleA ( Vector3d p1, Vector3d p2, Vector3d p3 ); • Эллипс в тетраэдре Def<Ellipse3d> maxEllipseInTetrahedronA ( Vector3d p1, Vector3d p2, Vector3d p3, Vector3d p4 );• Треугольник Def<Triangle3d> maxTriangleInConvexPolyhedronA ( const Polyhedron & poly );• Прямоугольник без вращения Def<Rectangle3d> maxRectangleInConvexPolyhedronANR ( const Polyhedron & outer );• Прямоугольник с вращением Def<Rectangle3d> maxRectangleInConvexPolyhedronA ( const Polyhedron & outer );• Ромб без вращения Def<Rhombus3d> maxRhombusInConvexPolyhedronANR ( const Polyhedron & outer );• Ромб с вращением Def<Rhombus3d> maxRhombusInConvexPolyhedronA ( const Polyhedron & outer );• Параллелограмм ( A - максимум площади, P - максимум периметра ) Def<Parallelogram3d> maxParallelogramInConvexPolyhedronA ( const Polyhedron & poly ); Def<Parallelogram3d> maxParallelogramInConvexPolyhedronP ( const Polyhedron & poly ); Примеры использования всех этих функций можно посмотреть в приложении DEMO. Описание классов Circle3d, Ellipse3d, Triangle3d, Rectangle3d, Rhombus3d и Parallelogram3d находится здесь.
|