明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2095|回复: 5

[经验] 查稍微有点斜的线

[复制链接]
发表于 2013-6-21 10:24 | 显示全部楼层 |阅读模式
画图时稍不注意,有的线画斜了。斜一点点,肉眼看不出,结果标注尺寸时出来小数点,因为看不出所以难查,网上下载了查斜线的程序,但它是把所有的斜线都查出来打成红色,能否在这程序基础上,改成查与正交线,即水平和竖直线偏一点点的线,程序加上角度,各人可按需修改需查的角度。

bias.lsp程序见下面
(defun c:bias(/ pd_lst olderr newerr ss_kill ss_first n en en_data pt_st pt_en ang)

(setq pd_lst '(0.0 18000.0 9000.0 27000.0))(setvar "cmdecho" 0)(setq olderr *error* *error* newerr)

(defun newerr(msg)
(if msg
(progn
(princ "\n           函数出错了\n")
;
(princ msg)
))(command "_.undo" "_e")
(setq *error* olderr)
(setvar "cmdecho" 1)
(princ))
(command "_.undo" "_be")
(prompt "\n选择直线:")
(setq ss_kill (ssadd) n 0)(setq ss_first (ssget '((0 . "line"))))
(while (< n (sslength ss_first))
(setq en (ssname ss_first n) en_data (entget en))
(setq pt_st (cdr (assoc 10 en_data)))(setq pt_en (cdr (assoc 11 en_data)))
(setq ang (/ (* 180 100 (angle pt_st pt_en)) pi))
(if (not (member ang pd_lst))(setq ss_kill (ssadd en ss_kill))
)
(setq n (1+ n)))(if ss_kill
(progn
(command "_.chprop" ss_kill "" "c" 1 "")
(princ (strcat "\n------------- 有\t" (itoa (sslength ss_kill)) "  条斜线。"))
)
(princ "\n没有斜线!")
)


(newerr nil)
)

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2013-7-2 18:02 | 显示全部楼层
而且还可以加个功能,查出来后是否自动纠正为正垂直或者正水平的直线。但这个时候就要判断往哪个端点纠正才是对的?要总结斜线出现的规律了。
发表于 2013-7-2 22:54 | 显示全部楼层
highflybir有个图元归整,完美解决以上问题
发表于 2013-7-3 09:27 | 显示全部楼层
发表于 2013-7-3 12:58 | 显示全部楼层
highflybir 发表于 2013-7-3 09:27
参考帖子:
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=86961&page=10#pid594428

highflybir你好,花了明经币下载你说的一楼的程序怎么下载不下来,提示“抱歉,该附件无法读取”~~~
发表于 2013-7-3 14:32 | 显示全部楼层
我要学习啊。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-3-29 17:01 , Processed in 0.408141 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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