明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2105|回复: 6

AUTOlisp开发CAD转战VBA开发CAD第四天

[复制链接]
发表于 2018-10-26 15:34:09 | 显示全部楼层 |阅读模式
本帖最后由 水吉空 于 2018-10-26 15:36 编辑

选择圆变半径

Public Sub by()

'选择圆半径变为原来的2倍

On Error Resume Next '出现错误接着往下走,但选择为空时

Dim ent As AcadEntity

Dim pt As Variant

ThisDrawing.Utility.GetEntity ent, pt, "请选择对象" '交互选择返回的对象就是定义的那个变量

If ent.ObjectName = "AcDbCircle" Then '判断选择的是不是圆

ent.Radius = ent.Radius * 2

Else

MsgBox ("您选择的不是圆")

End If

End Sub


(defun c:tt ()

        (vl-load-com)

        (defun *error* (msg)

                (alert "您没有选择到东西哦,请重新选择:")

                (princ msg)

                (princ)

        );错误函数没有继续往下走的功能,只有提示错误功能

        (setq ent (Vlax-Ename->Vla-Object (car (entsel "请选择对象"))))

        (if (= (Vlax-Get ent 'ObjectName ) "AcDbCircle")

                (Vlax-Put-Property ent 'Radius (* (Vlax-Get ent 'Radius ) 2) )

                (alert "你选择的不是圆")

        )

        (princ)

)

======================= 水吉空出品============================

                                           微信公众号:通信工程与CAD

                                


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2018-12-2 19:57:23 | 显示全部楼层
挺好,请继续。
发表于 2018-12-4 17:02:11 | 显示全部楼层
VL和VBA用的是相同的方法
 楼主| 发表于 2018-12-5 11:03:49 | 显示全部楼层
wuyunpeng888 发表于 2018-12-4 17:02
VL和VBA用的是相同的方法

是的,VL基本上都是用了vba的属性和方法
发表于 2019-5-10 14:37:11 | 显示全部楼层
看了你的贴我对转战vlisp有点信心了哈哈哈
发表于 2022-9-26 20:11:05 来自手机 | 显示全部楼层
能不能写一个 调用 cad 命令 move. 移动选择题
发表于 2022-9-26 20:12:23 来自手机 | 显示全部楼层
能不能写一个 调用 cad 命令 move. 移动选择集(ssget
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 04:06 , Processed in 0.156484 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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