版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013725001/article/details/91040297
主要用到函数说明:
_DMxDrawX::SendStringToExecuteFun
把命令当着函数执行,可以传参数,详细说明如下:
参数 |
说明 |
IDispatch* pParam |
命令参数,IMxDrawResbuf对象 |
pszExecute |
命令名 |
c#代码实现如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
MxDrawEntity ent1 = (MxDrawEntity)axMxDrawX1.GetEntity( "曲线1" ); if (ent1 == null ) return ; MxDrawEntity ent2 = (MxDrawEntity)axMxDrawX1.GetEntity( "曲线2" ); if (ent2 == null ) return ; MxDrawResbuf param = new MxDrawResbuf(); // 曲线1 id. param.AddObjectId(ent1.ObjectID); // 曲线2 id. param.AddObjectId(ent2.ObjectID); // 导角半径. param.AddDoubleEx(10, 5001); // 调用导角命令, axMxDrawX1.SendStringToExecuteFun( "Mx_Fillet" , param); MxDrawResbuf ret = (MxDrawResbuf)axMxDrawX1.Cal( "Mx_GetRetArgs" ); if (ret.Count > 1) { // 导角成功. axMxDrawX1.TwinkeEnt(ret.AtObjectId(1)); } |