PCLvisualization多边形裁剪方法初探

基本上又将近2个月没更新博客了,最近确实是很忙很累,基本上没时间整理自己知识,工作的重心几乎完全被三角网的相关算法完全所占据,还有mfc这个拖油瓶更是雪上加霜,记得使用过pcl显示的同志肯定对如下的场景深有体会。

估计基于pcl的显示做平台的人,估计此时此刻必定是身无可恋了,pcl这个库确实是让人既爱又恨,相当于vcg,cgal这些强大的算法确实容易上手,即使对于编程能力很弱的同学来说,pcl 库的使用也不会太难,同时也感谢其相对简单的底层设计,不太复杂的结构,让博主这种编程水平十分平庸的业余码农使用一次便再也不能轻易放手,曾经无数次想替换这个比较鸡肋的显示引擎,之前也一直规划着利用osg代替此显示引擎,由于平时几乎所有的时间全都投入在工作上,osg的突破不大,所以一直未能如愿,之前也想平台要慢慢的去PCL化,可惜自己对于vcg,cgal这两个强大的三维算法的理解根本不深,说直接点此时更考验个人的编程能力了,不懂底层设计,更没有经过专业的编程学习,所以特别容易遇到瓶颈。说了这么多废话,其实还是勉励大家在校期间好好的专研一下编程技术,不要以为能写几个for循环,调用几个接口,写几个简单的类就够了,其实这样远远不够,不懂程序设计,不懂一点架构想在算法的路上走下去还是有点艰难的。一些复杂的库基本上是没有中文教程的,目前我所知道的点云算法库的教程也仅仅朱德海老师所写的一本的教程。剩下的各种库就是静静的放在那里,能不能为你所用,就要看你强大的程序阅读能力了。不能继续班门弄斧了,毕竟看博客的大神们都是能力远在我之上的,一会又得去补补数据结构的知识了。最近一段时间精力全部耗费在三角网的处理算法上,以及每天跟mfc闹的你死我活。对于pcl多段线的裁剪之前在想怎么去解决,也查阅了很多网站,也一直没找到太好的解决方法。最近研究点与多边形的位置关系事,突然萌生了一个想法,就是判断数据点与多边形的位置关系,然后根据此关系进行裁剪,是不是就完美解决了呢?

先来一个例子:

貌似是解决了,毕竟貌似不是事实,确实是有一个问题,它只能在特定方向上有效,要是我的相机旋转了,那我的多边形的投影方向能跟着旋转吗(目前仅仅向xoy平面投影)?所以这是一个问题,目前仅仅是提供一个解决的思路,后面还有待博主进一步研究显示引擎的相机,看有没有好的解决方法。今天的博客就到此为止吧!最近确实是有点江郎才尽了,写不了太高深的技术博客了,所以在业余的时间里我会努力提升自己的,期待下一次能有大的更新。

原文地址:https://www.cnblogs.com/z-web-2017/p/10187556.html

时间: 2024-10-11 12:52:19

PCLvisualization多边形裁剪方法初探的相关文章

Python抓取网页&批量下载文件方法初探(正则表达式+BeautifulSoup) (转)

Python抓取网页&批量下载文件方法初探(正则表达式+BeautifulSoup) 最近两周都在学习Python抓取网页方法,任务是批量下载网站上的文件.对于一个刚刚入门python的人来说,在很多细节上都有需要注意的地方,以下就分享一下我在初学python过程中遇到的问题及解决方法. 一.用Python抓取网页 基本方法: [python] view plaincopyprint? import urllib2,urllib url = 'http://www.baidu.com' req 

Android开发 - ActivityLifecycleCallbacks使用方法初探

ActivityLifecycleCallbacks是什么? Application通过此接口提供了一套回调方法,用于让开发者对Activity的生命周期事件进行集中处理. 为什么用ActivityLifecycleCallbacks? 以往若需监测Activity的生命周期事件代码,你可能是这样做的,重写每一个Acivity的onResume(),然后作统计和处理: @Override protected void onResume() { super.onResume(); //TODO 处

OC中的内省方法初探

内省(Introspection)是对象揭示自己作为一个运行时对象的详细信息的一种能力.NSObject协议和类定义了很多内省方法,用于查询运行时信息,以便根据对象的特征进行识别. 在iOS开发过程中,有效的使用内省方法.有助于避免错误地进行消息派发.错误地假设对象相等.以及类似的问题.明智地使用内省可以使面向对象的程序更加高效和强壮. OC中的内省方法有: 1,isKindOfClass:检查本实例对象,是否是某个类的对象,包括继承的子类. 2,isMemberOfClass:检查本实例对象,

复杂网络节点重要性评价方法初探

在一个网络中,不同的节点起着大小不同的作用.以社交网络为例,有意见领袖的大V,有死寂沉沉的僵尸粉:以交通网络为例,有至关重要的交通枢纽,有无关痛痒的备用中转站.在使用复杂网络分析业务问题时,如何区分网络中不同节点的重要性程度,就是一个需要考虑的问题.为了解决我们自己的业务问题,顺便了解了一下相关的方法,特记录一下,若有益于相关领域的同学,则幸甚. 一.要实现的目标 对网络中的节点定义一个指标,可用来定量地衡量每个节点在网络中重要性的大小. 二.相关的一些方法总结 分析节点的重要性,业界较多地从网

solr入门之权重排序方法初探之使用edismax改变权重

做搜索引擎避免不了排序问题,当排序没有要求时,solr有自己的排序打分机制及sorce字段 1.无特殊排序要求时,根据查询相关度来进行排序(solr自身规则) 2.当涉及到一个字段来进行相关度排序时,可以直接使用solr的sort功能来实现 3.对多个字段进行维度的综合打分排序(这个应该才是重点,内容) 使用Solr搭建搜索引擎很容易,但是如何制定合理的打分规则(boost)做排序却是一个很头痛的事情.Solr本身的排序打分规则是继承自 Lucene的文本相关度的打分即boost,这一套算法对于

指数ETF基金的组合分析方法初探

本文在Creative Commons许可证下发布 试想一下,大多数基金“推荐”的配置策略都假设某种股票/债券组合.如果我们想寻求成本最小收益最高的组合(以yahoo finance上的数据来分析,因为美国股市数据更容易获得).那么什么才是一个好的组合成为了我们的问题?指数基金包括几乎所有的股票和债券.几乎包含了美国股票及债券市场的组成的四种ETF是VTI.VXUS.BND.BNDX.让我们从这些开始数据分析.使用R语言来完成分析程序 1 # Load package 2 library(tid

Google Earth数据存储、管理、表现及开发机制

一.    Google Earth(Map)介绍 1.1    Google Earth介绍 在众多的地理信息服务提供商中,Google是较早提供服务的一个,其他有如ESRI这样的巨头,也有中国的灵图.但凭借着提供优质.高效.高性价比服务的理念和Google自身的巨大影响力,Google推出的Google Earth和Google Map平台已经成为全球影响力最大的互联网空间信息服务平台. Google Earth具有十分突出的三个特点[1],一是可以显示矢量数据地标,包括点.线.面等几何类型

【软件测试】白盒测试

本篇日志主要分两个部分,第一部分是对课件中基础知识的整理.然而,虽然课件对白盒测试的覆盖准则讲解得十分细致,但对如何进行实际操作却无涉及,经过前一阶段的探索,我大致掌握了一些方法,希望可以与大家一起讨论,所以第二部分为对应用商店应用中的Visual C#代码进行白盒测试方法初探. [基础知识整理] 一.定义 白盒测试又称结构测试,它一般用来测试程序的内部结构(Control Flow , Data Flow).并判定其结果是否与预期的结果一致. 二.种类 静态分析测试(Static Analys

AGG 2D渲染引擎介绍

1.1 特性概览 AGG,全名:Anti-Grain Geometry,是一个开源的.高效的2D图形库.AGG的功能与GDI+的功能非常类似,但提供了比GDI+更灵活的编程接口,其产生的图形的质量也非常高,而且它是跨平台的,其宣传可以在非常多的操作系统上运行. 主要的功能有: 1.支持ALPHA.GAMMA等变色处理,以及用户自定义的变色处理: 2.支持任意2D图形变换: 3.支持SVG和PostScript描述,适于网上图形生成: 4.支持高质量的图形处理,支持反走样插值等高级功能: 5.支持