Mobile Communication Direct

ビュー作成


サンプル

#include	<uf_draw.h>
#include	<uf_draw_errors.h>
#include	<uf_draw_types.h>

#include	<uf_obj.h>
#include	<uf_obj_errors.h>
#include	<uf_obj_types.h>

#include	<uf_view.h>
#include	<uf_view_ugopenint.h>

#include	<cstring>

using namespace std;


void Func5()
{
	int	ret;

	double dPt[2] = {150.0, 150.0};

	//図面へのビューの取り込み
	ret = uc6481("SHT1", "TOP", dPt, 1);
	if(ret != 0){cout << "ERROR\n";}

	//
	int	num_views;
	tag_t	*view_list;

	//特定の図面内のメンバビューの数を読み取り、メンバビュータグのリストを返す。
	//NULL_TAGであれば、現在の図面を使用。
	UF_DRAW_ask_views(NULL_TAG, &num_views, &view_list );


	//
	int	i;
	char	szBuff[31];

	for(i = 0; i < num_views; i++)
	{
		//指定された要素の名前を取得する。
		UF_OBJ_ask_name(view_list[i], szBuff);
		cout << szBuff << "//" << endl;

		//ビューのスケールを指定の値に設定
		UF_DRAW_set_view_scale (view_list[i], 0.1);

		//ビュー境界を自動ビュー境界として定義します。
		UF_DRAW_define_view_auto_rect(view_list[i]);

		//現在の図面のタグを返します
		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(view_list[i], &out_of_date);

		if (out_of_date)
		{
			//図面上の1つの図面メンバビューを更新する。
			UF_DRAW_update_one_view(drawing_tag, view_list[i]);
		}
		
	}

	//
	UF_free(view_list);

	return;
	
}
				

 


<戻る>