[问题] 纸面上折线的判断

楼主: yin0416 (铅笔)   2016-11-16 11:09:57
开发平台(Platform): (Ex: Win10, Linux, ...)
Mac、Win10
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
Xcode、DeV C++
问题(Question):
想请教一下我目前遭遇到的问题,
用一群处于平面上的粒子,且为有序排列,当作一张纸,
再以电脑模拟揉纸的过程,我得到了这粒子在三维空间中的位置,
现在要判断它的折线,想得到折线的长短分布,
请问有适合的算法可以处理这个问题吗?
谢谢!
喂入的资料(Input):
1 0 0 0 // 第一行是粒子编号,再来是空间中 X、Y、Z 的位置
2 1 0 0
3 2 0 0
预期的正确结果(Expected Output):
2 256 // 第一行是折线的长度,然后是这种长度折线的数量
3 200
4 168
5 98
6 7
补充说明(Supplement):
目前还没想到怎么写这个程式,不知道有没有适合的算法~~谢谢!
作者: friendever (hi~)   2016-11-16 11:39:00
有点看不懂@@y
作者: firejox (Tangent)   2016-11-16 12:48:00
对每个粒子判断跟相临的粒子的凹凸性
楼主: yin0416 (铅笔)   2016-11-16 12:49:00
我是说,我目前已经得到纸被揉过的结果了,它记录的型式
作者: firejox (Tangent)   2016-11-16 12:49:00
我猜
楼主: yin0416 (铅笔)   2016-11-16 12:50:00
是每个粒子的位置。我想得到折线的分布结果~~
作者: firejox (Tangent)   2016-11-16 12:56:00
可以知道原先相临的粒子有哪些吗?
楼主: yin0416 (铅笔)   2016-11-16 13:02:00
可以知道!Sorry 刚才在查别的网页,想看看有没有对这个问题的程式所以忘了要回应~~
作者: firejox (Tangent)   2016-11-16 13:08:00
那以一个粒子为中心按照顺序扫周围的粒子 ,判断四个点是否为平面,不是的话就可以找出折线
楼主: yin0416 (铅笔)   2016-11-16 13:11:00
嗯,但如何得到折线的长度呢?实际上,应该不会有完全的平面,因为它会扭曲~~所以我应该订个标准,看看弯曲多大的程度视为有折线~~
作者: firejox (Tangent)   2016-11-16 13:28:00
把斜率相同且相临的线段合成就能找出折线了
楼主: yin0416 (铅笔)   2016-11-16 14:56:00
谢谢,我再试试看!

Links booklink

Contact Us: admin [ a t ] ucptt.com