iCAx开思工具箱

标题: 请教关于UF_sf的问题 [打印本页]

作者: Nestea    时间: 2006-7-20 20:31
标题: 请教关于UF_sf的问题
使用UF_SF_create_ugs_2d_mesh()划分网格
入口参数要求是 faces or sheet bodies 的tag
我是这样做的
设置了一个类选框
UF_UI_select_with_class_dialog(                                          
          cue, title, UF_UI_SEL_SCOPE_WORK_PART_AND_OCC,
          init_proc, NULL, &response, &count, &objects)

在init_proc 中设置    UF_UI_mask_t mask_triples[] = {  UF_face_type, 0, 0};

这样能选择得到的应改只有face的tag了

然后将输出 count   objects 传入UF_SF_create_ugs_2d_mesh()中
部分代码如下:
    (mesh_parms).element_type                           = UF_SF_UGS_MESHER_quad4;                              //UF_SF_ugs_2d_mesh_parms_t mesh_parms
    (mesh_parms).element_size                            = 5;                                                                          // 给各参数赋值
    (mesh_parms).edge_match_tolerance            = 0.508;                          
    (mesh_parms).format_mesh                            = TRUE;                           
    (mesh_parms).attempt_quad_mapping           = TRUE;                           
    (mesh_parms).split_poor_quads                      = TRUE;                           
    (mesh_parms).maximum_quad_warp               = 10.0;                           
    (mesh_parms).midnode_option                        = UF_SF_UGS_MESHER_mixed_midnodes;
    (mesh_parms).maximum_midnode_jacobian    = 5.0;                           
    (mesh_parms).minimum_face_angle                = 20.0;                           
    (mesh_parms).surf_mesh_size_variation         = 0;               

   UF_SF_create_scenario("Scenario_1.sim", &scenario);                                                                    //创建scenario环境

   error = UF_SF_create_ugs_2d_mesh(&mesh_parms, count, objects, &mesh_tag);
   if (error != 0)
          uc1601("错误“,1);

   UF_SF_display_mesh (mesh_tag);
   
   UF_free(objects);

编译没问题  但网格总是出不来
通过调试      发现生成了mesh_tag  


后来通过另一种方法来实现
使用   UF_OBJ_cycle_objs_in_part (tag_t part_tag, int type, tag_t * object )
UF_OBJ_ask_type_and_subtype (tag_t object_id, int * type, int * subtype ) 两个api
遍历part,将subtype为UF_solid_face_subtype的挑出来

然后同样传到UF_SF_create_ugs_2d_mesh() 参数设置相同
这样就可以得到网格

调试过程中发现两种方式传入的facetag值居然相同
但结果一个能行,一个不能行

由于后一种只能整体划分
不能实现选择面划分的交互 所以不能采用


请教高手 我的第一种方法到底哪里有问题
为什么网格出不来呢?
谢谢大家了 ^_^
作者: 平台洗马    时间: 2011-4-1 17:38
同问,顶起帖子,期待楼主来结帖
作者: 血飘※人间    时间: 2011-8-4 16:35
我也遇到了这个问题,懂的行家出来帮忙解答下,楼上的如果已经解决了这个问题那麻烦加下我QQ406107431,帮我解答下,先谢谢了
作者: zuoluock    时间: 2012-2-26 17:11
你好,我也是从事NX运动仿真模块开发的,急寻这方面的人就这块进行交流和学习。不知道方便可以加个QQ好友不,我QQ441039534.另外可以问一下如何编程实现在运动仿真模块新建一个解算方案,也就是solution,知道的话麻烦回一下,感激不尽!
作者: zuoluock    时间: 2012-2-26 17:11
平台洗马 发表于 2011-4-1 17:38
同问,顶起帖子,期待楼主来结帖

你好,我也是从事NX运动仿真模块开发的,急寻这方面的人就这块进行交流和学习。不知道方便可以加个QQ好友不,我QQ441039534.另外可以问一下如何编程实现在运动仿真模块新建一个解算方案,也就是solution,知道的话麻烦回一下,感激不尽!
作者: zuoluock    时间: 2012-2-26 17:12
血飘※人间 发表于 2011-8-4 16:35
我也遇到了这个问题,懂的行家出来帮忙解答下,楼上的如果已经解决了这个问题那麻烦加下我QQ406107431,帮我 ...

你好,我也是从事NX运动仿真模块开发的,急寻这方面的人就这块进行交流和学习。不知道方便可以加个QQ好友不,我QQ441039534.另外可以问一下如何编程实现在运动仿真模块新建一个解算方案,也就是solution,知道的话麻烦回一下,感激不尽!




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3