点击查看详细介绍

UF_DRF_set_object_preferences() 函数的参数解释说明、函数详细用法,以及实例代码演示

misnn 10年前 1042 0

购买与咨询 NX 二次开发视频教程,请联系微信号:13890821008  QQ号:85585969  


函数结构:
UF_DRF_set_object_preferences
(
tag_t drf_object_tag,
int mpi [ 100 ],
double mpr [ 70 ],
char * radius_val,
char * diameter_val
)

函数说明:
设置特定注释对象的引用。

函数参数:
第1个参数为输入:
drf_object_tag代表参数变量,tag_t 为输入参数类型,起草对象标识符

第2个参数为输入:
输入int 整数型的参数,参数的变量格式为mpi [ 100 ],MPI阵列[100元素]该数组的大小由NUM_INT_PARAMS定义

第3个参数为输入:
输入double 双精度类型的参数,参数的变量格式为mpr [ 70 ],MPR数组[70元]这个数组的大小由NUM_REAL_PARAMS定义

第4个参数为输入:
输入char * 字符类型的参数,参数的变量格式为radius_val,半径符号串。这可以是至多六个字符,但由于内部的要求,缓冲器必须分配为char radius_val[27];

第5个参数为输入:
输入char * 字符类型的参数,参数的变量格式为diameter_val,直径符号的字符串。这可以是至多六个字符,但由于内部的要求,缓冲器必须分配为char直径(体积)[27];

UF_DRF_set_object_preferences函数实例代码演示:
在下面的示例代码设置为对象的喜好指定尺寸。
[quote]
#include <stdio.h>
#include <string.h>
#include <uf.h>
#include <uf_drf.h>
#include <uf_obj.h>
#include <uf_object_types.h>
void ufusr(char *x, int *y, int z)
{
volatile int ifail;
int mpi_array[100];
double mpr_array[70];
char rad_symbol[27], dia_symbol[27];
tag_t part_tag = NULL_TAG, dimension_tag = NULL_TAG;
int i;
FILE *file1;

system("rm set_pref.dat");
ifail = UF_initialize();
if( !ifail )
{
part_tag = UF_PART_ask_display_part();
printf( "Dimension Creation method: 1 - Automatic Text;\n" );
printf( " 2 - Automatic Text,
Appended Text;\n" );
printf( " 3 - Manual Text; \n" );
printf( " 4 - Manual Text,
Appended Text.\n" );
printf( "Dimension Tag Creation symbol\n\n" );
/* cycle for dimensions */
ifail = UF_OBJ_cycle_objs_in_part( part_tag,
UF_dimension_type,&dimension_tag );
file1 = fopen("set_pref.dat","w");
while( ifail == 0 && dimension_tag != NULL_TAG )
{
/* find dimension creation parameters */
UF_DRF_ask_object_preferences(dimension_tag,mpi_array,
mpr_array, rad_symbol, dia_symbol );
mpi_array[6]=6; /* Set Tolerance type */
mpi_array[12]=2; /* Set Tolerance site */
mpr_array[24] = 0.02; /* Set Upper Tolerance */
mpr_array[25] = 0.02; /* Set Lower Tolerance */

UF_DRF_set_object_preferences(dimension_tag,
mpi_array, mpr_array, rad_symbol, dia_symbol );
UF_DRF_ask_object_preferences(dimension_tag, mpi_array,
mpr_array, rad_symbol, dia_symbol );
for(i=0;i <=99;i++)
{
fprintf(file1," mpi[%d] = %d", i, mpi_array[i]);
if( i % 3 == 0)
{
fprintf(file1,"\n");
}
}
for(i=0;i <=51;i++)
{
fprintf(file1," mpr[%d] = %f", i, mpr_array[i]);
if( i % 3 == 0)
{
fprintf(file1,"\n");
}
}
fprintf(file1,"\n");

fprintf(file1,"dimension_tag = %d,rad_val = %s, dia_val=
%s\n",dimension_tag,rad_symbol,dia_symbol);
fprintf(file1,"ifail =UF_OBJ_cycle_objs_in_part(part_tag,
UF_dimension_type,&dimension_tag );
}

UF_terminate();
} /* end of success of UF_initialize */
else
{
printf( "Error Initializing. Exiting...\n" );
}
fclose(file1);
}



[/quote]

0

最新回复 (0)
请登录后发表新帖