www.mxdraw.com
|
与用户互在图面上得到一个矩形框
static BOOL Mx_GetCorner(IN DOUBLE dX1, IN DOUBLE IN dY1, DOUBLE IN dZ1, IN LPCTSTR pszPrompt, OUT DOUBLE dX2, OUT DOUBLE OUT dY2, DOUBLE OUT dZ2);
参数 |
说明 |
IN DOUBLE dX1 |
矩形框的左下角位置X值 |
IN DOUBLE IN dY1 |
矩形框的左下角位置Y值 |
DOUBLE IN dZ1 |
矩形框的左下角位置Z值 |
IN LPCTSTR pszPrompt |
命令行提示,可以为空 |
OUT DOUBLE dX2 |
返回得到的点X值 |
OUT DOUBLE OUT dY2 |
返回得到的点Y值 |
DOUBLE OUT dZ2 |
返回得到的点Z值 |
成功返回true.,失败返回拖放函数返回的状态,通过pRet->AtLong(1)得到。
例如: C#代码
MxDrawUtility mxUtility = new MxDrawUtility(); MxDrawPoint pt = (MxDrawPoint)(mxUtility.GetPoint(null,"n 输入剪切矩形框左下角点:")); if (pt == null) { MessageBox.Show("用户取消.."); return; } MxDrawResbuf param = new MxDrawResbuf(); param.AddDouble(pt.x, -10); param.AddDouble(pt.y, -10); MxDrawResbuf retParam = (MxDrawResbuf)axMxDrawX1.CallEx("Mx_GetCorner", param); if(retParam.AtString(0) == "Ok") { // 成功 param2.AddDouble(retParam.AtDouble(1), -10); param2.AddDouble(retParam.AtDouble(2), -10); }
例如: VB代码
Set mxUtility = New MxDrawXLib.MxDrawUtility Dim getPt As MxDrawXLib.MxDrawPoint Set getPt = mxUtility.GetPoint(, Chr(13) + Chr(10) + "输入矩形框左下角点:") If (getPt Is Nothing) Then Exit Sub End If Set param = New MxDrawXLib.MxDrawResbuf param.AddDouble getPt.x, -10 param.AddDouble getPt.y, -10 Set retParam = MxDrawX1.CallEx("Mx_GetCorner", param) If retParam.AtString(0) = "Ok" Then Set param2 = New MxDrawXLib.MxDrawResbuf param2.AddDouble retParam.AtDouble(1), -10 param2.AddDouble retParam.AtDouble(2), -10 param2.AddDouble getPt.x, -10 param2.AddDouble getPt.y, -10 param2.AddString "c:11111.dwg", -10 MxDrawX1.CallEx "ExApp_CutDwg", param2 End If