問題タブ [boost-geometry]

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.

0 投票する
0 に答える
180 参照

c++ - boost::geometry の area_huiller アルゴリズムのバグ?

ブーストでのホイラーアルゴリズムの実装を見ていましたが、部分的に間違っているようです。

boost/geometry/strategies/spherical/area_huiller.hpp を参照してください。

apply() 関数では、

代わりにそうあるべきだと私は信じています

Graphics Gems 5、pg 45 - 46 によると、C++ ファイルの上部にあるコメントは、コードが Graphics Gems 4 のコードから派生したものであると述べていますが、コードは Graphics Gems 5 で後で修正されました。

ポイントの 1 つが (0, 0) である球上のポリゴンの面積を計算しようとしたときに、これに気付きました。その場合、ポリゴンが反時計回りに定義されていても、常に負の領域が返されます。(0,0) 以外のポイントを使用すると、問題が軽減されるように見えたので、何が起こっているのか疑問に思いました。

これが問題であることを他の誰かが確認できますか? これが修正されるまで、ブーストの実装をきれいにオーバーライドするための提案はありますか?

0 投票する
1 に答える
2615 参照

c++ - 2 つの Boost Geometry トランスフォーマーを組み合わせるには?

次のように、変換と回転の 2 つのトランスフォーマーがあります。

bg::transform毎回2回呼び出して中間変数を使用する必要がないように、それらを1つに結合するにはどうすればよいですか?

0 投票する
2 に答える
4686 参照

boost - Boost.Geometry は十分に成熟していますか?

私は最近、古い地理学ライブラリを書き直すために GIS 会社に雇われました。だから私は現在、優れた計算幾何学ライブラリを探しています。私は CGAL を見たことがありますが、これはすばらしいものですが、私の上司は無料のものを求めています。

だから私は今Boost.Geometryをチェックしています。このライブラリは素晴らしいようですが、かなり急速に変化しているようにも見えます。多くのことがまだ実装されておらず、多くの問題がメーリング リストで議論されています。

したがって、私の質問: Boost.Geometry は十分に成熟しているので、その上に何かを構築できますか? それとも、デザインはまだ進化していますか?

ありがとう

0 投票する
1 に答える
82 参照

c++ - boost::geometry 関数への関数ポインタ

ここで説明されboost::geometry::getている関数を別の関数に渡そうとしていますが、正しく取得できないようです。

私は持っている:

そしてコンパイラはスローします:

私は自分の関数を次のように呼び出してみました:

get問題の一部は、 に引数を渡さないため、コンパイラがGeometry関数シグネチャに含まれる型を特定できないことだと思います。

この関数を渡すにはどうすればよいですか?

0 投票する
1 に答える
4503 参照

c++ - (x、y)ポイントが境界ポイントのリストによって定義されたポリゴン内にあるかどうかを判断する方法

いくつかの(必ずしも凸ではない)形状の境界を定義する点の大きなリストがあります。次に、クエリポイントがあり、ポイントの境界で定義された領域内にある(x, y)かどうかを確認したいと思います。(x, y)

だから、十分に単純な質問。クエリポイントが境界ポイントによって形成される形状の内側にあるかどうかを判断するにはどうすればよいですか?そして、これのための素晴らしいブーストモジュールはありますか?調べてboost::geometryいますが、まだ何も見つかりません。

0 投票する
1 に答える
333 参照

c++ - boost:geometryを使用してポリゴンを反転します

バウンディングボックスが一定になるようにポリゴンを水平方向に反転するための推奨される方法は何ですか?

0 投票する
3 に答える
3503 参照

c++ - Boost.Geometryを使用してポリゴンをオフセットしていますか?

Boost Polygonライブラリは、ポリゴンを(対称的に)オフセットすることが可能であると述べています。しかし、私はAPIにメソッドやそれを行う方法の例を見つけていません.Boostジオメトリがそれを行うことができることを誰でも確認できますか? また、私はこの質問を見つけました:

https://stackoverflow.com/questions/7668331/outline-of-a-polygon-in-boost 同様の質問をしているようです。Polygon Clipperのようなライブラリはそれを素晴らしく行うことができることを覚えておいてください。ただし、Boost に対する私の関心は、高速であり、フロートをサポートすることです。手伝ってくれてありがとう。

更新: Boost ジオメトリとポリゴン ライブラリの両方について話しているのは、どちらにこの機能が含まれているか、または欠けているかがわからないためです。

0 投票する
1 に答える
2538 参照

c++ - 2DCリストからboost.geometry.model.polygonを作成する

次のデータセットがあると仮定します

このデータからブーストポリゴンを作成するにはどうすればよいですか?

ありがとう

0 投票する
1 に答える
1112 参照

c++ - ブースト ジオメトリ ポイントの初期化

に慣れようとしていboost::geometry::pointます。私のクラスには、パラメーターのないデフォルトのコンストラクターがあり、この場合、すべてのポイント値をゼロで初期化したいと考えています。

set/get 関数はテンプレートであるため、次のコード部分ではコンパイル時にエラーが発生します。

ドキュメントを参照するにはhttp://www.boost.org/doc/libs/1_51_0/libs/geometry/doc/html/geometry/reference/models/model_point.html

次の理由により、いくつかの値を設定する必要があります。

座標は初期化されません。パラメーターを持つコンストラクターが呼び出されず、set または assign を使用してポイントが割り当てられない場合、座標値にはガベージが含まれます。

コンパイル時にすべての値をゼロで初期化する方法はありますか? そうでない場合、実行時に?

0 投票する
1 に答える
439 参照

boost - OGRLineStringをブーストラインストリングとして登録するには?

boost::geometry::simplifysでメソッドを使用したいと思いOGRLineStringます。OGRPointマクロを介して登録することはできますが:

現在、次のコードを使用できません。

Simplyfy メソッドがコンパイルされず、boost:mpl::eval_if_c に関する何かを示すエラーが表示されますが、これは役に立ちません。