【发布时间】:2018-01-27 00:58:54
【问题描述】:
我们一直在开发一个小型简单的“CAD”解决方案,它允许我们参数化一些特定的简单形状的宽度和长度。
例如,考虑以下一组顶点形成一个三角形。 任何2点形成一条线。所以改变点之间的距离就是改变线的宽度。
我们已经就如何解决这个问题进行了严格的讨论。
我们讨论过的事情是:
- 维护所有顶点之间所有关系的方程式列表。假设我们有点
A、B、C。让W成为一些用户定义的参数。此形状的约束方程为Bx = Ax + W、By = Ay和Cx = Bx等等。
复杂性很大,但很有效。
- 也许将每个顶点建模为图中的一个节点...?
在这个领域广泛使用的正确方法是什么?
【问题讨论】:
-
“问题”到底是什么?可能只是我,但我根本不明白你在问什么。改变顶点距离如何改变线宽???您的意思是缩放多边形还是偏移轮廓?
-
表示顶点 (100,100) 和 (200,100) 的距离是否由参数 W 参数化。如果我们想增加 W,我们应用一些算法将 (100,100) 或 (200,100) 转换为将导致 W 增加的新位置。前任。将 (200,100) 转换为 (300,100) 将使 W 增加 50%。基本上。这就是我的意思。
-
沿线方向移动线端点很容易,例如你有
A,B并想要更改大小,所以B' = A + t*(B-A)其中t是你的参数,如果t=1.0然后没有变化。 ..如果t=2.0,则长度加倍...如果t=0.5,则长度减半... -
是的,我想就是这样。我正在尝试验证它是否真的可以用于生产,因为据我了解,当你有 100 个顶点时,事情可能会变得混乱。
-
没有正确的问题描述很难说......如果你想保留形状,那么你需要改变比例而不是点移动......
标签: algorithm drawing vertices cad parameterization