/// <summary>
/// 根据相对坐标创建圆弧
/// </summary>
/// <param name="wcsTag">输入相对坐标</param>
/// <param name="ori">绝对坐标圆心</param>
/// <param name="r"> 半径</param>
/// <param name="color"> 颜色</param>
/// <returns> 圆弧</returns>
tag_t MODL::Create_ArcFull_by_wcs_UF(tag_t wcsTag, double ori[3], double r, double beginAngle, double endAngle, int color)
{
double point[3] = { 0,0,0};
tag_t mtxTag = 0;
UF_CSYS_ask_csys_info(wcsTag, &mtxTag, point);
tag_t wcsK = 0;
double xyz[3] = { 0 };
UF_CSYS_create_temp_csys(xyz, mtxTag, &wcsK);
UF_CSYS_set_wcs(wcsK);
UF_CSYS_map_point(UF_CSYS_WORK_COORDS, ori, UF_CSYS_ROOT_WCS_COORDS, ori);// UF_CSYS_ROOT_WCS_COORDS UF_CSYS_WORK_COORDS
tag_t arcTag = 0;
UF_CURVE_arc_t arcData;
arcData.start_angle = beginAngle * DEGRA;
arcData.end_angle = endAngle * DEGRA;
arcData.matrix_tag = mtxTag;
arcData.arc_center[0] = ori[0];
arcData.arc_center[1] = ori[1];
arcData.arc_center[2] = ori[2];
arcData.radius = r;
UF_CURVE_create_arc(&arcData, &arcTag);
UF_OBJ_set_color(arcTag, color);
UF_CSYS_set_wcs(wcsTag);
return arcTag;
}