Mobile Communication Direct

ビュー編集(スケール、ビュー境界)


サンプル

#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;

}
				

 


<戻る>