ぽんこつプログラマーの日々のまとめ
xZX3EpTm

OpenCASCADEを扱った日本語サイトが兄のページしかないので自分も担当しているVisualization周りをまとめる事にした。
サンプルコードの言語はC++/CLI。
表示周りを制御するには基本的にAIS_InteractiveContextから制御する。

平面にISO Lineを表示する

// AIS_InteractiveContextのインスタンス
myContext->IsoOnPlane(Standard_True);

三角形パッチにISO Lineを表示する

myContext->IsoOnTriangulation(Standard_True);

ISO Lineの本数を指定する / 非表示にする

// 第一引数が本数
// 0本に指定すると実質非表示

// UVそれぞれ指定
myContext->SetIsoNumber(10, AIS_TypeOfIso::AIS_TOI_IsoU);
myContext->SetIsoNumber(5, AIS_TypeOfIso::AIS_TOI_IsoV);

// UV同じ本数を指定
myContext->SetIsoNumber(10, AIS_TypeOfIso::AIS_TOI_Both);

ISO Lineの細かな設定

上記まではAIS_InteractiveContextのメンバーに公開されているが、線種等はPrs3d_DrawerクラスのDefaultDrawerとPrs3d_IsoAspectクラスで設定する。
// 引数は 色、線種、太さ、本数
Handle(Prs3d_IsoAspect) u_asp = new Prs3d_IsoAspect(Quantity_NameOfColor::Quantity_NOC_BLUE1, Aspect_TypeOfLine::Aspect_TOL_DOT, 2.0, 5);
myContext->DefaultDrawer()->SetUIsoAspect(u_asp);

Handle(Prs3d_IsoAspect) v_asp = new Prs3d_IsoAspect(Quantity_NameOfColor::Quantity_NOC_GREEN, Aspect_TypeOfLine::Aspect_TOL_DASH, 5.0, 8);
myContext->DefaultDrawer()->SetVIsoAspect(v_asp);
実行結果
cas000

Add Comments

名前
 
  絵文字
 
 

Trackback URL

Steam ID
pixiv ID
gallery
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑲ Dark 1080*960
  • [Android] 壁紙⑱ 雨 1080*960
  • [Android] 壁紙⑱ 雨 1080*960
  • [Android] 壁紙⑱ 雨 1080*960
  • [Android] 壁紙⑱ 雨 1080*960
  • [Android] 壁紙⑱ 雨 1080*960