iCAx开思工具箱

标题: 谁用过ugopen设置过加工坐标系吗? [打印本页]

作者: zaixiang    时间: 2005-11-24 20:26
标题: 谁用过ugopen设置过加工坐标系吗?
现在想通过程序来设置加工坐标系。可没弄成功。哪位朋友帮个忙吧
作者: pzytony    时间: 2005-11-25 10:45
我做过加工的开发,也曾经想设置加工坐标系,如隐藏等,但是没有找到相应的API
作者: yang001    时间: 2005-11-25 17:52
UF_PARAM_set_tag_value (tag_t param_tag, UF_PARAM_MCS, tag_t value );

厉害!


作者: zaixiang    时间: 2005-11-26 00:10
弄了一天。ok了。下面是代码。共享一下。或许以后有人用得着。
static void set_wcs_for_setup(Setup &setup)
{
    double csys[9],x_axis[3],y_axis[3],origin[3];
    tag_t mx,wcs,geomTag,setupTag,geomRootTag;
        char reason[UF_NCGROUP_MAX_REASON_LEN+1];
        logical answer;

        origin[0] = setup.origin.getX();
        origin[1] = setup.origin.getY();
        origin[2] = setup.origin.getZ();
        x_axis[0] = setup.x.getX()-origin[0];
        x_axis[1] = setup.x.getY()-origin[1];
        x_axis[2] = setup.x.getZ()-origin[2];
        y_axis[0] = setup.y.getX()-origin[0];
        y_axis[1] = setup.y.getY()-origin[1];
        y_axis[2] = setup.y.getZ()-origin[2];

    UF_MTX3_initialize(x_axis, y_axis, csys);
    UF_CSYS_create_matrix(csys, &mx);
    UF_CSYS_create_csys(origin, mx, &wcs);
    UF_CSYS_set_wcs(wcs);

    char* type = const_cast<char*>(setup.type.c_str());
    char* subType = const_cast<char*>(setup.subType.c_str());
            
    UF_NCGEOM_create(type, subType, &geomTag);
    UF_OBJ_set_name(geomTag, setup.name.c_str());
        UF_SETUP_ask_setup(&setupTag);
    UF_SETUP_ask_geom_root(setupTag, &geomRootTag);
            
        UF_NCGROUP_can_accept_member(geomRootTag, geomTag, &answer, reason);        
    if(answer == TRUE)
                UF_NCGROUP_accept_member(geomRootTag, geomTag);
       
        UF_PARAM_set_tag_value(geomTag, UF_PARAM_MCS, wcs);
}




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