johnm1011 发表于 2022-7-5 22:13:05

偏差Autolisp命令

大家好,
我是这个论坛的新手。我正在使用autolisp命令,我遇到了麻烦,需要一些帮助,因此提前感谢您的帮助。关于我试图做什么的简要背景-我在一家建筑公司工作,该公司在地面上安装混凝土桩,然后必须对其进行测量,并根据工程师在施工图中设置的位置检查信息,包括x、y和z轴的移动。我试图编写的命令将通过单击绿色圆圈的中心(工程师建议的位置)和红色圆圈的中心(实际安装桩的位置)来进行计算。然后将这些变量插入多行文字实体。我提出的问题是“参数太多”,我无法找出额外的参数在命令中的位置。
 
这些是我希望这个命令做什么的基础,下面是我最终希望它做什么(一个愿望列表):
 
1-让命令知道“zdev”是正还是负,并在多行文字实体的“zdev”部分添加“高”或“低”。
2-将红色圆圈的中心作为插入点
3-有你在中看到的箭头。dwg文件根据“xdev”和“ydev”是正还是负进行插入。
 
如果有人能在这些问题上为我指出正确的方向,那将是非常棒的。
 
再次感谢,
约翰
 
偏差。lsp
偏差信息。图纸

hmsilva 发表于 2022-7-5 22:18:09

嗨,约翰,欢迎来到CADTutor!
 
 
要注释AUTO/Visuallisp代码,我们必须使用分号,并且您的代码中有一些放错位置的括号。。。
附件是您的代码,修订版,以及我对您的代码的解释。
 
 
希望有帮助
亨里克
偏离LSP
演示。LSP

johnm1011 发表于 2022-7-5 22:22:07

亨里克,
你对我的Lisp程序的修改效果很好。
我尝试了你的版本,但在我按提示选择第一个圆后,命令结束了,我不知道为什么。(如果你能解释一些编码,那就太好了……当我在工作中看到它们时,我会更好地学习这样的东西。
 
我想为我的LISP添加更多功能:
1) 是否可以抑制高程偏差中的负符号。?
2) 当四舍五入到小数点后两位“0.00”时,当高程偏差为零时,是否可以抑制“高/低”?
3) 红色圆圈变量“PT2”的中心能否设置为多行文字实体的插入点?(我正在做的项目需要我运行这个LISP将近800次,这将对插入多行文字有很大帮助。
4) 可以如前附文件所示插入箭头,使其与红色圆圈相对于绿色圆圈移动的方向相关。即左=负/右=正/下=负/上=正。
 
对这些特性的编码有任何见解和指导都会很棒!
 
再次感谢,
约翰

hmsilva 发表于 2022-7-5 22:25:16

嗨,约翰,
我的“演示”应该按预期工作,代码是根据您的“偏差信息”编写的。dwg’和硬编码的dwg图层。
 
代码提示:
 
选择建议的位置圆:>
选择实际位置圆:>
输入桩号:>
 
如果不选择对象或不输入整数,代码将退出。。。
 
尝试“偏差”信息中的代码。请告诉我它是否按预期工作。
 
关于你最后的请求,只有今晚我才能修改你的代码,我不在办公室,没有AutoCAD。
 
 
亨里克

johnm1011 发表于 2022-7-5 22:26:57

亨里克,
我刚刚知道发生了什么。你的Lisp程序效果很好。问题在于,图纸中的圆“绿色是块的一部分,红色是几何空间点”是几何空间点,可以选择一个实体,这样我就可以获得几何空间点的信息,我可以指定红色的圆(这是一个块)作为点样式。也可以将绿色圆圈保持为一个块,并且仍然能够选择必要的圆圈。(更重要的是要画得整洁,“有800个圆圈在周围浮动对我来说是愚蠢的”
 
如果你有多余的一分钟,愿意解释一下你的一些代码,那就太棒了。
 
一如既往地谢谢你!
 
约翰

johnm1011 发表于 2022-7-5 22:31:32

我只是试着把“圆”换成“坐标几何”,但没有成功。有什么想法吗?

hmsilva 发表于 2022-7-5 22:34:37

厕所,
 
 
发布带有一些对象的真实示例dwg。
 
 
亨里克

johnm1011 发表于 2022-7-5 22:38:27

亨里克,
我附上了一个。具有四个几何空间点和一个包含四个绿色圆圈的块的dwg。我正在做的一个小样本。
 
谢谢
约翰
几何空间点和块。图纸

hmsilva 发表于 2022-7-5 22:38:34

好的,约翰,
今晚,我会看看我能做什么。
 
 
亨里克

hmsilva 发表于 2022-7-5 22:44:24

Demo_V1。LSP
 
 
厕所,
 
对所附代码进行了修订,以使用“坐标几何pts和块”。dwg’要求将绿色圆圈作为块。
我确实在代码中添加了一些注释。
 
希望有帮助
亨里克
页: [1] 2
查看完整版本: 偏差Autolisp命令