乐筑天下

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

[编程交流] 需要在线lisp方面的帮助

[复制链接]

37

主题

158

帖子

124

银币

后起之秀

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

铜币
205
发表于 2022-7-6 09:23:08 | 显示全部楼层 |阅读模式
以下是我所拥有的:
 
  1. (defun c:isol (/ ic)
  2. (initget 6)
  3. (if (setq ic (getdist "\nEnter Length: "))
  4.    (command "_.LINE" "" (* ic 0.816496581)))
  5. (princ))

 
我试图创建一个直线命令,它要求一定的长度,并绘制了这条线。但我有一个问题是,允许我点击线的基点,然后选择适当的角度,然后将线绘制到我指定的长度的缩小比例。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 09:32:01 | 显示全部楼层
一个非常有趣的主意,迈克,我真的很喜欢。
 
希望这能满足您的需求。
 
  1. (defun c:test (/ p ang l p1)
  2. (if (setq p (getpoint "\n base point :"))
  3.    (progn
  4.      (while
  5.        (setq Ang (getangle p "\n Next point for Angle :"))
  6.         (setq l (getdist "\n Specify length :"))
  7.         (entmakex (list (cons 0 "LINE")
  8.                         (cons 10 p)
  9.                         (cons 11 (setq p1 (polar p ang l)))
  10.                   )
  11.         )
  12.         (setq p p1)
  13.      )
  14.    )
  15.    (princ)
  16. )
  17. (princ)
  18. )

 
塔瓦特
回复

使用道具 举报

37

主题

158

帖子

124

银币

后起之秀

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

铜币
205
发表于 2022-7-6 09:42:02 | 显示全部楼层
有问题。当我尝试将其加载到appload时。当我尝试使用它时,它只是说未知命令。我确实将命令中的快捷方式更改为test以外的内容。
 
谢谢我用它来绘制等角图。这是从SW(或任何3d视图)到平面视图的比例。我有一个调暗样式设置,调暗比例等于该比例,因此我可以标注iso图纸的尺寸。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 09:49:10 | 显示全部楼层
 
没问题,你可以改变你想要的最好的例程的名称,我也觉得在这里出错,而通过在论坛线程步。
 
当做
回复

使用道具 举报

4

主题

57

帖子

53

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 09:52:44 | 显示全部楼层
合并这两个程序,然后添加一个当前尺寸比例的检查。。。
 
  1. (defun c:isol (/ ic ds p ang p1)
  2. (setq ds (getvar "dimscale"))
  3. (if (setq p (getpoint "\nBase point :"))
  4.    (progn
  5.      (while
  6.        (setq ang (getangle p "\nSelect Angle :"))
  7.        (initget 6)
  8.        (if (setq ic (getdist "\nEnter Length: "))
  9.          (entmakex (list (cons 0 "LINE")
  10.                               (cons 10 p)
  11.                               (cons 11 (setq p (polar p ang (* ic ds))))
  12.                    )
  13.          )
  14.        )
  15.      )
  16.    )
  17. )
  18. (princ)
  19. )

 
:眨眼:
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 09:56:34 | 显示全部楼层
如果(getvar“dimscale”)等于零会怎么样?
 
当做
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 10:06:42 | 显示全部楼层
出于好奇。。。为什么不在模型空间中以1:1(真实比例)绘制线条,并使用图纸空间视口处理缩放?
回复

使用道具 举报

4

主题

57

帖子

53

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:13:33 | 显示全部楼层
 
嗯。。。
 
 
我认为这不是一个问题。但是,错误捕捉可以检查这一点,并在必要时提示用户。
回复

使用道具 举报

37

主题

158

帖子

124

银币

后起之秀

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

铜币
205
发表于 2022-7-6 10:18:06 | 显示全部楼层
提交的两个程序均未使用0.816496581的量表。我想输入一个长度,它会以选定的角度绘制一条按我的数字缩放的线。
回复

使用道具 举报

4

主题

57

帖子

53

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:26:19 | 显示全部楼层
这样行吗?
 
  1. (defun c:isol (/ ic ds p ang p1)
  2. (setq ds [color=red]0.816496581[/color])
  3. (if (setq p (getpoint "\nBase point :"))
  4.    (progn
  5.      (while
  6.        (setq ang (getangle p "\nSelect Angle :"))
  7.        (initget 6)
  8.        (if (setq ic (getdist "\nEnter Length: "))
  9.          (entmakex (list (cons 0 "LINE")
  10.                               (cons 10 p)
  11.                               (cons 11 (setq p (polar p ang (* ic ds))))
  12.                    )
  13.          )
  14.        )
  15.      )
  16.    )
  17. )
  18. (princ)
  19. )

 
然后,可以将ds变量更改为您喜欢的任何值。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-7 03:08 , Processed in 0.367311 second(s), 72 queries .

© 2020-2025 乐筑天下

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