明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1947|回复: 7

使用SendCommand方法时怎么控制选择内容?

[复制链接]
发表于 2003-10-10 20:38:00 | 显示全部楼层 |阅读模式
在VBA二次开发中遇到如下问题:采用SendCommand方法向命令栏发送命令,该命令下一步要求选择一个实体,选择玩实体后选择曲面,怎么发送?我的程序如下:acadApp.ActiveDocument.SendCommand "_amsolcut" & vbCr & "SolidObj1" & vbCr & "surf",其中amsolcut命令为曲面切割AutoCAD命令,该命令要求选择一个实体,然后选择一个曲面,可以更改切割方向。怎么实现该命令?我发送amsolcut命令成功,但是发送实体和曲面均告失败,请各位高手指教,多谢多谢。
发表于 2003-10-10 20:57:00 | 显示全部楼层
SendCommand传递的对象是Lisp中的实体,而不是VBA的实体,这一点两者是不一样的。因而必须使用Lisp的函数Handent来转化对象。
如:"SolidObj1"必须使用"(Handent """ & SolidObj1.Handle & """)"来代替。
 楼主| 发表于 2003-10-10 21:06:00 | 显示全部楼层
多谢版主指教,但是handent 后面是该实体在AutoCAD中的句柄,而不是VBA中定义的变量,怎么获得句柄,SolidObj1.Handle能获得句柄么?
发表于 2003-10-10 21:10:00 | 显示全部楼层
在VBA中,都是使用Handle属性来返回某一实体的句柄。
 楼主| 发表于 2003-10-10 21:21:00 | 显示全部楼层
Surf是建立的NURBS曲面,不是实体,怎么得到句柄?从AutoCAD中能够看到它的句柄,在VBA中没有这个属性,这个怎么办?
 楼主| 发表于 2003-10-10 21:31:00 | 显示全部楼层
CreateSurface方法建立的实体是什么实体?3Dface还是其它实体?mapp.ActiveDocument.Utility.CreateSurface bndSurf, bounds 该语句产生了一个曲面,怎么获得该曲面的句柄?
发表于 2003-10-10 22:05:00 | 显示全部楼层
这个是不是MDT中的对象?
没有使用过这套软件,看看它的帮助文档吧。
 楼主| 发表于 2003-10-11 09:01:00 | 显示全部楼层
是的,MDT中的对象。它的VBA开发帮助文档非常少,据说经销商那里有,昨天和经销商联系了一下,他说有的,可是必须购买正版的,我现在用的就是正版的,不过不是从那个经销商那里得到的,他不给开发文档。必须在他那里进行软件升级。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 12:50 , Processed in 0.181405 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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