問題タブ [cgal]

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 投票する
1 に答える
1021 参照

makefile - ライブラリでのコンパイルの問題

OS X Lion で CGAL ライブラリを使用する C++ コードをコンパイルしようとしています。CGALライブラリをダウンロードしてディレクトリにインストールしました。次に、「make」を使用してコードをコンパイルしようとすると、

これは、CGAL ライブラリが見つからないことを意味します。Makefile を見ると、フラグを使用してコンパイルされていることがわかります

これを解決する方法を知りたいのですが、コンパイルしたライブラリの配置に関する情報をこの変数に渡すことができると思いますが、方法はわかりません。エクスポートなどでやってみたのですが認識されません、何かヒントはありますか?

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

triangulation - CGAL メッシュの最適化

事前に生成した三角形分割を「きれいに」しようとしています。

基本的に、CGAL にポイントを入力してそこからメッシュを生成し、refine_mesh_3 を使用してスライバーを削除して品質を向上させたいと考えています。

そうするための簡単なテクニックはありますか?

ありがとう...

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

computational-geometry - 述語を比較するロバストな距離

次のコードで定義された堅牢な述語が必要です。

浮動小数点演算の制限により、正確に(その二乗でさえ)計算できないためdistance、このコードを直接実装した場合、述語は堅牢ではありません。CGALライブラリで見つけようとしましたが見つかりませんでした。

私が必要とする述語にやや近いのはcompare_distance_to_point(Point p, Point q, Point r) 述語です。Smallerif distance(p, q) < distance(p, r)Equalif distance(p, q) == distance(p, r)、それ以外の場合は戻りますLarger。最初の考えは、シフトcd(c - a)ベクトルで行うことです。そのため、を呼び出すことができますcompare_distance_to_point(a, b, d + (c - a))が、これは再び堅牢性に違反します。それで、誰かがそれを適応させるためのアイデアを持っていますか?

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

cgal - CGAL: 継承とカーネル

CGAL の質問:

ポイント クラスに 1 つのプロパティを追加しようとしています。私が推測する最初のステップは、カーネルを継承し、ポイント クラスを CGAL から継承した独自のものに置き換えることです。しかし、この小さな最初の一歩を踏み出そうとすると、問題が発生します。

編集:以下のコメントに基づいて、継承をマニュアルに記載されている方法に変更しました。以下のコードでは、次のコンパイル エラーが発生します。

  • 'typename CGAL::Extended_homogeneous::Base' 名前 'CGAL::Extended_homogeneous::Base', これはクラス テンプレートではありません |

とりわけ。

MyBase.h

最小.cpp

継承が「public K_Base::Base::template B::Type」に変更された場合はコンパイルされますが、拡張機能からのプロパティが不足していると思いますか? エラーが出るから

  • 「このカーネルではコンストラクターを使用できません」

    プログラムを実行すると

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

inheritance - CGALのPointクラスに変数を追加します

ドロネー三角形分割を行った後に色にアクセスできるように、CGALのPoint_3クラスに色変数(unsigned char)を追加しようとしています。

私が試したのは、Triangulation_vertex_base_with_info_3を使用して、このような色を保存することです(http://www.cgal.org/Manual/latest/doc_html/cgal_manual/Triangulation_3/Chapter_main.html#Subsection_39.5.3の例に従ってください)

私が実際に達成したいのは、三角測量を行った後、Triangulation::Tetrahedronクラスを介して頂点の色にアクセスできるようにすることです。

(x、y、z)に点Pがあるとしましょう。三角測量の後、この点Pを含む四面体tを見つけ、この四面体の頂点にアクセスできます(t.vertex(0..3)を使用)。これにより、Point_3タイプの頂点が返され、以前に保存した色にアクセスできません。

これを行う方法は、色情報を含む独自のPointクラスを作成することだと思います。簡単ですが、Point_3の代わりにこのクラスを使用する方法がわかりません。これを行うには独自のカーネルとhttp://www.cgal.org/Manual/latest/doc_html/cgal_manual/Kernel_23/Chapter_main.html#Section_11.5の例も作成する必要があることがわかりましたが、できません。基本クラスとしてどのカーネルを使用する必要があるか、またはカーネルにどの関数を含める必要があるかを把握します。

私はここstackoverflowで2つの同様のトピックを見つけました: 私自身のPointクラスCGALでのCGALカーネルのカスタマイズ:継承とカーネル ですが、それらは私を助けませんでした。

ご協力ありがとうございました!

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

c++ - cgalを使用して2つのポリゴンの交差面積を計算します

2つの凸多角形の頂点を考えると、cgalを使用してそれらの交差の面積を計算する最も簡単な方法は何ですか?

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

c++ - CGAL: 通常の 3D 三角測量と加重 3D 三角測量の違い

一連の 3D 点について、それらすべてがデカルト座標で指定されている場合、その 3D Delaunay 三角形分割と、加重 (ここに示されているように) または通常の 3D 三角形分割との間の CGAL における主な違いは何ですか?

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

c++ - (dk) 次元超球 (k) の構成方法

博士課程の研究では、C++ CGAL ライブラリが提供する dD Geometry Kernel を使用しています。

  • 私の基本的な目標: 任意の次元 d に到達するまで、1 つの新しい点を順次追加することにより、一連の次元成長超球を構築したいと考えています。最初の超球は 1 次元で、最後の超球は d 次元です。追加された各新しいポイントは、実際の次元の拡張につながります (共平面性なし)。

  • 私の問題: CGAL::Sphere_d クラスを使用して、d 次元の周囲空間 (つまり、d 次元の点) で (dk) 次元の超球 (k < d) を構築する方法がわかりません。実際、d'-球体を構築するには、d'+1 個の d'-点を提供する必要があります (これは正常です)。たとえば、3 つの3次元の点から円盤 (2 球) を作成したいと考えています。したがって、この CGAL クラスを直接使用すると、(今のところ) 不可能な 2 次元の点を提供することになります。

  • 私の質問: CGAL ライブラリのごく最近のユーザーとして、このクラスを使用する必要があるかどうか、または別のクラスを見つける必要があるかどうかわかりません。必要でない場合、問題を回避するにはどうすればよいですか?

前もって感謝します、

オクタビオ


Box2d ロープ - 固定長ではありません

私はbox2dの物理学でゲームを作成しています.ロープが付いたクレーンがあります.そのようなものです(例)

ここに画像の説明を入力

私が達成しようとしているのは、プレイヤーがラインを折りたたんだり展開したりできるようにすることです (明らかに特定の制限まで)。現在、固定長のロープしか作成できないため、ゲームが少し制限されています。

どうすればそれを達成できますか?いくつかのアイデアがありましたが、ロープを常に作り直すなど、良いアイデアではありませんでしたが、それは私のパフォーマンスを台無しにするだけでした.

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

debugging - Mac OS で Boost を使用して CGAL の例をデバッグする

CGAL を手動でコンパイルして にインストールしました~/Library/CGAL/CGAL-4.0.2/Boost (boost @1.50.0_0+debug+no_single+no_static)だけでなく、cmake (2.8.8_1)を使用してインストールされmacportsます。提供された例のコンパイルの目的では、物事はうまく機能します。私の問題は、例をデバッグしようとするときです。具体的には、たとえば、 と を含むディレクトリで実行しcmake -DCMAKE_BUILD_TYPE=Debug .ました。生成されたバイナリ関数は期待どおりですが、デバッグのために実行すると、次の警告が表示されます。Arrangements_on_surfaces_2makegdb foofoo

どうすればいいのかわからない。boost手動でダウンロード、コンパイル、インストールしてから再コンパイルしてみCGALました。ただし、サンプルをコンパイルしようとすると、実行時にboostライブラリが見つからないと文句を言うようになりました。

一方、プロジェクトをデバッグしようとすると( cmake のオプションをXCode使用してプロジェクトを作成した後)、サンプルをデバッグできました。-G Xcode

どんな支援も役に立ちます!