value.item_attrUF_STYLER_SUBITEM_VALUES irc UF_STYLER_ask_valuedialog_id ampvalue fori 0 i lt value.count i UF_UI_write_listing_windowvalue.value.strings UF_UI_write_listing_windowquotnquot UF_STYLER_free_value ampvalue 点击 Ok 后,所有的字符串显示在 list window 中。
清华书中 uistyler 部分的程序去掉了原来的注释,使得简单的事变复杂了。
我没有在 ug/NX 下开发。
在 18 版中,建立 VC 工程时可以选择 UG APPLICATION WIZARD,那么后面的设置就可以变简单了。
Lcfq ug/NX 建立 VC 工程时有 Ungraphics NX AppWizard V1 也很好用。
to eastcamel.men 可以执行很多类型的可执行程序,比如.exe,.dll .dlg .macro 等action 没必要一定是 my_first.dll,这是他给你的一个例子,如果你用 UISTyler 生成了 my_first.dlg,那么你就可以在 action 后写上 my_first.dlg。
to visionphone论坛是交流问题的地方,不是教学,关于 menuscript 开发下拉菜单,包括菜单的级联在清华那一本书上已经很清楚了,还能找得出比他更清楚的资料吗?另外 menuscript 已经简单得不能再简单了,还能找得出比他更简单的编程方法吗? 现在在试一个把物体平移的功能.我看了 UG/open 里面的函数帮助也仔细研究了清华出的那本书他里面是先将所选对象的坐标矩正进行正则化处理然后为正则化矩正给出一个新的 ID最后创建一个零时坐标系.然后就用 uf5943uf5947 两个函数进行平移了.而现在我自己做的时候也采用上面相同的步骤但我调试时发现我选取的对象没有矩阵 ID当然也就得不到坐标系统矩阵.我后面采用获取工作坐标系的 ID然后获取其矩阵 ID 的方法但调试后仍得不到平移结果.请指教:下面是我的一段代码i_retUF_CSYS_ask_wcs ampwcs_id UF_CSYS_ask_csys_info wcs_idampmatrix_idcsys_origin UF_CSYS_ask_matrix_values matrix_idmatrix_values UF_MTX3_ortho_normalizematrix_values i_retUF_CSYS_create_matrixmatrix_valuesampnew_matrix_id i_retUF_CSYS_create_temp_csyscsys_originnew_matrix_idamptemp_csys_id FTNuf5943 DxyzD_target FTNuf5947 D_targetamptemp_csys_idamponeamponeampzeroamptwoNULLNULLampresp程序的前后两段好像没有什么联系?Dxyz 和 D_target 在哪赋值? 平移的例子double matrix16 int count1 copyFlag2 layer2 curveFlag2 rtState UF_MTX4_identity matrix UF_MTX4_edit_translation matrix vec FTNuf5947matrix ampsrcObj ampcount Flag amplayer ampcurveFlag copyedObj NULL amprtState return rtState 我刚刚接触 UG 的二次开发,按以上过程试了一下(只是在创建工程时,选择的是 UG/OPEN WIZAND V18),结果调试通过,只是运行时,马上出来对话框,菜单却找不着,恳请解答一下!找到文件 UGIImenuscustom_dirs.dat 添加用户路径 Customer modifications can follow on here你的 starup 所在位置路径比如 e:project_insessionstandard_part;也可以在 UGIIugii_env.dat 内把UGII_USER_DIRHOME改为 UGII_USER_DIR你的 starup 所在位置路径比如e:project_insessionstandard_part。
在平移的问题中,Dxyz 是一个 Input 量,它定义了对象在 xyz 方向上的平移值。
double Dxyz350800至于 D_target,它是 uf5943 函数中的一个输出量,是 uf5947 函数中的一个输入矩阵值,其中就包含了 Dxyz 定义的平移量。
FTNuf5943 DxyzD_target FTNuf5947 D_targetamptemp_csys_idamponeamponeampzeroamptwoNULLNULLampresp后来我跟踪调试了 resp 的值,显示为 0,表示成功了。
但我用 UG 里面的工具检查一点的坐标,却一点变化也没有。
后来我调试了 ZZZ 兄的一段代码,发现 copy 是成功的,但我定义为 move即把 UF_MTX4_identity matrix UF_MTX4_edit_translation matrix vec FTNuf5947matrix ampsrcObj ampcount Flag amplayer ampcurveFlag copyedObj NULL amprtState中的Flag 设定为 1,你的 rtState 可以为 0,但对象 object 却没执行什么操作。
现在我想把我的 object 进行 move(这个对象包含了 blendholeextrude 等特征操作),请问 ZZZ 兄有什么高招?现在我调试的程序可以对 pointcurve 等进行操作了,但带参数的就不行。
关于平移的问题受斑竹的启发我调试了下面两个函数同样可以对 Object 进行平移操作只能 copy 而不能进行 move .double Dxyz350800 double D_target16tag_t copy_object_id FTNuf5943 DxyzD_target FTNuf5947D_targetObject_selectedamponeamptwoampzeroamptwo_object_idNULLampresp. 现在我调试我的程序发现不能进行 move 操作之后和我的同学讨论了一下他的意见是复杂的物体带有了许多参数如果要把带参数的整个Object 进行 move 操作之需要把根 feature 进行平移而其他的特征会自动跟着平移.下面着段程序就是要获得根 feature 的操作.uf_list_p_t cmtagint ug_typeug_subtypeint N_featuresi_retUF_OBJ_ask_type_and_subtype Object_selectedampug_typeampug_subtype i_retUF_MODL_ask_object ug_typeug_subtypeampbody_object i_retUF_MODL_ask_body_feats body_objectampcmtag i_retUF_MODL_ask_list_countcmtagampN_features但进行调试时候.老是 cmtag 的值为空请问斑竹对这几个函数熟悉不?下面的这张图片是我在交互界面下进行 Transform 时出来的警告信息. Knight74 wrote: 现在我调试我的程序发现不能进行 move 操作之后和我的同学讨论了一下他的意见是复杂的物体带有了许多参数如果要 把带参数的整个 Object 进行 move 操作之需要把根 feature 进行平移而其他的特征会自动跟着平移.下面着段程序就是要 获得根 feature 的操作. uf_list_p_t cmtag int ug_typeug_subtype int N_features i_retUF_OBJ_ask_type_and_subtype Object_selectedampug_typeampug_subtype i_retUF_MODL_ask_object ug_typeug_subtypeampbody_object i_retUF_MODL_ask_body_feats body_objectampcmtag i_retUF_MODL_ask_list_countcmtagampN_features 但进行调试时候.老是 cmtag 的值为空请问斑竹对这几个函数熟悉不? 下面的这张图片是我在交互界面下进行 Transform 时出来的警告信息.body_object 一定要初始化为 NULL_TAG. Knight74 wrote:请问斑竹,知道计算两个 object 之间的距离函数吗?这个函数可以计算两个 object 之间的最短距离。
另外,感谢斑竹上面的提醒。
今天有时间我把第 3 中在 UG 中平移物体的方法写上去。
是通过移动特征来移动物体。
求助//-------------------6 Chamfer 4 edges of block2-------------------uf_list_p_t edge_list1edge_list2tag_t chamfer_idedgedouble end_point3 0 00double direction_z 3 0 0 1int dir_edgechar angle1quot45.0quotint subtype1is_parallelNULLUF_MODL_create_listampedge_list1UF_MODL_create_listampedge_list2UF_MODL_ask_feat_edges block2 ampedge_list1 UF_MODL_ask_list_countedge_list1ampnumfor i0 iltnum i UF_MODL_ask_list_itemedge_list1iampedge UF_MODL_get_curve_edge_direction end_pointedgeampdir_edge UF_VEC3_is_paralleldir_edgedirection_z0.0001ampis_parallel ifis_parallel UF_MODL_put_list_itemedge_list2edge UF_MODL_delete_listampedge_list1UF_MODL_create_chamfer subtype quot2quot quot2quot angle1e
上一篇:
经典vim插件功能说明
下一篇:
试题库管理系统毕业论文