ellipse.type = "convex"
时间: 2023-07-03 22:32:03 浏览: 103
cad快捷键操作
`ellipse.type` 属性只能取 `cv2.EllipseTypes.CENTER`、`cv2.EllipseTypes.DIRECT` 和 `cv2.EllipseTypes.ROUND` 这三个值中的一个,不能设置为 `"convex"`。如果要创建凸多边形,可以使用 OpenCV 的 `cv2.convexHull()` 函数来实现。该函数可以接受一组点,然后返回这些点构成的凸多边形的顶点坐标。
下面是使用 `cv2.convexHull()` 函数创建凸多边形的示例代码:
``` python
import cv2
import numpy as np
# 创建一组点
points = np.array([[100, 100], [150, 200], [300, 150], [250, 50]], dtype=np.int32)
# 计算凸多边形的顶点坐标
hull = cv2.convexHull(points)
# 在图像上绘制凸多边形
img = np.zeros((400, 400, 3), dtype=np.uint8)
cv2.polylines(img, [hull], True, (0, 255, 0), thickness=2)
cv2.imshow("Convex Hull", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上面的代码中,我们首先创建了一组点 `[[100, 100], [150, 200], [300, 150], [250, 50]]`,然后使用 `cv2.convexHull()` 函数计算了这些点构成的凸多边形的顶点坐标。最后,我们在一个黑色的图像上绘制了这个凸多边形,并将其显示出来。
阅读全文