当前位置: 首页 > news >正文

广州 网站开发 公司专业培训机构

广州 网站开发 公司,专业培训机构,杭州 网站建设公司,美甲网站自适应源码一、概述 NX二次开发中一般都是多个控件的组合,这里我首先对指定方位控件进行说明并结合选择对象控件,具体如下图所示。 二、实现功能获取方位其在选择面上原点的目标 2.1 在initialize_cb()函数中进行初始化,实现对象选择过滤面 //过滤平…

一、概述

         NX二次开发中一般都是多个控件的组合,这里我首先对指定方位控件进行说明并结合选择对象控件,具体如下图所示。

二、实现功能获取方位其在选择面上原点的目标

2.1 在initialize_cb()函数中进行初始化,实现对象选择过滤面

//过滤平面
NXOpen::Selection::SelectionAction action = Selection::SelectionActionClearAndEnableSpecific;
std::vector<NXOpen::Selection::MaskTriple>selectionMask_array(1);//括号内数字:maskArray数组大小(有多少种选择就写多少)//具体用法参考MaskTriple
selectionMask_array[0].Type = UF_solid_type;
selectionMask_array[0].Subtype = UF_solid_face_subtype;
selectionMask_array[0].SolidBodySubtype = UF_UI_SEL_FEATURE_ANY_FACE;NXOpen::BlockStyler::PropertyList *selComponentProps = SelectPoint->GetProperties();//selComp为对象收集器的ID
selComponentProps->SetSelectionFilter("SelectionFilter", action, selectionMask_array);
delete selComponentProps;
selComponentProps = NULL;

2.2在update_cb函数中通过选择面获得面上点击屏幕点将其设置为指定方位控件的原点,并通过输入面的TAG值,获得选择平面X、Y的向量值设置为指定方位控件的X、Y向量。

int NXOpen_EngravedText::update_cb(NXOpen::BlockStyler::UIBlock* block)
{try{if(block == SelectPoint){//---------Enter your code here-----------Point3d pickPoint = SelectPoint->PickPoint();//获得指定面上的点std::vector<TaggedObject*> objects = SelectPoint->GetSelectedObjects();GetxyDirection(objects[0]->Tag(), pickPoint);manippickPoint = manip0->Origin();}else if(block == manip0){//---------Enter your code here-----------}}catch(exception& ex){//---- Enter your exception handling code here -----NXOpen_EngravedText::theUI->NXMessageBox()->Show("Block Styler",         NXOpen::NXMessageBox::DialogTypeError, ex.what());}return 0;
}//通过输入面的TAG值,获得选择平面X、Y的向量值
void GetxyDirection(tag_t object, Point3d pickPoint)
{int faceTpye = 0;UF_MODL_ask_face_type(object, &faceTpye);vector<double> Directi;if (faceTpye == UF_MODL_PLANAR_FACE){int type = 0;double point[3];double dir[3];double box[6];double radius;double rad_data[2];int norm_dir = 0;UF_MODL_ask_face_data(object, &type, point, dir, box, &radius, rad_data, &norm_dir);double mtx[9];UF_MTX3_initialize_z(dir, mtx);manip0->SetOrigin(pickPoint);//指定方位器出现的原点Vector3d xDirection1(mtx[0], mtx[1], mtx[2]);Vector3d yDirection1(mtx[3], mtx[4], mtx[5]);manip0->SetXAxis(xDirection1);manip0->SetYAxis(yDirection1);}
}

2.3打印坐标,在void GetxyDirection(tag_t object, Point3d pickPoint)函数中只需将mtx按照X、Y、Z每个三个值分好分别进行打印即可,这里不提供代码。

http://www.pjxw.cn/news/26417.html

相关文章:

  • 怎么做网站生意sem是什么显微镜
  • 网站全景看图怎么做seo课培训
  • 如何加强网站建设和信息宣传大侠seo外链自动群发工具
  • 建立网站第一步是建立什么百度帐号
  • 不属于企业网站建设基本标准是西安网站建设优化
  • 本地拖拽网站建设什么是口碑营销
  • wordpress个人博客模板下载seo营销是什么意思
  • 汕头市网站建设公司省好多会员app
  • b2b网站推广怎么做网站关键词优化软件
  • vs2013做的网站北京百度关键词优化
  • 宿州网站建设百度认证营销顾问
  • 滕州网站建设制作seo网站关键词优化报价
  • 免费网站你懂我意思正能量软件上海seo顾问推推蛙
  • 转移网站如何转数据库中铁建设集团有限公司
  • tom企业邮箱网站的排名优化怎么做
  • 河北建站公司千峰培训出来好就业吗
  • 高水平的锦州网站建设seo推广代运营
  • 国内优秀的网站设计seo网络优化日常工作内容
  • 网站空间便宜百度一下官网页
  • 做新闻网站怎么赚钱北京seo薪资
  • 英文网站建设图片手机如何建立网站
  • 东铁匠营网站建设百度经验登录入口
  • 哪个网站可以做海报百度搜索大数据查询
  • 村委会网站源码 php360搜索引擎推广
  • 文学网站开发设计报告网站建设方案书模板
  • 泰州做房产的网站数据分析软件哪个最好用
  • 一起装修网官网杭州seo排名
  • 做网站需要哪些参考文献网络营销的渠道有哪些
  • 国外c2c平台seo网站排名厂商定制
  • 企业网上办事大厅seo用什么论坛引流