ビュー編集(スケール、ビュー境界)
サンプル #include <uf_draw.h> #include <uf_draw_errors.h> #include <uf_draw_types.h> #include <uf_view.h> #include <uf_view_ugopenint.h> using namespace std; void func1(void) { int ret; double dPt[2] = {150.0, 150.0}; //図面へのビューの取り込み ret = uc6481("SHT1", "TOP", dPt, 1); if(ret != 0){cout << "ERROR\n";} //図面内のビューの検索 char view_name [MAX_ENTITY_NAME_SIZE] = ""; uc6499("", view_name); cout << "view_name -> " << view_name << endl; //名前で指定した既存のビューのタグを取得 tag_t view_tag = NULL_TAG; UF_VIEW_ask_tag_of_view_name (view_name, &view_tag); //ビューのスケールを指定の値に設定 UF_DRAW_set_view_scale (view_tag, 0.1); //現在図面のビューボーダの設定 double dBorder[4] = {10.0, 10.0, 500, 500}; uc6486(view_name, dBorder); //現在の図面のタグを返します tag_t drawing_tag = NULL_TAG; UF_DRAW_ask_current_drawing (&drawing_tag); //要素の未更新状態を照会する。今のところ、ビューと図面の2つの要素だけが有効。 logical out_of_date; UF_DRAW_is_object_out_of_date(drawing_tag, &out_of_date); if (out_of_date) { //図面上の1つの図面メンバビューを更新する。 UF_DRAW_update_one_view(drawing_tag,view_tag); } return; }