简介:
查找一对对象之间的最小距离,比UF_MODL_ask_minimum_dist多一个输出参数。
代码:
#include "me.hpp"
double getMinimumDis2(tag_t tagObj1, tag_t tagObj2)
{
double douPointOnObj1[3] = { 0 };//对象1上的点
double douPointOnObj2[3] = { 0 };//对象2上的点
double douDis = 0.0;
double douAccuracy = 0.0; //如果是其中一个或者两个是小平面体,则此参数代表公差,否则等于0
UF_MODL_ask_minimum_dist_2(tagObj1, tagObj2, 0, NULL, 0, NULL, &douDis, douPointOnObj1, douPointOnObj2,&douAccuracy);
return douDis; //两个对象的最近距离
}
extern DllExport void ufusr(char* param, int* returnCode, int rlen)
{
UF_initialize();
tag_t tagSelectedObj1 = NULL_TAG;
tag_t tagSelectedObj2 = NULL_TAG;
dialogSelectObject(tagSelectedObj1);
dialogSelectObject(tagSelectedObj2);
double douDis = getMinimumDis2(tagSelectedObj1, tagSelectedObj2);
print("douDis = %f\n", douDis);
UF_terminate();
}
extern int ufusr_ask_unload(void)
{
return (UF_UNLOAD_IMMEDIATELY);
}