(二) CGAL库应用:轮廓中轴骨架生成create_interior_straight_skeleton_2()及轮廓的偏置create_offset_polygons_2()

本文介绍了CGAL库在计算几何中的应用,特别是如何使用create_interior_straight_skeleton_2()创建轮廓中轴骨架以及create_offset_polygons_2()进行轮廓偏置。讨论了CGAL中轮廓偏置的方向规则,并强调了CGAL::Polygon_with_holes_2数据结构的作用。代码实现部分展示了简单的接口调用,同时指出偏置后的子轮廓不具内外关系,可以通过arrange_offset_polygons_2()建立联系。作者分享了实验结果并提到CGAL库对初学者的挑战,鼓励继续学习。
摘要由CSDN通过智能技术生成

1 先看效果图

这是轮廓中轴的计算,中轴代表的是轮廓的骨架,在人体姿态识别、图像处理中是最基本的元素。

这是轮廓往外偏置一定距离的图示。

cgal中实现轮廓中轴骨架生成及进行轮廓的偏置的是create_interior_straight_skeleton_2(),create_offset_polygons_2()这两个接口,使用起来也不难,需要提醒的是:cgal的轮廓偏置和clipper不太一样,clipper可以实现输入的偏置距离是正数则向外偏置,负数则向内偏置,而cgal的偏置距离只能是正数,向内还是向外,取决于轮廓本身的取向,一般的,顶点逆时针方向为外轮廓,向内偏置;顶点顺时针方向的轮廓是内轮廓,向外偏置,cgal中有CGAL::Polygon_with_holes_2<K>这么个数据结构,专门表示带孔的轮廓,带孔的轮廓偏置后满足外轮廓向内偏置,内孔向外偏置。

2代码实现

这部分代码比较简单,主要是简单地使用这两个接口,cgal里面还有很多接口实现各种各样的功能,东西太多了,学不过来,笔者也只是学自己需要用到的接口。

#include<iostream>
#includ
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值