0

私はこれに対する最善の解決策について数日間考えてきましたが、これを行う方法について正しい考えを得ることができないようです。

私はピース(オブジェクト)を持っていて、それらを可能な限り最小のスペースに収めたいと思っています。私が最終的に探しているのはこのようなものです

http://i.stack.imgur.com/Yg09E.gif

しかし、2本の線(縞)の可能な限り最良の適合を計算するだけのより単純なバージョンは、右側の線(縞)のように、今のところすでに実行されます

http://i.stack.imgur.com/HijMo.jpg

私が持っているのは、2本の線(ストライプ)を表すxy軸上の2つの点(頂点)の配列です。2つの最も近い点の間に10または20mmのスペースがあるように配置したいと思います。

配列の前半を見て最高点を見つけ、後半を見て最高点を見つけて2つを比較することを考えていましたが、それは実際には適切な解決策ではないようです。

そして、最初の画像のように形に合ったプログラムを書くことは、そのような方法を使っても可能だとは本当に想像できません。

誰かが私を正しい方向に導くことができますか?

4

1 に答える 1

0

まあ、これは本当に可能です。

あなたがしなければならないのは、面積と距離関数を構築することだけです。形状の種類ごとに異なるアルゴリズムを追加する必要がある場合があります。

最初の写真で提供されたものの場合、面積を計算するのは困難です。したがって、おそらく頂点の距離を指定する必要があります。また、形状の軌跡がどの点でも重ならないようにする条件を追加する必要があります。

于 2012-09-27T17:53:20.857 に答える