×

工业设计互动平台

手机短信,快捷登录

微信登录,快人一步

QQ登录

只需一步,快速开始

各位大佬,萌新导入点坐标后,想连成多段线(成一条类...

发布于 2022-5-16 6 点赞 1 评论 1502 浏览

各位大佬,萌新导入点坐标后,想连成多段线(成一条类似圆的曲线),结果见图,求问怎么调整啊。
微信图片_20220516095608.png
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩回复

文明上网理性发言、请文明用语

小宇很厉害 | 设计总监 | 发表于 2022-5-16 16:24:53
是因为顺序问题,所以连线看上去不是你想要的样子(比如下面这个模拟了乱序点连线的效果)
微信截图_20220516153008.png
那么要做的就是排序,但若干个点的自动排序,如果基于两个最近点逐一排列的话,基本上是要用到循环插件,或者有些插件里面会有这种排序功能的电池;如果不会用循环,或者不想用插件,并且点不是特别特别多的情况下,可以取巧沿着你想要的效果简单地画个线,然后SortAlongCurve一下。
如果用插件的话,需要理清循环结构和逻辑,比如这样:
xx.png
应该挺明显吧?序号是用来表示确实是人为打乱了原本有序的点,按顺序连线的结果显示也确实被正确排序了。
后面的循环逻辑是先排除某个点(后面再加进来),计算出它除了自身外最近的一个点,然后再以这个点为基础,将自身和前一个点排除掉后再找到最近的一个点,继续向后循环,次数为第一次用来计算并排除2个点后的点云数,于是最后得到了一组有序的点。
如果需要自定义顺序,再接个ShiftList并且允许Wrap即可。
这个时候后面再接Line就行了。
但程序其实都有原本的目的和针对性,也就是说必须要有先决条件然后才有一个清晰的逻辑,如果这个先决条件变了,那么采用的逻辑也要对应变化才能得到想要的结果,比如下面的情况(用的也是上面这个循环):

逻辑上它是对的,按照最近点排序,然后弄出一条线,但从结果上来说可能不是我们想要的(比如不想要自交之类的)。
想要找一个适用于任何条件下的万用程序基本上不太可能,因为任何程序一定都是基于你想要完成什么样的目标这样的动机,并且限定在一定范围内或者某些条件下的。


微信截图_20220516163936.png
1 回复

举报

推荐学习