[Halcon&几何] 线段中点、端点和角度的计算

简介: [Halcon&几何] 线段中点、端点和角度的计算

1. xld线段中点

area_center_points_xld (Line4, Area, Row, Column)

2. xld线段端点

*xld转region
 gen_region_contour_xld (LineContours, RegionLines, 'filled')
 *提取区域轮骨
 skeleton (RegionLines, Skeleton)
 *获取轮骨端点
 junctions_skeleton (RegionLines, EndPoints, JuncPoints)
 get_region_points (EndPoints, Rows1, Columns1)

3. xld线段角度

法一:可将xld转成区域,然后求区域的方向

gen_region_contour_xld (LineContours, RegionLines, 'filled')
 orientation_region (RegionLines, Phi)

法二:直接求xld轮廓方向

orientation_xld(XLD : : : Phi)

法三:通过求椭圆长半轴、短半轴的方式求xld轮廓(精度较高,但是方向有时会找不准

elliptic_axis_points_xld(XLD : : : Ra, Rb, Phi)

法三:通过线段两端点的反正切来求角度(方向准确,精度较高,始终以X轴正方向为起始方向,推荐

offsetX := RightDownColumn - LeftUpColumn
 offsetY := RightDownRow - LeftUpRow
 tuple_atan2 (offsetY, offsetX, angel)
 tuple_deg (angel, angelDeg)
 *线段与X轴正方向的夹角
 m_rotate := 180 - angelDeg

注:直线起始端点(Rows[0],Columns[0]),末尾端点(Rows[1],Columns[1])


戳戳小手帮忙点个免费的赞和关注吧,嘿嘿。
目录
相关文章
|
3月前
|
C++
C++代码来计算一个点围绕另一个点旋转45度后的坐标
C++代码来计算一个点围绕另一个点旋转45度后的坐标
64 0
|
3月前
|
算法 数据建模
平面中判断点在三角形内算法(重心法)
平面中判断点在三角形内算法(重心法)
43 0
|
3月前
|
算法
平面中判断点在三角形内算法(同向法)
平面中判断点在三角形内算法(同向法)
24 0
|
6月前
|
算法 图形学
【计算机图形学】实验四 二维图形的缩放、旋转,平移,组合变换
【计算机图形学】实验四 二维图形的缩放、旋转,平移,组合变换
150 2
|
6月前
|
计算机视觉
OpenCV(三十四):轮廓外接最大、最小矩形和多边形拟合
OpenCV(三十四):轮廓外接最大、最小矩形和多边形拟合
439 0
|
6月前
[Halcon&几何] 直线的垂线与延长线的计算
[Halcon&几何] 直线的垂线与延长线的计算
334 1
|
6月前
|
算法
[Halcon&几何] 矩形顶点和对角连线角度计算
[Halcon&几何] 矩形顶点和对角连线角度计算
128 0
关于已知线段,如何求封闭图形轮廓的一些猜想
关于已知线段,如何求封闭图形轮廓的一些猜想
|
数据可视化 C++
高斯正反算—投影坐标转大地坐标、大地坐标转投影坐标(附有完整代码及测试结果)
高斯正反算—投影坐标转大地坐标、大地坐标转投影坐标(附有完整代码及测试结果)
|
Java 索引
给定一个多边形的点集——判断所给点集的方向为顺时针方向还是逆时针方向【java实现+原理讲解】
给定一个多边形的点集——判断所给点集的方向为顺时针方向还是逆时针方向【java实现+原理讲解】
228 0