青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 900|回复: 0

[疑难] C++和ufun的混合开发

[复制链接]
发表于 2014-9-17 11:41 | 显示全部楼层 |阅读模式
我用C++建立了一个基准面,然后用ufun函数测量基准面和另一个面之间的距离,测量的结果出错。
8 A' d3 X7 X4 g2 s1 K5 i部分代码如下:
) v1 G1 G& n  b3 O double minDis,acc;
# w9 J0 x/ o1 a" H double ptObj1[3],ptObj2[3];$ N* I1 B) H0 y6 L; a- v$ T! @
char ms[255];; L' c5 k8 v) G" v8 g7 Z9 J+ m
tag_t planerTag=NULL_TAG;//基准面
/ y; S. v( B9 a0 e; Q( b, z tag_t faceTag=fp;//外部传进来的一个面8 |. r2 D6 u" @) x6 y" ^2 B$ ~
Session *theSession = Session::GetSession();
& D+ J: I! ?8 \7 x* E% j1 g9 b Part *workPart(theSession->arts()->Work());# b1 _3 ~$ }9 z+ J# p2 R8 H; r
Part *displayPart(theSession->arts()->Display());" w6 Y/ Z+ x) s# f" K) v4 x( w
   Features::Feature *nullFeature(NULL);
& H6 {- W. `$ M* ]/ i4 Y. I" @  P, J- A   NXOpen::Features:atumPlaneBuilder *plane1=workPart->Features()->CreateDatumPlaneBuilder(nullFeature);4 j+ g8 Z/ ~! J0 p. ^1 f
   plane1->SetFixedDatumPlane(NXOpen::Features:atumPlaneBuilder::FixedType::FixedTypeXy);
' Y! K0 [  t" \  e( E0 i   nullFeature=plane1->CommitFeature();  x5 S& X# v8 O" }$ w' P( p  r
vector<NXOpen::NXObject*> objVec=nullFeature->GetEntities();" n7 Z9 c# _7 A; ^7 Q7 @5 k
   for(vector<NXOpen::NXObject*>::iterator  it=objVec.begin();it!=objVec.end();++it)- l5 A, w/ n! v& p9 o& P
   {
) m/ X6 \, u& P! U- g7 U! G    planerTag=(*it)->GetTag();/ L* x, n1 [- ~+ A. Y/ _9 y
    UF_MODL_ask_minimum_dist_2(planerTag,faceTag,0,NULL,0,NULL,&minDis,ptObj1,ptObj2,&acc);- ^) Y# L  N5 n2 g$ |" G
    sprintf(ms,"%f",minDis);uc1601(ms,1);6 |* `5 q- O% V- X0 e& Y1 W
   }
$ x0 C8 z. y  o) S   plane1->Destroy();6 m1 T" t/ x7 k9 G
求大神指点一下哪里出错了
! r  t6 X% b5 P/ ~9 c
' r- {7 {3 |8 K4 R2 F( u# I
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2025-2-9 06:20 , Processed in 0.046385 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表