|
发表于 2019-11-12 20:22:03
|
显示全部楼层
//梅雷大师帮助文档里面的实例。
tag_t object_tag=NULL_TAG; //输入圆弧
UF_EVAL_arc_s arc;
UF_EVAL_p_t evaluator;
UF_EVAL_initialize (object_tag, &evaluator ); //初始化
int err=UF_EVAL_ask_arc (evaluator, &arc);
if (err==0)//输入的是圆弧
{
if (arc.is_periodic==true) //如果输入的对象是整圆
{
char msg[133];
UF_UI_open_listing_window(); //打开窗口
UF_UI_write_listing_window("输出圆弧参数\n");
sprintf(msg, "(曲线范围'min=0,max=2π表示整圆'):min=%.2f,max=%.2f \n", arc.limits[0],arc.limits[1]);
UF_UI_write_listing_window(msg);
sprintf(msg, "(圆心-根据绝对坐标):X=%.2f Y=%.2f Z=%.2f", arc.center[0],arc.center[1],arc.center[2]);
UF_UI_write_listing_window(msg);
UF_UI_write_listing_window("\n");
sprintf(msg, "(半径):R=%.2f", arc.radius);
UF_UI_write_listing_window(msg);
UF_UI_write_listing_window("\n");
sprintf(msg, "(X矢量方向-根据绝对坐标):i=%.2f j=%.2f k=%.2f", arc.x_axis[0],arc.x_axis[1],arc.x_axis[2]);
UF_UI_write_listing_window(msg);
UF_UI_write_listing_window("\n");
sprintf(msg, "(y矢量方向-根据绝对坐标):i=%.2f j=%.2f k=%.2f", arc.y_axis[0],arc.y_axis[1],arc.y_axis[2]);
UF_UI_write_listing_window(msg);
}
}
UF_EVAL_free(evaluator);
|
|