AutoLISP利用DCL对话框设置系统变量

一个利用DCL设置CAD系统变量的例子,类似的利用这个可以设置其它系统变量。

DCL对话框代码如下。

dia5a:dialog {
    label = "系统变量设置" ;
    :edit_box {
        edit_width = 6 ;
        key = "edit_p" ;
        label = "PlineWid" ;
    }
    :edit_box {
        edit_width = 6 ;
        key = "edit_f" ;
        label = "FilletRad" ;
    }
    :edit_box {
        edit_width = 6 ;
        key = "edit_t" ;
        label = "TextSize" ;
    }
    :edit_box {
        edit_width = 6 ;
        key = "edit_s" ;
        label = "SaveTime" ;
    }
    ok_cancel;
}

LSP文件代码如下。

(defun c:dia5a ()
    (setvar "cmdecho" 0)
    (dcl_dia5a)
    (prin1)
)
(defun dcl_dia5a ()
    (setq dcl_id (load_dialog "dia5a"))
    (new_dialog "dia5a" dcl_id)
    (set_tile "edit_p" (rtos (getvar "plinewid")))
    (set_tile "edit_f" (rtos (getvar "filletrad")))
    (set_tile "edit_t" (rtos (getvar "textsize")))
    (set_tile "edit_s" (rtos (getvar "savetime")))
    (action_tile "accept" "(ok_dia5a) (done_dialog 1)")
    (start_dialog)
)
(defun ok_dia5a    ()
    (setvar "plinewid" (atof (get_tile "edit_p")))
    (setvar "filletrad" (atof (get_tile "edit_f")))
    (setvar "textsize" (atof (get_tile "edit_t")))
    (setvar "savetime" (atof (get_tile "edit_s")))
)

代码完。

先将DCL和LSP文件路径设置为AutoCAD自动搜索路径,才可以加载成功。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Autolisp是一种用于Autodesk AutoCAD软件的编程语言,它可以让用户自定义命令和函数来增强AutoCAD的功能。而DCL(Dialog Control Language)是一种用于创建用户界面的Autolisp语言扩展。 《Autolisp DCL基础篇》是一本介绍AutolispDCL基础知识的PDF文档。该文档主要包括AutolispDCL的语法、数据类型、运算符、条件语句、循环语句等基本概念和用法的讲解。 在Autolisp基础部分,读者将了解如何定义和使用变量、列表、字符串,以及如何进行算术和逻辑运算。读者还将学习如何使用条件语句(如if、cond)和循环语句(如while、foreach)来控制程序的执行流程,以及如何定义和调用函数。 在DCL基础部分,读者将学习如何使用DCL语言创建自定义对话框DCL对话框是一种通过图形界面来与用户交互的方式,用户可以在对话框中输入参数或选择选项,然后根据用户的输入执行相应的操作。 本文档通过实例演示来帮助读者理解AutolispDCL的基本概念和用法。例如,读者可以学习如何创建一个简单的Autolisp程序,该程序在AutoCAD中绘制一个特定的图形,并通过一个DCL对话框来获取用户设置的参数。 总之,《Autolisp DCL基础篇》是一本适合AutolispDCL初学者的教程,它将帮助读者快速入门并掌握AutolispDCL的基本知识,从而能够自定义程序以更高效地完成AutoCAD设计任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值