乐筑天下

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

[编程交流] 截面标记的Lisp例程

[复制链接]

5

主题

35

帖子

38

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-6 17:22:49 | 显示全部楼层 |阅读模式
请先看所附图片。
 
好了,开始了。我正在尝试创建一个lisp例程来实现这一点。我要做的是从3个街区走出来。
 
第一:顶部箭头和顶部垂直线
第二:带水平线的圆
第三:带底部垂直线的底部箭头
 
我正在使用AutoCAD 2009。因此,这些块将以1:1的比例绘制,但当我阻止它时,它们将成为注释性的。因此,当插入时,例如1:10,它将处于正确的大小。。。(公制刻度)
 
但是,块1和2将位于同一个DWG中,块3将位于第二个DWG中。这是因为我希望1和2清楚地插入到图形中的同一个单词中。
 
这就是我想做的,但这就是我遇到的问题。
 
一旦我选择了第一个点,我希望它像从第一个点开始的正交/极坐标一样使用。这样,在绘制剖面标记时,它将与您选择的2个点对齐。给我带来麻烦的是,如何使其对齐,如何使截面的箭头垂直于任一侧,但你必须选择它们面对的方向。因此,如果您水平绘制剖面,并且希望剖面垂直向上查看,则只需单击u绘制的线的顶部,剖面箭头将朝着该方向。如果我点击向下,我希望箭头朝下。
 
我知道这是可能的,因为我在使用中见过这样的积木。我只是一个初学者在这个lisp例行的东西,所以帮助将不胜感激。或者,如果有人已经做了这样的事情,我可以得到你的编码,这样我就可以看到你是如何做到的。
 
我还复制了我为它所做的一些编码。
 
(defun c:插入secttop块(/layerset)
(setq layerset(getvar“clayer”))
(setvar“clayer”“35”)
(setq scaleset(/1(getvar“cannoscalevalue”))
(setvar“ATTDIA”0)
;最后一行是因为我已经在块中的文字属性,我不想编辑它,现在它将只是进入原样。
(setq ins pt(getpoint“\n选择插入点:”)
(if(=nil ins pt)(setq ins pt(列表0 0)))
 
这是给妈妈的。但我认为插入点有一种更简单的方法。有没有办法命名ins-pt1和ins-pt2?所以我可以得到这些值,然后当我插入块时,我可以说它被插入变量ins-pt1???
 
提前谢谢你的帮助
182253fuivluv9lxbj7u7q.jpg
回复

使用道具 举报

28

主题

130

帖子

126

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
154
发表于 2022-7-6 17:27:39 | 显示全部楼层
过三个街区,我来帮你
回复

使用道具 举报

5

主题

35

帖子

38

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-6 17:31:59 | 显示全部楼层
我会在几分钟后把它们挂起来,只是做最后的润色。
回复

使用道具 举报

5

主题

35

帖子

38

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-6 17:34:56 | 显示全部楼层
我已附上包含块的DWG。所有3个街区都在那里。
 
谢谢你的帮助
截面气泡。图纸
回复

使用道具 举报

0

主题

2

帖子

4

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 17:35:48 | 显示全部楼层
以上是否适用于所有人?
因为我会发现它非常有用
回复

使用道具 举报

15

主题

209

帖子

121

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
163
发表于 2022-7-6 17:40:13 | 显示全部楼层
为什么不是DB?
剖面标注。图纸
回复

使用道具 举报

1

主题

61

帖子

65

银币

初来乍到

Rank: 1

铜币
4
发表于 2022-7-6 17:42:32 | 显示全部楼层
非常酷的动态积木,令人惊叹的是你能用它们做什么,谢谢蒂姆
回复

使用道具 举报

5

主题

35

帖子

38

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-6 17:46:42 | 显示全部楼层
动态块可以做到这一点,但速度不如从cannoscale(注释比例)上运行的按钮快。
 
Russell84这个代码是相对于cannoscale的还是我应该把它放进去?
回复

使用道具 举报

5

主题

35

帖子

38

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-6 17:50:32 | 显示全部楼层
我用了一句话
 
(setq scaleset(/1(getvar“cannoscalevalue”))
 
在lisp中为其他块进行缩放。当我创建块时,我使其具有注释性。
 
或者,有没有可能把这个加进去呢。因此,dimscale是从cannoscale设置的,因此块将具有正确的大小。
 
(setvar“DIMSCALE”(/1.0(getvar“CANNOSCALEVALUE”)))
回复

使用道具 举报

0

主题

2

帖子

4

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 17:52:48 | 显示全部楼层
提姆
喜欢DB易于使用,它已经工作了。
干杯
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-4 15:33 , Processed in 0.543513 second(s), 86 queries .

© 2020-2025 乐筑天下

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