halcon-draw_circle手动画圆

在HDevelop中

复制代码
dev_open_window(10,10,500,500,'black',WindowHandle)
draw_circle (WindowHandle, Row, Column, Radius)
*在指定窗口手动画圆
*参数1:窗口句柄
*参数2:保存圆心Row-->y坐标
*参数3:保存圆心Col-->x坐标
*参数4:保存半径
*鼠标左键画圆,右键结束
*注意:右键结束后,窗口中不会画出圆--可以得到圆的数据

gen_circle (Circle, Row, Column, Radius)
*创建一个圆区域
*参数1:新创建圆的对象名--区域对象名

region_features (Circle, 'area', Value)
*获取区域的形状特征值
*参数1:区域对象名
*参数2:形状特征代码--看:https://www.cnblogs.com/liming19680104/p/15886100.html
*参数3:保存返回值
复制代码

 

 其它draw指令看:https://blog.csdn.net/cashmood/article/details/102746740  

 

 在QtCreator中

复制代码
    HObject  ho_Circle;
    HTuple  hv_Row, hv_Column, hv_Radius,hv_Value;


    SetWindowAttr("background_color","black");
    OpenWindow(10,10,400,400,0,"visible","",&hv_WindowHandle);
    HDevWindowStack::Push(hv_WindowHandle);
    DrawCircle(hv_WindowHandle, &hv_Row, &hv_Column, &hv_Radius);
      //在指定窗口手动画圆
      //参数1:窗口句柄
      //参数2:保存圆心Row-->y坐标
      //参数3:保存圆心Col-->x坐标
      //参数4:保存半径
      //鼠标左键画圆,右键结束
      //注意:右键结束后,窗口中不会画出圆--可以得到圆的数据

    GenCircle(&ho_Circle, hv_Row, hv_Column, hv_Radius);
      //创建一个圆区域
      //参数1:新创建圆的对象名--区域对象名
    DispObj(ho_Circle, HDevWindowStack::GetActive());
    //特别注意:这个圆对象在C++中要调用显示,而在HDevelop导出的文件中缺少这个指令

    RegionFeatures(ho_Circle, "area", &hv_Value);
      //获取区域的形状特征
      //参数1:区域对象名
      //参数2:形状特征代码--看:https://www.cnblogs.com/liming19680104/p/15886100.html
      //参数3:保存返回值
    double i=hv_Value.D();
    qDebug()<<i;
复制代码

 

 

 

 

 

 

 

 

 

posted @   天子骄龙  阅读(1409)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
历史上的今天:
2021-02-11 Qt操作Excel--QAxObject
2019-02-11 日期与时间控件QDate, QTime, QDateTime
2019-02-11 日历控件QCalendarWidget
2019-02-11 液晶数字显示屏QLCDNumbe
2019-02-11 字体QFont
2019-02-11 旋钮QDial
点击右上角即可分享
微信分享提示

目录导航