1

CGALを使用して、同じファイルから2Dでポイントとセグメントを読み取る簡単な方法はありますか?

このファイルの形式はどうあるべきですか?

4

1 に答える 1

2

CGALoperator<<では、カーネルオブジェクトとストリームに対してオーバーロードされています。形式は、まあ、明らかに文書化されていませんが、より単純なタイプの場合は明らかです。

#include <CGAL/basic.h>
#include <CGAL/Simple_cartesian.h>

typedef CGAL::Simple_cartesian<double> K;

int main()
{
  K::Point_2 p;
  std::stringstream ss;
  ss << "2.05 3.05";

  ss >> p; // read from a stream
  std::cout << p << std::endl; // write to a stream

  K::Segment_2 s;
  ss.clear();
  ss << "2.3 4.2 4.2 2.3";
  ss >> s; // read a segment from a stream
  std::cout << s << std::endl; // write a segment to a stream
  return 0;
}

コードを見ると、次のCGAL::Polygon_2ような入力が必要です。

"4 0 0 0 1 1 1 1 0"

ここで、最初の数字は、その前後のポイントの数です。

于 2012-11-26T21:06:44.880 に答える