用CAD里的LISP画图,题目如图片,编写一程序,可在任意位置任意方向绘制指定大小的指北针。

用CAD里的LISP画图,题目如图片,编写一程序,可在任意位置任意方向绘制指定大小的指北针。,第1张

写了一个,图如下:

autolisp代码如下:

(defun c:tes ( / &ang1 &ang2 &dis1 &ent1 &kw1 &p1 &p2 &p3 &p4 &p5 &pt1 &pt2 &r1 &r2 x)

 (setvar "cmdecho" 0)

 (setvar "blipmode" 0)

 (if (and (setq &p1 (getpoint "\n请指定圆心"))

          (setq &r1 (getdist &p1 "\n请输入圆半径"))

     )

  (progn

   (setq &r2 ( &r1 2))

   (entmake (list '(0  "CIRCLE") (cons 10 &p1) (cons 40 &r1)))

   (setq &ent1 (entlast) &kw1 (ssadd) &kw1 (ssadd &ent1 &kw1))

   (setq &p5 (cadr (grread t)))

   (if (= (distance &p1 &p5) 0) (setq &ang1 0) (setq &ang1 (angle &p1 &p5)) )

   (setq &p2 (polar &p1 &ang1 &r2) &p3 (polar &p1 (+ &ang1 ( pi 08)) &r2) &p4 (polar &p1 (- &ang1 ( pi 08)) &r2))

   (entmake (list '(0  "LWPOLYLINE") '(100  "AcDbEntity") '(100  "AcDbPolyline") (cons 90 3) '(70  1) (cons 10 &p1) (cons 10 &p2) (cons 10 &p3)))

   (setq &ang2 (angle &p2 &p4) &pt1 (polar &p2 &ang2 &r2) &dis1 (distance &p1 &pt1) &pt1 (mapcar '(lambda (x) ( x 05)) (mapcar '+ &p1 &pt1)))

   (setq &pt2 (polar &p4 &ang2 ( &r2 -1)) &pt2 (mapcar '(lambda (x) ( x 05)) (mapcar '+ &p1 &pt2)))

   (entmake (list '(0  "LWPOLYLINE") '(100  "AcDbEntity") '(100  "AcDbPolyline") (cons 90 4) (cons 10 &p2) '(40  00) (cons 41 &dis1) (cons 10 &pt1)(cons 10 &pt2) (cons 40 &dis1) '(41  00) (cons 10 &p4)))

   (setq &p4 (polar &p1 &ang1 ( &r2 -1)) &ang2 (+ &ang1 ( pi 05)))

   (entmake (list '(0  "TEXT") (cons 1 "N") (cons 10 &p4) (cons 40 ( &r1 08)) '(41  06) (cons 50 &ang2) '(72  4) (cons 11 &p4)))

   (while (setq &ent1 (entnext &ent1)) (setq &kw1 (ssadd &ent1 &kw1)) )

   (command "ROTATE" &kw1 "" &p1 "R" &p1 &p2)

  )

 )

 (princ)

)

*** 作步骤:

1、运用了pyautocad库进行AutoCAD的自动化 *** 作,pyautocad是一款功能非常强大的AutoCAD *** 作处理库,可以实现Python自动绘图、CAD图像对象读取、对象属性修改等 *** 作。

2、如果此时你的计算机上未打开AutoCAD软件,在运行该代码时会自动打开AutoCAD并开始绘图;如果已经打开了AutoCAD软件,则在运行该代码时会默认在已打开的图上进行绘图。

3、将CAD图中,所有文本中的“Hi”字符串替换为“OK”。

4、就可以正常使用用python编辑CAD图形进行工作了。

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆 于1990 年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。

Windows

1、 执行以下 *** 作之一:

1)、依次单击“管理”选项卡 “自定义”面板 “编辑别名”(d出型按钮)“编辑别名”。

查找

2)、在命令提示下,输入 _ai_editcustfile,然后按 Enter 键。然后输入 acadpgp (AutoCAD) 或 acadltpgp (AutoCAD LT) 并按 Enter 键。

注: 也可以通过启动“Windows 资源管理器”或“文件资源管理器”并浏览到您的用户文件夹,然后双击 “Application Data”或 “AppData”文件夹打开默认的 PGP 文件。继续浏览到 Roaming\Autodesk\<产品名>\<版本>\<语言>\Support。双击 acadpgp(或适用于 AutoCAD LT 的 acadltpgp)来编辑该文件。如果提示您选择要使用的应用程序,请选择“记事本”。

2、在文字编辑器中,将新命令别名添加到文件底部。完成所需编辑后,保存 PGP 文件。

3、在 AutoCAD 或基于 AutoCAD 的产品中,在命令提示下,输入 reinit,然后按 Enter 键。

4、在“重新初始化”对话框中,单击 PGP 文件。单击“确定”。

5、测试您的新命令别名,并根据需要编辑 PGP 文件。

Mac OS

1、依次单击“工具”菜单 “自定义”“编辑命令别名 (PGP)”。(ALIASEDIT 命令)

2、 请执行以下任一 *** 作:

1)、单击 添加别名。

2)、 单击 删除别名。

3)、 选择一个别名,单击鼠标右键,然后选择“编辑”以更改现有别名。

4)、 单击“加载”加载旧 pgp 文件以将自定义别名添加到当前列表中。

5)、  如果要将文件复制到其他计算机,则单击“在查找器中显示”以找到 acaduserpgp 文件。

3、 单击“应用”以应用更改并继续进行更改,或单击“确定”以应用更改并退出对话框。

注: 对命令别名所做的更改将保存到 acaduserpgp 文件(或 AutoCAD LT 的 acadltuserpgp 文件)。

以上就是关于用CAD里的LISP画图,题目如图片,编写一程序,可在任意位置任意方向绘制指定大小的指北针。全部的内容,包括:用CAD里的LISP画图,题目如图片,编写一程序,可在任意位置任意方向绘制指定大小的指北针。、用python编辑CAD图形算量、在CAD中编辑程序参数 (PGP) 文件的步骤等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10115486.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存