乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 35|回复: 9

[编程交流] 我如何开始这个Lisp程序?

[复制链接]

51

主题

481

帖子

457

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
262
发表于 2022-7-6 11:55:32 | 显示全部楼层 |阅读模式
创建此例程的基准是什么
 
添加尺寸的lisp命令是什么
 
谢谢
125533p8zhbh5b8jlky0yy.png
回复

使用道具 举报

CAB

29

主题

781

帖子

430

银币

中流砥柱

Rank: 25

铜币
526
发表于 2022-7-6 12:04:54 | 显示全部楼层
可以从使用ACAD命令的简单LISP开始。
  1. (defun c:test(/ p1 p2 p3 p4 p5)
  2. (setq p1 (getpoint "\nPick Center point."))
  3. (setq p2 (getpoint "\nPick Corner point."))
  4. (setq p3 (list (max (car p1)(car p2))(max (cadr p1)(cadr p2))))
  5. (setq p4 (list (min (car p1)(car p2))(max (cadr p1)(cadr p2))))
  6. (setq p5 (list (min (car p1)(car p2))(min (cadr p1)(cadr p2))))
  7. (setq p6 (list (- (min (car p3)(car p4)) 400)(+ 400 (max (cadr p4)(cadr p5)))))
  8. (command "_.dimlinear" "_non" p3 "_non" p4 "_non" (polar p3 (/ pi 2.) 400) )
  9. (command "_.dimlinear" "_non" p4 "_non" p5 "_non" (polar p5 pi 400) )
  10. (entmakex (list (cons 0 "TEXT") ;***
  11.                  (cons 1 "My Text") ;* the string
  12.                  (cons 40 (getvar "textsize")) ;* Text height
  13.                  (cons 10 p6)))
  14. (princ)
  15. )
回复

使用道具 举报

51

主题

481

帖子

457

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
262
发表于 2022-7-6 12:11:21 | 显示全部楼层
Thanx驾驶室
还有一种方法是在rec(或任何形状)内部选择一个点,然后在外部选择一个点,并使用IF运行所示的四种情况之一
重点是如何比较这两点,以确定将运行哪种情况。
这是我的想法,使用-boundary命令创建一条Pline,然后找到Pline顶点的最大X和Y
 
然后完成例行程序
 
 
但我在这一点上停下来创建边界
该命令不接受p1
 
这是正确的方法还是有更好的方法?
125535akkz666kza5l857e.png
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 12:16:01 | 显示全部楼层
您正在寻找的可能示例:
http://web2.airmail.net/terrycad/LISP/DPL.lsp
回复

使用道具 举报

51

主题

481

帖子

457

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
262
发表于 2022-7-6 12:24:14 | 显示全部楼层
这是一个很好的惯例,但我不知道如何通过,并得到我想要的点。
 
我是新手,这是我学习lisp的第一步。
回复

使用道具 举报

13

主题

75

帖子

62

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
65
发表于 2022-7-6 12:29:32 | 显示全部楼层
“entmake”和“entmakex”有什么区别?
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 12:40:01 | 显示全部楼层
 
entmakex将返回新创建的实体名称-请在Visual LISP编辑器帮助文件中进行检查
回复

使用道具 举报

51

主题

481

帖子

457

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
262
发表于 2022-7-6 12:47:36 | 显示全部楼层
这有什么问题吗
不接受p1
此错误
回复

使用道具 举报

41

主题

301

帖子

265

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
209
发表于 2022-7-6 12:54:39 | 显示全部楼层
首先想到的是
  1. (Command "-boundary" p1 "")
回复

使用道具 举报

CAB

29

主题

781

帖子

430

银币

中流砥柱

Rank: 25

铜币
526
发表于 2022-7-6 13:00:58 | 显示全部楼层
是的,引号中的任何内容都是字符串,该命令正在查找点列表。
 
另一种选择:
  1. (command ".boundary" "A" "I" "Y" "O" "P" "" p1 "")
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-5 10:38 , Processed in 0.336112 second(s), 75 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表