明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: 半听可乐

编程申请:指定图元基点与目标点间距移动物体

  [复制链接]
 楼主| 发表于 2012-8-25 08:18:04 | 显示全部楼层
本帖最后由 半听可乐 于 2012-8-25 09:23 编辑
Andyhon 发表于 2012-8-1 08:54
样本对象导引着思路来建立代码片断....
是以要能涵盖实务所需,用以避免造成状况外 Try again


改程序经过较长时间的使用,发现总有那么些图元移动的时候程序不管用,如本附件中的图,提示       ; 错误: 参数值错误: AcDbCurve 2066526040   请Andyhon进一步完善,这个程序太好用了!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复

使用道具 举报

发表于 2012-8-25 08:54:15 | 显示全部楼层
Command: mfdist
Select objects: Specify opposite corner: 1 found
Select objects:

指定移动基点:
选择目标直线:
输入移动基点与目标直线的距离: 500
Xline Specify a point or [Hor/Ver/Ang/Bisect/Offset]: none
Specify through point: none
Specify through point:
Command: Move
Select objects:   1 found

Select objects: Specify base point or displacement: Specify second point of
displacement or <use first point as displacement>: none
Command:
Command: '_dist Specify first point:  Specify second point:
Distance = 659.83,  Angle in XY Plane = 229.27,  Angle from XY Plane = 0.00
Delta X = -430.55,  Delta Y = -500.00,   Delta Z = 0.00
------------------------------------------
请分别 标示 执行中的互动回应
执行后的结果图 与 想要的正确完成图
回复

使用道具 举报

 楼主| 发表于 2012-8-25 09:24:23 | 显示全部楼层
本帖最后由 半听可乐 于 2012-8-25 09:25 编辑
Andyhon 发表于 2012-8-25 08:54
Command: mfdist
Select objects: Specify opposite corner: 1 found
Select objects:


程序看不懂~~附件已经更新

;;;★VD 定间距移动
;;;by Andyhon  明经社区
;;;---------------------------------------------------------------------------------------------------------------------
(defun C:VD()
   ;; 选择圆 / ...
   (setq ss (ssget))
   ;; 指定移动基点
   (setq pt (GetPoint "\n指定移动基点: "))
   ;; 选择目标直线
   (setq ee (nentsel "\n选择目标直线: ")
         pa (cadr ee)
         pb (osnap pa "mid")
         pa (osnap pb "end")
   )
   ;; 输入移动基点与目标直线的距离1000 / 500 / ...
   (setq dd (getDist "\n输入移动基点与目标直线的距离: "))
   (vl-cmdf "Xline" "none" pa "none" pb "")
   (setq ee (entlast)
         px (vlax-curve-getClosestPointTo ee pt)
         p2 (polar px (angle px pt) dd)
   )
   (vl-cmdf "Move" ss "" pt "none" p2)
   (entdel ee)
   (princ)
)
回复

使用道具 举报

发表于 2012-8-25 09:45:19 | 显示全部楼层
pb (osnap pa "mid")
改成 ==>                 
pb (osnap pa "near")

点评

能简单的说说为什么这样改就可以了吗?  发表于 2012-8-25 10:41

评分

参与人数 1明经币 +1 金钱 +5 收起 理由
半听可乐 + 1 + 5 很给力!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2012-8-25 10:40:45 | 显示全部楼层
Andyhon 发表于 2012-8-25 09:45
pb (osnap pa "mid")
改成 ==>                 
pb (osnap pa "near")

嗯,好了,谢谢!
回复

使用道具 举报

发表于 2012-8-25 10:58:34 | 显示全部楼层
红色块定间距移动出现错误(已更新).dwg

这个图在 Zoom --> E ,  完全可见的情况下,原程序也是OK滴

点评

但是通常做这样的操作都是局部放大的嘛  发表于 2012-8-25 11:07
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-18 05:19 , Processed in 0.169201 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表