明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 6103|回复: 35

[函数] 求助:实现多重复制

  [复制链接]
发表于 2011-8-7 11:12:16 | 显示全部楼层 |阅读模式
本帖最后由 andyding 于 2011-8-10 09:46 编辑

菜鸟求助,请各位大侠帮忙。
已知(setq pt1 (getpoint))       (setq di 20.0)
求 pt2,pt2点的方向按鼠标即时所指方向,pt2必须是一个点表。
(setq pt2 (getpoint pt1))  试过了,用户不能输入一个 AutoLISP 表达式来响应 getpoint 的请求。
-------------------------------------------------------------------------------------
改帖名,但愿更多大侠能进来指点。
我的愿望是:模仿CAD  copy命令那样的模式,既可以左键选取复制点,又可以输入距离复制,复制过程中对象跟随鼠标模拟移动。但比copy多2个功能:复制距离记忆,回车默认距离、复制基点自动跳到最后复制出来的对象的相应的位置上。
这是我自己写的程序,实现不了。


本帖子中包含更多资源

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

x
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2011-8-7 11:56:54 | 显示全部楼层
本帖最后由 EMD 于 2011-8-7 12:11 编辑

(defun C:tt ( / pt1 pt2 di ang)
(setq pt1 (getpoint "\n输入起始点:")) ;鼠标点击选择起始点
(setq di 20.0);; 目标点与起始点的距离
(setq ang (getorient "\n输入终点:" pt1) ) ;; ;鼠标点击选择起始点
(setq pt2 (polar pt1 ang di));算出最终需要的终点坐标
(command "line"pt1 pt2 "" );;连线
(princ)
)


试试看是否满足要求,
应该还可以用grread作出动态的效果.,直接就显示的最终线段长度.不是现在这样的连接的是起始点与鼠标当前点.
grread的用法可以搜下.论坛里很多.
 楼主| 发表于 2011-8-7 13:32:08 | 显示全部楼层
回复 EMD 的帖子

有没有办法,不再手动加入其他条件,纯函数计算就能得到pt2.
发表于 2011-8-7 13:35:27 | 显示全部楼层
那样的话,pt2是 以pt1为圆心 di为半径的园..你如何去求的pt2的确切位置?
 楼主| 发表于 2011-8-7 15:05:07 | 显示全部楼层
回复 EMD 的帖子

是喔,条件不完整。
getpoint支持手动输入的距离,但不支持表达式设定的距离,麻烦。
 楼主| 发表于 2011-8-7 22:42:26 | 显示全部楼层
回复 EMD 的帖子

看了grread的帮助,想到一点,可以通过grread得到鼠标即时点表,去跟pt1点比较,得到角度,再用(polar ang di)得到pt2。不知道可不可行,我且试试看。
发表于 2011-8-7 22:46:53 | 显示全部楼层
andyding 发表于 2011-8-7 22:42
回复 EMD 的帖子

看了grread的帮助,想到一点,可以通过grread得到鼠标即时点表,去跟pt1点比较,得到角度 ...

肯定可行.问题是一样的效果啊.最终你还需要用一个操作来确认你最终的选择,要么是用某个按键,要么用鼠标的点击.区别就是他可以直接生成20长度的线段随你鼠标的移动而移动.
发表于 2011-8-7 23:01:05 | 显示全部楼层
http://bbs.mjtd.com/forum.php?mo ... hlight=%B1%EA%D7%A2

去这个网站的5楼.有grread的鼠标跟踪代码.可以学习下.
发表于 2011-8-8 08:22:45 | 显示全部楼层
一个已知点和一个距离值,出来的结果是以已知点为圆心,已知距离为半径的圆,没有方向是难以定位的
发表于 2011-8-8 12:59:01 | 显示全部楼层
高人,都是高人。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-9-28 02:30 , Processed in 0.248546 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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