IはCGAL-4.9.1のEnvelope_3
パッケージを使用していると私は、上部エンベロープ得られた包絡線図(Envelope_diagram_2<EnvTraits>
)は3種類のエッジ有することができる計算する必要がありますTraitsクラスを作成してparametrise Envelope_diagram_2にする方法はありますか?X単調曲線はセグメント、光線、円錐曲線になりますか?
- セグメント
- 光線を
- 放物線弧(円錐弧)
Envelope_Traits_3
の
3に設けられたモデルは、このために十分ではありません。
私はEnvTraits
というコンセプトのモデル(Envelope_Traits_3
のモデルである必要があります)を作成する必要があります。
今のところ私は、すでに提供されているEnv_sphere_traits_3<ConicTraits>
モデルのようなものを作っています。これは、放物線とセグメント(私はちょうど直線アークを使用しています)を自由に使い分けることができます。
私もRays
を使用できる必要があるため、問題が発生します。どうすればこのことができますか?私が必要とする3つのタイプになることができるX_monotone_curve_2
を提供するTraitsクラスがありますか(ちょうど今私が今行っているようにArr_conic_traits_2
)?
、それは異なるタイプの曲線がsubcurvesとして格納されることを可能にするであろうことを期待し、Arr_polycurve_traits_2
クラスを発見したが、それは実際には円錐、同じ種類(直線、ベジェの全てであるポリカーブを格納することができ円形...)。
ありがとうございました。 'Arr_algebraic_segment_traits'の問題は、2つの可変多項式の係数が今のところ整数にしかなり得ないことです。 今のところ、私は 'Arr_conic_traits'を使用し、非常に長いセグメント(上のエンベロープが最も遠い線分のボロノイ図を計算するのに使われる)として線を表現して、結果の図を描くときにカットされると考えました。 –
彼らはまた有権者でもよいし、少なくとも、有権者がいるならば、それらを整数に変換することもできる。円錐では、状況は似ています。 –
ドキュメントには、 _ "typesa' leda :: integer' _and_ 'CORE :: BigInt' _がサポートされています。また、' CGAL :: Sqrt_extension' _インスタンスは整数型のいずれかでインスタンス化されています"_ 私は係数として整数だけを使用できることを理解しました。有理数を整数に変換するとどういう意味ですか?それが精度を失うことはありませんか? –