EDIT5:ついに、Angus JohnsonのClipperライブラリをJavascriptで実装し、ホストとしてSourceforgeを選択しました。
ライブデモ:http://jsclipper.sourceforge.net/6.1.1.1/main_demo.html
ソースをダウンロード: https ://sourceforge.net/projects/jsclipper/
ステップバイステップのチュートリアルを含むWikiページ: https ://sourceforge.net/p/jsclipper/wiki/Home%206/
数十のサンプルポリゴンを含むデモプログラムのプレゼンテーション: https ://sourceforge.net/p/jsclipper/wiki/Main_Demo%206/
これが、オフセット機能を備えたポリラインおよびポリゴンクリッピングライブラリを必要とするすべての人に役立つことを願っています。
EDIT4:1つの可能性は、http://p2js.gelicon.biz/en/を使用してpascalをjavascriptに変換すること
です。まだ成功していません。p2js.exe clipper.pas
「クリッパーが使用する単位系が見つかりません」という致命的なエラーが発生します。
編集:C#をJavascriptに変換できるように見えるscript#(Github )を見つけました。Clipper libはC#で利用できるので、Script#を使用してC#-> JS変換を行うことは可能でしょうか?
EDIT3:script#で変換されませんでしたが、Emscriptenもありますが、4000cpp行が300000 Javascript行に変換されたため、オプションではありません。手動変換は王様のようです。
EDIT2:問題を示す例を作成しました。左右の矢印を使用してオフセットを適用します。特定の距離では問題なく動作しますが、問題が発生します。黄色のストロークポリゴンは、いわゆる生のオフセットポリゴンと呼ばれ、AFAIK Clipper libは、生のオフセットポリゴンの不要な部分を削除する方法を提供します。
ポリゴンをオフセットするためのAngusJohnsonによるClipperライブラリがあります。
SVGポリゴンをオフセットするには、Javascriptでこの機能が必要です。
誰かがそれのJavascriptポートを作成しましたか?
そうでない場合は、いくつかのガイドラインをいただければ幸いです。次のように:
-それはどれほど巨大なタスクになるでしょうか?
-ソース(Delphi、C#、C ++)にどれを選択しますか?
-オフセットにはlib内のすべてが必要ですか?
Clipperライブラリは、必要な機能である次の結果を生成します。
いくつかのリンク:
-Sourceforgeのファイル
-クリッパーのドキュメント
-1つのStackoverflowの回答
-オフセットアルゴリズム