明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 106211|回复: 330

[【Gu_xl】] 【Gu_xl】【源码分享】自定义带捕捉的grread函数

    [复制链接]
发表于 2011-12-15 09:46:45 | 显示全部楼层 |阅读模式
本帖最后由 Gu_xl 于 2013-6-25 10:51 编辑

  最近论坛里不少人在讨论如何解决Grread函数的捕捉问题,grread函数不能捕捉,想要使用上捕捉,非常麻烦,高飞兄的那个arx动态函数很好的解决了这个问题!但是我这里是用lisp方法对grread函数重新自定义,构造出一个和grread函数一样功能的函数,同时它支持捕捉、支持正交,并支持在grread运行中进行捕捉、正交的开和关,这样Grread实现捕捉工作就变得简单了!
  申明一下,这个函数核心源码并非我原创,是借鉴了前辈们的智慧结晶,核心源码是谁的,我现在也高不清楚了,有可能是CAB的,在此基础上,我加以改进后形成的成果,在此对前辈们表示感谢!
源码:
游客,本帖隐藏的内容需要发帖数高于 10 才可浏览,你当前发帖数只有 0




该贴已经同步到 Gu_xl的微博



本帖子中包含更多资源

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

x

点评

很强大很好用,谢谢.发现一个小问题,运行时点右键会出错,我将322行的那个(if (and startpt (= 1 f8) (/= 2 (car drag)))改为(if (and startpt (= 1 f8) (/= 2 (car drag)) (= 'list (type (cadr drag))))就好了  发表于 2016-7-25 08:54
我想问下:能否改动,不要扑捉,只支持正交开关的?因为很多画图用不着扑捉。  发表于 2015-12-16 17:59
晕死了! 眼跟前的东西我居然我找了这么久! 这个函数远比我想的强大的多。。。。。。。。  发表于 2013-6-20 14:40

评分

参与人数 21明经币 +24 金钱 +20 收起 理由
wowan1314 + 1 神马都是浮云
zctao1966 + 1 赞一个!
yzxgwl + 1 赞一个! 这真的很强悍!
cabinsummer + 2 奖励真实
大智若禹 + 1 很给力!
lrd1861 + 1 很给力!
Michael527 + 1 很给力!
【KAIXIN】 + 1 强,好程序,支持!
flytoday + 1 赞一个!
qjchen + 1 赞一个!

查看全部评分

"觉得好,就打赏"
    共1人打赏

本帖被以下淘专辑推荐:

发表于 2011-12-15 11:51:37 来自手机 | 显示全部楼层
国外早有grread的捕捉,国内见到最早的应该是ZML版主
回复 支持 1 反对 0

使用道具 举报

发表于 2020-4-19 17:03:18 | 显示全部楼层
有朋友苹果版ACAD由于没有DCL对话框, 输入密码时就容易暴露!
搜索后,刚巧有网友示范如何覆盖密码。。李麦大神也有发布思维应该不难。
但如果显示在图元我的问题是如何完美在任何立体视界居中就好象UCS icon 标志 (X,Y,Z)永远都对着荧幕正常显示!

如动画:


如果不要命令之类如(command "text" ...) (command "LAN" "v")
我尝试entmake但有些视角却不行
有没有大神已经有发布过类似居中函数?

基本上如果在正常WCS以下方法应该是可行的...
  1.    (entmakex (list '(0 . "TEXT")
  2.                             (cons 40 (vs 30))
  3.                             '(72 . 1)'(50 0)
  4.                             (cons 10 (getvar 'viewctr) )
  5.                             (cons 1 str)
  6.                             (cons 11  (getvar 'viewctr) )
  7.                             (cons 210  (getvar 'viewdir) )
  8.                       )
  9.             )


但如果图元已转换UCS空间,(先别说viewtwist等变量已一改变就更有难度了!)
好像缺少什么?
(getvar 'viewdir)
(trans (getvar 'viewctr) 2 0)
ucsxdir, ucsydir, ucsbase?

发表于 2021-7-19 00:25:15 | 显示全部楼层
快速缩放鼠标中键,   211行会报错      (GRVECS (APPLY 'APPEND lst))      可能是来不及绘制
发表于 2011-12-15 10:00:45 | 显示全部楼层
强人
我的lisp学习就是在参考G版的源代码中逐渐成长起来的!
在此感谢G版的无私奉献
 楼主| 发表于 2011-12-15 11:19:46 | 显示全部楼层
大量物体做动态本来就费劲!大量物体时肯定要使用高飞兄的那个函数才给力!
发表于 2011-12-15 12:47:43 | 显示全部楼层
,原来这个问题这么复杂,看着代码都头晕
发表于 2011-12-15 13:42:04 | 显示全部楼层
g版高明,支持了
发表于 2011-12-15 20:07:33 | 显示全部楼层
很好的GRREAD例子,这个一定支持
发表于 2011-12-15 20:37:59 | 显示全部楼层
慢慢看.......
发表于 2011-12-16 12:46:51 | 显示全部楼层
这个帖子要顶起来才对....
发表于 2011-12-18 03:21:08 | 显示全部楼层
楼主牛人,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-6 09:41 , Processed in 0.211792 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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