明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2816|回复: 20

[资源] 简单的一个对图工具

  [复制链接]
发表于 2023-10-14 10:50:50 | 显示全部楼层 |阅读模式
本帖最后由 雨的节奏 于 2023-10-17 09:15 编辑
  1. (defun c:gsauditing (/ vps oldverp x pt temppt code oldverp vsize ocpt opt whs vp vpindex ovpcpt vpcpt)
  2. (setq vps (vports))
  3. (if (= 1 (length vps)) (progn (vl-cmdf "-vports" "si"  "-vports" "2" "v") (setvar "cvport" (car (last (setq vps (vports)))))))
  4. ;;此时一定是有多视口的
  5. (if (null vpsandptlist)
  6. (progn
  7. (setq vpsandptlist ())
  8. (setq oldverp (getvar "cvport"))
  9.   (foreach x vps
  10.        ;;得到视口名和点表
  11.      (setvar "cvport" (car x))
  12.      (setq pt (getpoint "\n请指定当前激活视口的参考原点"))
  13.        (if (null pt) (vl-exit-with-value ""))
  14.      (setq vpsandptlist (cons (cons (car x) pt) vpsandptlist))
  15.     )
  16.   (setvar "cvport" oldverp)
  17.   )
  18. )
  19. (princ "\n输入S可以设置对比参考点")
  20. ;;这个时候得到了视口名与坐标点的数据,来注册一个事件
  21. (setq temppt (getvar 'ViewCtr))
  22. (while (and
  23.            (setq code (grread T 8))
  24.            (/= 32 (car code))
  25.            (/= 25 (car code))
  26.            (/= 3 (car code))
  27.        )
  28.        (if (and (= 2 (car code)) (or (= 83 (cadr code)) (= 115 (cadr code))))
  29.           (progn
  30.         (setq vpsandptlist ())
  31.               (setq oldverp (getvar "cvport"))
  32.               (foreach x vps
  33.                ;;得到视口名和点表
  34.                (setvar "cvport" (car x))
  35.                (setq pt (getpoint "\n请指定当前激活视口的参考原点"))
  36.                  (if (null pt) (vl-exit-with-value ""))
  37.                (setq vpsandptlist (cons (cons (car x) pt) vpsandptlist))
  38.                   )
  39.              (setvar "cvport" oldverp)
  40.         
  41.         )
  42.        )
  43.          (setq oldverp (getvar "cvport")
  44.                    vsize (getvar "viewsize")
  45.            ocpt (getvar 'ViewCtr)
  46.            opt (cdr (assoc oldverp vpsandptlist))
  47.            whs (mapcar '- ocpt opt)
  48.            )
  49.        (if (null (equal temppt ocpt))
  50.            (progn
  51.             (foreach vp vps
  52.                 (if (null (equal (car vp) oldverp))
  53.                 (progn
  54.               (setq vpindex (car vp))
  55.               (setvar "cvport" vpindex)
  56.               (setq ovpcpt (cdr (assoc vpindex vpsandptlist))
  57.                     vpcpt (mapcar '+ ovpcpt whs)
  58.                 )
  59.               (vla-ZoomCenter (vlax-get-acad-object) (vlax-3d-point vpcpt) vsize)
  60.               
  61.               
  62.                )
  63.              )
  64.           )
  65.           ;;把对比值改成当前值
  66.           (setvar "cvport" oldverp)
  67.           (setq temppt ocpt)
  68.          )
  69.       )
  70.                
  71.        )
  72.   
  73.   (princ "\n完成对比")
  74.   (prin1)
  75. )


注意事项:
  1、只在当前图对比
  2、对比点只设置一次,后面要再设置,输入s即可
  3、随便拿去用,也不用注明出处,反正我也是在论坛找别人的东西参考着写的

评分

参与人数 4明经币 +4 收起 理由
cjrun + 1 很给力!
GamIng + 1 很给力!
panliang9 + 1 不错,不错,很好用的东西
USER2128 + 1 赞一个!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2023-10-16 10:47:50 | 显示全部楼层
问一下,不可以同一窗口,用重叠图形来对图吗?修改/不同处 亮显?
回复 支持 2 反对 0

使用道具 举报

发表于 2023-10-16 09:11:50 | 显示全部楼层
cj52000 发表于 2023-10-14 19:56
大师,对图的中途好像不能进行操作,比如刷新,如要继续,再输入一遍命令是吧

楼主的这个程序已经很好了,如果你想中途有操作,必须使用
http://bbs.mjtd.com/forum.php?mo ... 4%CD%BC%C9%F1%C6%F7
发表于 2023-10-18 11:14:29 | 显示全部楼层
cj52000 发表于 2023-10-14 19:56
大师,对图的中途好像不能进行操作,比如刷新,如要继续,再输入一遍命令是吧

请问大神 你的程序是两个DWG图形对图还是一个DWG里面对图
发表于 2023-10-14 11:19:52 | 显示全部楼层
本帖最后由 菜卷鱼 于 2023-10-14 11:30 编辑

CAD2020-2024自带了对图功能,别的版本不知道

https://help.autodesk.com/view/A ... A-9176-A8AE24CDFBC7
视频的1分34秒开始有介绍

本帖子中包含更多资源

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

x

点评

对图和图纸比较虽然都在看图纸哪里有修改,但是操作起来,不太一样。  发表于 2023-10-16 09:08
发表于 2023-10-14 15:50:56 | 显示全部楼层
谢谢! 雨的节奏 分享学习!!!!!
发表于 2023-10-14 18:28:56 来自手机 | 显示全部楼层
大哥你那个侧边栏是自己开发的嘛
发表于 2023-10-14 19:56:27 | 显示全部楼层
大师,对图的中途好像不能进行操作,比如刷新,如要继续,再输入一遍命令是吧

点评

可以改一个你习惯的快捷键,要对到不同的地方,你可以标记起来,标记完,输入快捷键继续对。 我觉得这种低成本的核对,是有一定优势的,反正才几十行代码  发表于 2023-10-16 09:19
发表于 2023-10-15 08:36:01 | 显示全部楼层
感谢楼主分享
发表于 2023-10-15 12:17:33 | 显示全部楼层
感谢楼主分享
发表于 2023-10-16 09:02:44 | 显示全部楼层

感谢楼主分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 23:37 , Processed in 0.185497 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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