乐筑天下

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

[编程交流] 如何拉伸物体

[复制链接]

1

主题

6

帖子

5

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 14:22:44 | 显示全部楼层 |阅读模式
我写了一个小的lisp,它将插入一端带有90度管件的管道。该对象是从第三方程序创建的ObjectARX。
 
基本上我想把管道从PT1拉伸到PT2。有什么wa可以这样做吗?我尝试了entlast,它选择了管道,但当我尝试使用“拉伸”命令时,autocad希望通过将其围起来来选择该项目。
 
我没有找到任何教程告诉我如何在autolisp中使用夹点进行操作。请告诉我,我只是看得不够久。我认为autodesk不允许您在lisp中使用夹点。
 
瑞克
回复

使用道具 举报

0

主题

269

帖子

279

银币

限制会员

铜币
-4
发表于 2022-7-6 14:32:54 | 显示全部楼层
我不知道您是否真的尝试在lisp中使用“stretch”命令。将信息馈送到(命令“stretch”“w”pta ptb等…)您必须确定需要哪个窗口来夹持管道末端。
回复

使用道具 举报

1

主题

6

帖子

5

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 14:36:38 | 显示全部楼层
是的,我尝试在lisp中使用“拉伸”命令,(entlast)高亮显示管道,就像我选择了它一样,但它随后表示需要使用围栏窗口来选择要拉伸的对象。
 
我需要做的是让它抓取之前选择的PT1并将其拉伸到之前选择的PT2,而不必在窗口中对其进行围栏。
回复

使用道具 举报

0

主题

269

帖子

279

银币

限制会员

铜币
-4
发表于 2022-7-6 14:42:20 | 显示全部楼层
如果您知道要拉伸管道末端的位置(例如pt1),并且pt2和pt3在末端/pt1周围定义了一个窗口,而pt4是要将其拉伸到的位置。。。。。。
 
(命令“stretch”“l”“w”pt2 pt3”“pt1 pt4)
回复

使用道具 举报

1

主题

6

帖子

5

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 14:46:12 | 显示全部楼层
不确定这是否可行,因为PT1与其他物体相交,我需要确保绝对没有机会移动。
 
我有一个发球台,PT1是发球台的中心点。PT2是三通的点,管道末端需要在此处结束。
 
当我插入块时,管道从PT1到另一端(6“)的90ELL有一定的长度。我现在需要将管道的一端从PT1移动到PT2,这是三通的接头。
 
由于我插入管道的管件并不总是三通,而且所有管件都有不同的接头,因此我必须从中心开始,找出如何将管道移动到需要PT2的位置。
 
PT1和PT2总是已知的,因为系统会提示用户同时输入这两个参数,因此lisp可以获得管道需要插入的起点和方向。
 
到目前为止,从夹点拉伸是唯一可行的方法,除非我可以像你说的那样使用窗口进行选择,然后取消选择除管道之外的所有内容,管道仍然是最后一个。
回复

使用道具 举报

1

主题

6

帖子

5

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 14:54:22 | 显示全部楼层
好的,我可以选择对象并使用(sssetfirst nil(ssget“_p”))打开夹点
但现在我不知道如何选择某个夹点(即PT1)并将其拖动到PT2。
 
有人能帮我做这个吗?
回复

使用道具 举报

0

主题

269

帖子

279

银币

限制会员

铜币
-4
发表于 2022-7-6 14:57:59 | 显示全部楼层
滑溜的
我发布的方法适用于基本的AutoCAD对象,不知道它是否可以处理代理对象。拉伸命令不需要启用夹点。以下操作将最后绘制的线的端点从P1移动到P2:
 
(命令“stretch”“l”“w”p1 p1”“p1 p2)
回复

使用道具 举报

2

主题

5

帖子

4

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 15:02:14 | 显示全部楼层
是的,CarlB,但是,您如何确保仅拉伸要拉伸的对象,即创建的最后一个对象?
如果您有两个共享PT1的对象呢?
除了创建的最后一个对象之外,您可以取消选择所有对象吗?
如果Entetie与ENTLAST名称不匹配,那么将从选择集中删除Entetie的循环呢?这将为您留下一个仅包含实体(我们想要的)的选择集,并且仍然允许交叉窗口选择。
回复

使用道具 举报

0

主题

269

帖子

279

银币

限制会员

铜币
-4
发表于 2022-7-6 15:08:01 | 显示全部楼层
我使用的方法只选择最后一个项目“l”,然后在精确的端点处使用窗口(非交叉)选择,因此它不选择任何其他对象,只标识要拉伸的端点。只有在端点处有点对象时,它才会被拉伸移动。
 
如果您仍然需要删除项目,请使用以下方法:
 
(命令“拉伸”“c”PtA Ptb“r”all”“a”“l”“Pt1 Pt2)
回复

使用道具 举报

1

主题

6

帖子

5

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 15:14:03 | 显示全部楼层
 
没错,这就是困境所在。我有两个共享PT1的实体,需要选择要拉伸的对象,或者取消选择除对象之外的所有对象。
 
我成功地选择了对象,并打开了夹点,但不知道如何在PT1处激活夹点并将其移动到PT2。
 
顺便说一句,谢谢你的帮助。在这里提问之前,我确实试着找出这些答案。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-5 03:09 , Processed in 0.562277 second(s), 72 queries .

© 2020-2025 乐筑天下

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