Halcon8:获取仿射外接矩形(rectangle2)四个顶点坐标

Halcon8:获取仿射外接矩形(rectangle2)四个顶点坐标

(1)实现功能:

         halcon中调用smallest_rectangle2()函数获得仿射外接矩形(旋转外接矩形),返回的是矩形的中心坐标、角度和长短轴长度,但是在有些时候需要使用的是仿射外接矩形的四个顶点坐标。

         本文实现的功能是通过矩形的中心坐标、角度和长短轴长度获得四个顶点的坐标。

 

(2)实现代码:

    smallest_rectangle2 (ObjectSelected, Row16, Column16, Phi3, Length1, Length2)
    
    *提取仿射最小外接矩形的四个顶点坐标
    gen_rectangle2_contour_xld (Rectangle4, Row16, Column16, Phi3, Length1, Length2)
    tuple_cos (Phi3, Cos)
    tuple_sin (Phi3, Sin)
    dev_set_color('red')
    a:= -Length1*Cos - Length2*Sin
    b := -Length1*Sin + Length2*Cos
    gen_cross_contour_xld(Cross, Row16-b,  Column16+a, 6, Phi3)
    c := Length1*Cos - Length2*Sin
    d := Length1*Sin + Length2*Cos
    gen_cross_contour_xld(Cross, Row16-d, Column16+c, 6, Phi3)
    e:= Length1*Cos + Length2*Sin
    f := Length1*Sin - Length2*Cos
    gen_cross_contour_xld(Cross, Row16-f, Column16+e, 6, Phi3)
    g := -Length1*Cos + Length2*Sin
    h := -Length1*Sin - Length2*Cos
    gen_cross_contour_xld(Cross, Row16-h, Column16+g, 6, Phi3)

 

 

你可能感兴趣的:(halcon)