乐筑天下

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

怎么产生一条动态直线

[复制链接]

14

主题

32

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2004-10-24 16:36:00 | 显示全部楼层 |阅读模式
请教:怎么产生一条从某个固定点到鼠标位置的直线、它随着鼠标的移动而改变。就像
(getpoint p0 "\nSpecify the second point:")一样
回复

使用道具 举报

63

主题

1203

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1455
发表于 2004-10-24 16:50:00 | 显示全部楼层
(SETQ A (GETPOINT)
                                         B (getpoint A ".."));; 拉线取点
回复

使用道具 举报

14

主题

32

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2004-10-24 20:51:00 | 显示全部楼层
这样不就是还是用getpoint吗。
我现在遇到的问题是要在一个固定点和一个插入块时的插入点时产生这样一条现,如果用getpoint,那就产生不了插入块时的块的预览效果了
        (princ "\n指定插入点:")
        (command "-insert" blockname pause 1 1 0)
回复

使用道具 举报

7

主题

29

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
57
发表于 2004-10-25 00:21:00 | 显示全部楼层
用grread就能模拟出你要的动态效果
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-10-25 08:46:00 | 显示全部楼层
用楼主原来的方法或2楼是最好的,取得点后你可以不用它,只需要这个过程就可以了,...楼上的方法不能取得捕捉点
回复

使用道具 举报

7

主题

29

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
57
发表于 2004-10-25 13:16:00 | 显示全部楼层
楼上说的不错,grread不被捕捉方式支持,但既然自己编程了,就自己造捕捉方式.
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-10-25 14:10:00 | 显示全部楼层
有getpoint函数为什么还要去造???
回复

使用道具 举报

14

主题

32

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2004-10-25 20:06:00 | 显示全部楼层
现在的主要问题是getpoint尽管能产生这样的效果,但同时块的预览效果被取消掉了
(defun c:test ()
         (command "line" '(0 0) '(10 0) "")
         (command "-block" "xxxx" '(0 0) (entlast) "")
         (setq p0 (getpoint "\nSpecify the first point:"))
         (princ "\nSpecify the set point:")
         (command "-insert" "xxxx" (getpoint p0 princpause) 1 1 0)
)
现在我就是问问有什么方法可以达到在某一点和块的插入点之间产生一条动态直线,并且块照样可以预览出来
回复

使用道具 举报

14

主题

32

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2004-10-25 20:07:00 | 显示全部楼层
现在的主要问题是getpoint尽管能产生这样的效果,但同时块的预览效果被取消掉了(defun c:test (/ blockname i pmouse)
         (setq blockname "tempblock")
         (setq i 1)
         (while i
                         (if        (tblsearch "block" blockname)
                                         (progn
        (setq blockname (strcat "tempblock" (rtos i)))
        (setq i (1+ i))
                                         )
                                         (setq i nil)
                         )
         )
         (command "line" '(0 0) '(50 0) "")
         (command "-block" blockname '(0 0) (entlast) "")
         (setq p0 (getpoint "\nSpecify the first point:"))
         (princ "\nSpecify the set point:")
         (command "-insert" blockname (getpoint p0 pause) 1 1 0)
         (setq pmouse (cadr (grread T)))
         (command "line" p0 pmouse "")
)
现在我就是问问有什么方法可以达到在某一点和块的插入点之间产生一条动态直线,并且块照样可以预览出来
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2004-10-26 09:10:00 | 显示全部楼层
之前你也没有说要预览块啊,以后问题要一次性说清楚了,否则让大家在这里白讨论...
你在当前位置插入块后,然后使用MOVE命令,就有条线,并且也可以预览了
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-8-20 23:43 , Processed in 1.200747 second(s), 72 queries .

© 2020-2025 乐筑天下

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