- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
对于任何形状,我如何在其内部创建一个相似形状的螺旋。这与边界(使用 Minkowski 和)类似。而不是在形状内部创建相同的形状,尽管它会是相同形状的螺旋。
我找到这个 - http://www.cis.upenn.edu/~cis110/13su/lectures/Spiral.java
它根据传递的参数创建螺旋,因此它可以用于任何规则形状。
我想要以上所有形状,即不规则多边形。
我不太熟悉几何术语,但我也查阅了渐开线和内部螺旋搜索算法,但对我没有用。
有没有人知道我在哪里可以找到这样的算法,或者至少知道我是如何想出一个算法的?
最佳答案
这个任务非常难做。
需要有你想用螺旋填充的边界多边形
我想你已经有了
通过将所有线向内移动 step 创建新的更小的多边形。
类似于在多边形周围创建描边线。 Step 是螺旋宽度,因此在多边形的开始处为 0
,在结束处为 d
从新生成的螺丝中移除无效行
拐角和曲率上的一些线会相交。这很难可靠地检测/修复看到
重复(做下一个螺丝)...直到找不到螺丝空间
但现在在第一个螺丝之后,台阶总是 d
这不一定会填满整个形状。例如,如果您在形状上有一些较薄的点,它会比其余部分填充得更快,因此仍然会留下一些孔。
您应该检测它们并按您认为合适的方式处理
请注意,如果区域已被填充,检测也很重要
这是这种方法的样子:
[注释]
如果您忘记了螺旋形并想用之字形或类似图案填充内部,那么这并不难。
螺旋填充会产生很多困难的几何问题,如果您不擅长几何和矢量数学,那么对于该领域的初学者甚至中等熟练的程序员来说,这项任务可能是一个太大的挑战,无法使其正常工作。这至少是我的意见(正如我之前所做的那样),所以请这样处理。
关于algorithm - 如何为多边形创建内部螺旋线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31002815/
我是一名优秀的程序员,十分优秀!