具体例:ヨーロッパ諸国の地図と「欧州連合の国を表すパス」へのポインタリストを取得し、単一の「ヨーロッパを表すパス連合"。「ベジェ曲線を含む隣接ポリライン」の結合
赤、緑、青の3つの入力パスがあるとします。
- レッドは直線のみ
- グリーンライン・セグメントで構成されたセグメントとベジエで作られて
- ブルーベジエのみ
で作られて...その後、私は、出力を作成する必要があります3つのオブジェクトの和集合であるポリライン - ベジエ - を使用します。
さらに、私は入力データにいくつかのエラーマージンに対処する必要があります - c.f.その下の画像には、入力形状間に非常に小さな「ギャップ」があります。イメージでは、下の図(赤色)が望ましい出力です。
これは簡単に恐ろしく間違って行くと、それを動作させるために失敗し、私の週を取ることができます。私は「十分」であるかもしれない、比較的単純なアプローチを見つけようとしているが、私は現在にこだわっ:
- どのようにしても、労働組合のベジエに始めるのですか?
- 「ギャップ」/エラーマージンを扱うのスマートな方法は何だ - 私は単に私のフロート座標を丸めを行うには狡猾な何かがあります確信している - が、私はそれを見ることはできません:(
最後に...ターゲットプラットフォームはiPhoneなので、私はAppleのQuartz/QuartzCore/CoreAnimation /などのすべてにアクセスしています。ユーティリティメソッド - ただし、アップルの公式は、 A intersect Path B? "は多くのケースで非常に壊れている/間違っている - したがって信頼性が低い:(
凸船体は、この問題のコンテキストで意味をなさない:-(
申し訳ありませんが、この電話ではるかに入力することはできません。 –