有一些折断的曲线作为一组点给出。我正在尝试提出一种算法,用于将新点插入到该曲线中。我只是想不出一种方法来确定插入位置。
首先想到的是考虑一个新点和一对已有的相邻点组成的三角形,选择周长最小的三角形。然而,对于这种情况, 算法将认为有必要在第一个和第二个之间插入一个新点。虽然第二个和第三个明显更好。
我也想过考虑同样的三角形,选择高度最小的那个。但即使在这里,该算法在某些情况下也无法正常工作。例如这里
该算法将选择点 3 和 4 之间的位置,而不是 1 和 2。
为了排除这种情况,我决定只考虑底部有锐角的三角形。但即使在这里也有例外。
两个候选三角形的底角都是钝角。
基本上,我被困住了。这个问题肯定有一些解决方案,或者至少有一个可以用 google 搜索到的名称。毕竟,人们会编写各种 autocad 之类的东西。
我会考虑插入一个点作为主要点后折线长度变化最小的条件。
您只需要决定是查看长度的绝对增加,还是相对于被两个替换的段。