halcon窗体的移动和缩放_Halcon中缩放Region或XLD的方法研究

本文详细介绍了在Halcon中如何进行Region和XLD的缩放操作,包括使用zoom_region算子进行Region缩放,并通过设置'clip_region'避免裁切,以及通过坐标缩放实现XLD的精确缩放。同时,文章还讨论了不闭合XLD在转换过程中的问题和解决方案。
摘要由CSDN通过智能技术生成

在Halcon中,Region和XLD之间可以彼此转换。但这种转换并不是“无损”的,XLD可以是不闭合的,但是Region一定是闭合的。因此,如果将不闭合的XLD转为Region,然后再转回XLD,那么转换后的XLD和原先的XLD就有了一定的区别。

言归正传,先说说Region的缩放。

一、Region的缩放

Region的缩放很简单,有zoom_region算子,其签名如下,其中ScaleWidth, ScaleHeight是宽、高的缩放比例因子:

zoom_region(Region : RegionZoom : ScaleWidth, ScaleHeight : )

缩放的时候,Row和Column都根据缩放比例因子来放大或缩小。因此缩放后,Region的位置会移位,如果不想让缩放后的Region移位,可以这样:

set_system ('clip_region', 'false')

zoom_region (Region, RegionZoom,0.5, 0.5)

area_center (Region, Area, Row, Column)

area_center (RegionZoom, Area1, Row1, Column1)move_region (RegionZoom, RegionMoved, Row - Row1, Column - Column1)

需要注意的是,Region缩放后,经常会有一部分跑到画布外面,Halcon默认是将画布外部的Region进行裁切的,如果不想裁切,可以在程序开始加上set_system ('clip_region', 'f

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值