|
本人在给予Creo3.0编写二次开发程序,想通过调整两坐标系X坐标参数值来测量对应两坐标系距离,但是两坐标系距离变化了,通过ProGeomitemDistanceEval()测量的距离值只显示参数变化前的距离,请论坛内大师帮忙看一下:
status=ProSelect("csys",2,NULL,NULL,NULL,NULL,&sel,&n_sel); //通过鼠标选取2个坐标系
UserTestSetParamValue(100); //通过调整参数设置两个坐标系X方向差值为100
ProWindowCurrentGet(¤t_window);
ProWindowRepaint(current_window); //重绘,坐标系位置变化了
ProWindowActivate(current_window);
ProGeomitemDistanceEval(sel[0],sel[1],&distance1); //测量两坐标系X方向差值为100时,两坐标距离
str.Format(_T("两坐标系间距离=%f"),distance1);
AfxMessageBox(str); //设置两个坐标系X方向差值为200
UserTestSetParamValue(200);
ProWindowCurrentGet(¤t_window);
ProWindowRepaint(current_window); //重绘,坐标系位置变化了
ProWindowActivate(current_window);
ProGeomitemDistanceEval(sel[0],sel[1],&distance2); //通过调整参数设置两坐标系X方向差值为200时,两坐标距离
str.Format(_T("两坐标系间距离=%f"),distance2);
AfxMessageBox(str);
以上程序两次显示距离值是一样的。 |
|