問題タブ [clipperlib]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
polygon - !Clipper ライブラリ ラインポリゴン使用オフセット 使い方 ユニオン
Draw Line polygon と Use Offset が欲しいが Union
c++ - クリッパー ライブラリ (c++) を使用して、ラインとポリゴンのクリッピングで空のパスが返される
Clipper ライブラリを使用して、ポリゴンを線で分割しようとしています。クリッピングの実行後、空のパスを返します。誰かが同じことをする正しい方法を提案できますか?
ソルンのサイズはゼロです。
c# - Clipper Lib パスの総面積 (複数)
私はグーグルで検索しましたが、必要なものに似たものは見つかりませんでした。
Clipper Lib は、パスの面積を計算する関数を提供します。
double Area(Path path)
これをスケーリングして複雑なポリゴン (穴が開いたポリゴンなど) の面積を計算する方法が見つかりません。
つまり、次のようなものを作成する必要があります。
double Area(Paths paths, PolyFillType FillType = PolyFillType.pftEvenOdd)
誰かがこれを行う方法を教えてもらえますか? 前もって感謝します
PS: この複雑な多角形には穴がある可能性があるため、単純に面積の合計を出すことはできません。
c# - 三角形内のすべてのポイントを取得するとオーバーフローが発生する
まあ、UnityにはGraphicsPathがありません(ポリゴンを塗りつぶし、それらを描画し、輪郭を描き、ユーティリティを一般的な形状で使用するため)、独自の実装を行っています。まあ、どちらが最良の選択肢か議論することもできますが、実際には、私は多くのことを学んでいるので、これを好みます.
アイデアは次のとおりです。ポリゴンが与えられた場合、ClipperLib を使用してオフセット ポリゴン (内側と外側) を作成し、後で LibTessDotNet を使用して三角測量を行い、これを出力します。
緑、青、黄色のピクセルは、すべての三角形の辺です。この形状の 501 個の三角形のような LibTessDotNet 出力。
だから、 @SimpleVarのおかげで私はこれをやった:
実際には機能しますが、うまくいきません。オーバーフローが発生するためです (このコードで大量の RAM が使用されるため、Process Explorer で Unity プロセスを強制終了する必要があります)。
ブレークポイントを使用してこのことをデバッグしましたが、実際にどこに問題があるのか わかりません。
問題は次のブロックまたは次のブロックにあると思いfor (var x = pt1.x; x < pt2.x; ++x)
ますfor (int y = minY; y <= maxY; ++y)
...しかし、私が言ったように、WinFormsで慣れているようにデバッグすることはできません。オーバーフローに達すると、Visual Studio がデバッグを停止し、Unity がクラッシュするため、少し行き詰まります。
オーバーフローを行う DotNetFiddle を実行しようとしましたが、ここでは何もわかりません...だから...コードを改善するために何ができるかわかりません。
あなたが見つけたすべてが最適化されていないこと、および私の主な目標を改善するために私ができるアプローチを説明してください.