extern UFUNEXPORT int UF_MODL_ask_face_data 详解
时间: 2023-08-11 09:05:26 浏览: 166
`UF_MODL_ask_face_data` 是 UG/Open C API 中的一个函数,用于查询面(face)的数据。函数原型如下:
```c
extern UFUNEXPORT int UF_MODL_ask_face_data(
tag_t face_tag, /* <I> 面对象的标签 */
double *area, /* <O> 面的面积 */
double *centroid, /* <O> 面的重心坐标 */
char **name /* <OF> 面的名称,需要调用 UF_free() 函数释放内存 */
);
```
其中,参数 `face_tag` 表示要查询的面对象的标签。参数 `area` 返回该面的面积。参数 `centroid` 返回该面的重心坐标。参数 `name` 返回该面的名称,需要调用 `UF_free()` 函数释放内存。
使用该函数可以查询面的相关信息,例如面积、重心坐标等。
相关问题
ug 二次开发Open C extern UFUNEXPORT int UF_MODL_ask_face_data 详解
`UF_MODL_ask_face_data` 函数是 UG/Open C API 中的一个函数,用于查询面(face)的数据。以下是该函数的详细解释:
函数原型:
```c
extern UFUNEXPORT int UF_MODL_ask_face_data(
tag_t face_tag, /* <I> 面对象的标签 */
double *area, /* <O> 面的面积 */
double *centroid, /* <O> 面的重心坐标 */
char **name /* <OF> 面的名称,需要调用 UF_free() 函数释放内存 */
);
```
参数说明:
- `face_tag`:要查询的面对象的标签。
- `area`:返回该面的面积。
- `centroid`:返回该面的重心坐标。
- `name`:返回该面的名称,需要调用 `UF_free()` 函数释放内存。
函数返回值:
- `0` 表示成功。
- 非 `0` 值表示失败。
使用示例:
```c
#include <uf_modl.h>
#include <stdio.h>
int main()
{
tag_t face_tag;
double area, centroid[3];
char *name;
// 获取一个面的标签
// ...
int ret = UF_MODL_ask_face_data(face_tag, &area, centroid, &name);
if (ret != 0)
{
printf("查询面数据失败!\n");
return 1;
}
printf("面积:%lf\n", area);
printf("重心坐标:(%lf, %lf, %lf)\n", centroid[0], centroid[1], centroid[2]);
printf("名称:%s\n", name);
UF_free(name);
return 0;
}
```
该示例中,我们首先获取了一个面对象的标签 `face_tag`,然后调用 `UF_MODL_ask_face_data` 函数查询该面的数据。函数返回成功后,我们打印出面积、重心坐标和名称,并释放了名称所占用的内存。
extern UFUNEXPORT int UF_DRAW_upd_out_of_date_views
`UF_DRAW_upd_out_of_date_views` 是 UG/Open-UG 三维造型软件中的一个函数,其作用是更新指定视图中已过期的对象。该函数是在 `uf_draw.h` 头文件中声明的,并且使用 `UFUNEXPORT` 宏进行导出,以便在其他应用程序中使用。
函数原型如下:
```c
extern UFUNEXPORT int UF_DRAW_upd_out_of_date_views(
tag_t view_tag, /* 视图标签 */
int update_flag, /* 更新标志 */
int *num_updated /* 更新的对象数量 */
);
```
函数参数说明如下:
- `view_tag`:要更新的视图标签。
- `update_flag`:更新标志。可取值为:
- `UF_DRAW_NO_UPDATE`:不更新。
- `UF_DRAW_UPDATE_INFERRED`:更新推断的视图。
- `UF_DRAW_UPDATE_ALL`:更新所有视图。
- `num_updated`:输出参数,返回更新的对象数量。
函数返回值为错误码,`0` 表示执行成功,其他值表示执行失败。
阅读全文