CAD lisp程序注释解析

程序如下,用来绘制给定点之间的高压线(defunc:try(/p)(setqp(getpoint"frompoint:"))(command"PLINE")(whilep... 程序如下,用来绘制给定点之间的高压线
(defun c:try (/ p)
(setq p (getpoint "from point: "))

(command "PLINE")

(while p

(command p)

(setq p (getpoint "to point: "))

)

(command)

)
展开
 我来答
正三俗帐篷屋
2014-05-07 · TA获得超过513个赞
知道小有建树答主
回答量:319
采纳率:83%
帮助的人:69.4万
展开全部
(defun c:try( / p);定义命令行命令“try”,定义局部变量“p”
(setq p (getpoint "from point: "));利用交互获得一个点,将该点坐标存入变量“p”当中

(command "PLINE");利用命令行启动“PLINE”多段线命令,

(while p;循环开始,当p不为空(即交互时一直给出下一点)时,无限循环。

(command p);将p的值(用户给出或选定的坐标点)输入至命令行,做为“PLINE”命令的参数。

(setq p (getpoint "to point: "));获取下一点坐标,重新存入变量p中

)
(command);等同于按下空格或回车键,用于结束“PLINE”命令

)
更多追问追答
追问

能修改命令,把多线换成这样的

追答
这个要自定义线型,之后再用lisp改线型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
AiPPT
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
百度网友3217e25
推荐于2016-03-20 · TA获得超过904个赞
知道小有建树答主
回答量:279
采纳率:0%
帮助的人:73万
展开全部
(defun c:try (/ p) ;; 定义命令 try 其中有一个参数p
(setq p (getpoint "from point: ")) ;;获得p值,根据一个提示 from point: 用户点击位置 获得点 p(包含坐标值)
(command "PLINE") ;; 调用命令 PLINE ,画线命令
(while p ;;循环语句,p 点不为空,即每次都点击一个位置点
(command p) ;;PLINE命令后的一个点,即画线命令后指定一个点进行画线
(setq p (getpoint "to point: ")) ;; 提示信息=to point: ,提醒用户选取画线到达点
)
(command);; 空命令退出
)
;;此lisp程序是注册一个命令try,实现根据用户连续点击坐标画线的功能,直到用户不再点击为止
更多追问追答
追问

能修改命令,把多线换成这样的

追答
这个线型符号在地形图上叫高压输电线,不是CAD自带的符号或线型,在所有的地形图编绘平台上都有这个符号或者线型,一般CASS或则其他自己基于CAD二次开发的平台上都是利用线和符号来绘制的,其分配为箭头和圆圈为一个块参照,箭头之间的连线为一个多段线,利用定制命令生成这个线型,如果已经定义了绘制命令,可以讲上述代码中的
(command "PLINE") ;; 调用命令 PLINE ,画线命令

PLINE 换为定制命令 ,但是实际操作中并不这样,一般定制命令都能直接绘制符号和线。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zxg_zyr
推荐于2016-06-01 · 知道合伙人互联网行家
zxg_zyr
知道合伙人互联网行家
采纳数:1368 获赞数:7048
1982年1月毕业于北京钢铁学院,金属压力加工学士学位,长期从事CAD设计工作至今,能应用Autolisp语言编程。

向TA提问 私信TA
展开全部
  在AutoCAD中,有可以编程的工具语言AutoLISP。使用CAD的菜单“工具/AutoLISP/Visual AutoLISP编辑器”,可以使用AutoCAD自带的AutoLISP应用程序插件开发环境。在此开发界面中,对于每一行的程序代码,均可以以“;”分隔写上注释信息文字,以便提示开发者(每句)程序的作用、条件等,以备编制过程中调试、日后理解、借用复制、或改进修订之用。
  如下例所示,是由三个语句组成的获取一个图元的点对数据表的程序段:
  (setq a (entsel "\n请点取一个图元:")) ;从CAD屏幕上拾取一个需要观察其点对表的图元。
  (setq b (car a)) ;获得了实体的图元名。
  (setq c (entget b)) ;获得了该图元的点对表。
  无论是在程序以.lsp直接运行时的临时编译过程中,还是预先进行编译的.vlx等文件中,执行的机器码中,均不包含这些注释文字信息,因此注释的存在及多少,不会影响程序的运行速度,也不会影响对内存的占用量。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式