feat(./tdcgal/plane/plane.cpp:Iso_rectangle_2): add pyclass Iso_rectangle_2
BREAKING CHANGE:
This commit is contained in:
parent
d7e0e3e8f8
commit
42a8bd72eb
|
|
@ -16,8 +16,10 @@ typedef Kernel::Ray_2 Ray_2;
|
|||
typedef Kernel::Line_2 Line_2;
|
||||
typedef Kernel::Circle_2 Circle_2;
|
||||
typedef Kernel::Triangle_2 Triangle_2;
|
||||
typedef Kernel::Bbox_2 Bbox_2;
|
||||
typedef Kernel::FT FT;
|
||||
typedef Kernel::RT RT;
|
||||
typedef Kernel::Iso_rectangle_2 Iso_rectangle_2;
|
||||
|
||||
template <typename T, typename U> FT squared_distance(const T &a, const U &b) {
|
||||
return CGAL::squared_distance(a, b);
|
||||
|
|
@ -205,7 +207,7 @@ void init_plane(py::module_ &m) {
|
|||
.def("orthogonal_transform", &Circle_2::orthogonal_transform)
|
||||
.def("bbox", &Circle_2::bbox, "返回圆的边界框");
|
||||
|
||||
py::module_<Triangle_2>(m, "Triangle_2")
|
||||
py::class_<Triangle_2>(m, "Triangle_2")
|
||||
.def(py::init<Point_2, Point_2, Point_2>())
|
||||
.def("vertex", &Triangle_2::vertex, "返回第`i % 3`个顶点, `i`是参数")
|
||||
.def("vertices", &Triangle_2::vertices, "返回三角形的三个顶点")
|
||||
|
|
@ -231,6 +233,36 @@ void init_plane(py::module_ &m) {
|
|||
.def("bbox", &Triangle_2::bbox, "返回三角形的边界框")
|
||||
.def("transform", &Triangle_2::transform, "返回经过变换后的三角形")
|
||||
|
||||
py::class_<Iso_rectangle_2>(m, "Iso_rectangle_2")
|
||||
.def(py::init<Point_2, Point_2>())
|
||||
.def(py::init<Point_2, Point_2, int>())
|
||||
.def(py::init<RT, RT, RT, RT, RT>())
|
||||
.def(py::init<Bbox_2>())
|
||||
.def(py::init<Point_2, Point_2, Point_2, Point_2>())
|
||||
.def(py::self == py::self)
|
||||
.def(py::self != py::self)
|
||||
.def("vertex", &Iso_rectangle_2::vertex, "返回第`i % 4`个顶点, `i`是参数")
|
||||
.def("min", &Iso_rectangle_2::min, "返回左下角顶点")
|
||||
.def("max", &Iso_rectangle_2::max, "返回右上角顶点")
|
||||
.def("xmin", &Iso_rectangle_2::xmin, "返回左下角顶点的x坐标")
|
||||
.def("ymin", &Iso_rectangle_2::ymin, "返回左下角顶点的y坐标")
|
||||
.def("xmax", &Iso_rectangle_2::xmax, "返回右上角顶点的x坐标")
|
||||
.def("ymax", &Iso_rectangle_2::ymax, "返回右上角顶点的y坐标")
|
||||
.def("min_coord", &Iso_rectangle_2::min_coord, "返回左下角顶点的坐标")
|
||||
.def("max_coord", &Iso_rectangle_2::max_coord, "返回右上角顶点的坐标")
|
||||
.def("is_degenerate", &Iso_rectangle_2::is_degenerate, "判断矩形是否退化")
|
||||
.def("bounded_side", &Iso_rectangle_2::bounded_side, "判断点和矩形的边界位置关系")
|
||||
.def("has_on_bounded_side", &Iso_rectangle_2::has_on_bounded_side,
|
||||
"判断点是否在矩形的边界上")
|
||||
.def("has_on_unbounded_side", &Iso_rectangle_2::has_on_unbounded_side,
|
||||
"判断点是否在矩形的内部")
|
||||
.def("has_on_boundary", &Iso_rectangle_2::has_on_boundary,
|
||||
"判断点是否在矩形的边界上")
|
||||
.def("bbox", &Iso_rectangle_2::bbox, "返回矩形的边界框")
|
||||
.def("area", &Iso_rectangle_2::area, "返回矩形的面积")
|
||||
.def("transform", &Iso_rectangle_2::transform, "返回经过变换后的矩形");
|
||||
|
||||
|
||||
m.def("squared_distance", &squared_distance<Point_2, Point_2>,
|
||||
"返回两个点的平方距离");
|
||||
m.def("squared_distance", &squared_distance<Point_2, Segment_2>,
|
||||
|
|
|
|||
Loading…
Reference in New Issue