明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1686|回复: 11

请教飞哥一个拖动问题?

  [复制链接]
发表于 2005-3-23 16:02 | 显示全部楼层 |阅读模式
;函数:(Drag ss pt)
;功能:实现拖动效果
;参数:ss——需要实现拖动效果的对象选择集
; pt——拖动过程鼠标移动起点
;返回:左键拖动过程鼠标移动终点,否则返回nil(根据拖动过程的起点和终点就可以做需要做的事情了)
(defun Drag (ss pt / blk ent ents m gr rVal mc-make-unname-block)
(defun mc-make-unname-block (pt ss / count entlist ent blk)
(entmake (list '(0 . "BLOCK")
'(2 . "*U")
'(70 . 1)
(cons 10 pt)
)
)
(setq count 0)
(repeat (sslength ss)
(setq entlist (entget (setq ent (ssname ss count))))
(setq count (1+ count))
(entmake entlist)
)
(setq count 0)
(repeat (sslength ss)
(setq ent (ssname ss count))
(setq count (1+ count))
)
(setq blk (entmake '((0 . "ENDBLK"))))
)
(if (setq blk (mc-make-unname-block pt ss))
(progn
(entmake (list (cons 0 "INSERT")
(cons 2 blk)
(cons 10 pt)
)
)
(setq ent (entlast))
)
)
(if ent
(progn
(setq ents (entget ent))
(setq m t
rVal nil
)
(while m
(setq gr (grread 2 4))
(cond
((= (car gr) 5)
(setq ents (subst (cons 10 (cadr gr)) (assoc 10 ents) ents))
(entmod ents)
)
((= (car gr) 3)
(setq m nil)
(setq rVal (cadr gr))
(entdel ent)
(command "_.purge" "b" blk "n")
)
(t (setq m nil) (entdel ent)(command "_.purge" "b" blk "n"))
)
)
)
)
rVal
) 我想用你写的这段拖动代码实现对象移动,想了很久也没有搞定,请飞哥和各位高手指点一下,谢谢
发表于 2005-3-23 17:13 | 显示全部楼层
命令MOVE不是很好吗?
 楼主| 发表于 2005-3-23 17:21 | 显示全部楼层
我想在移动一个对象过程中把坐标点传给另一个函数,也就是在移动的过程中要做别的事情
发表于 2005-3-24 08:52 | 显示全部楼层
有些东西不是动动坐标这么简单的,如椭圆等,要移动这些东西使用修改坐标值可其它值来达到移动的目的是非常麻烦的,用MOVE就轻松了
 楼主| 发表于 2005-3-24 09:01 | 显示全部楼层
是这样的,我想在拖动的过程中动态显示我自己定义的一条悬链线曲线,请飞哥帮忙
发表于 2005-3-24 09:16 | 显示全部楼层
再仔细看看这个帖子后面的讨论吧。。。而且你拖动什么不都一样吗?用MOVE命令不可以吗? http://bbs.mjtd.com/forum.php?mod=viewthread&tid=19401
 楼主| 发表于 2005-3-24 12:53 | 显示全部楼层
可能是我表达的不清楚,我想在移动塔N2的时候左边的塔不动,悬链线的右挂点A和N2塔一起动,悬链线动态显示,我现在只会用grread函数,不知道还有没有其他方法可以实现


本帖子中包含更多资源

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

x
发表于 2005-3-24 13:11 | 显示全部楼层
拉伸?
 楼主| 发表于 2005-3-24 13:19 | 显示全部楼层
悬链线的动态显示我做了,只需要把挂点A传给画线的函数就可以,可以说是伸缩
发表于 2005-3-24 16:36 | 显示全部楼层
north911,请教GRREAD函数怎么用?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-6 01:56 , Processed in 0.275363 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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