明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1902|回复: 5

[基础] 画指北针 出图不一样 已解决

[复制链接]
发表于 2010-9-25 14:37:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2010-9-26 8:58:49 编辑

在插入时显示的倍数不同
出来的效果不同
不知道为什么
请高手指点啊?






源码下面就是

  1. (defun c:zbz ( / mdpt xdpt yxdpt zxdpt pt1 pt2 pt3 pt4 pt5 pt6 ss1 ss2 ss3)
  2. (print "欢迎使用biaoge124的指北针制定 \n 命令:zbz")
  3. (setq mdpt (getpoint "\n 请确定插入点:"))
  4. (setq ddpt (polar mdpt 1.5708 24.5))
  5. (setq xdpt (polar mdpt 4.71239 11.5))
  6. (setq yxdpt (polar xdpt 5.27099 18.868))
  7. (setq zxdpt (polar xdpt 4.15379 18.868))
  8. (setq pt1 (polar mdpt 4.36362 12.5))
  9. (setq pt2 (polar mdpt 4.36362 15))
  10. (setq pt5 (polar mdpt 1.63536 12.5))
  11. (setq pt6 (polar mdpt 1.63536 15))
  12. (setq pt3 (polar yxdpt 1.91957 7))
  13. (setq pt4 (polar mdpt 0 2))
  14. (command "_circle" mdpt 12.5 )
  15. (command "_circle" mdpt 15 )
  16. (command "_line" ddpt xdpt "")
  17. (command "_line" xdpt yxdpt "")
  18. (command "_line" xdpt zxdpt "")
  19. (setq ss1 (entlast ))
  20. (command "_line" ddpt zxdpt "")
  21. (setq ss2 (entlast ))
  22. (command "_line" ddpt yxdpt "")
  23. (setq ss3 (entlast ))
  24. (command "_trim" ss1 ss2 "" pt1 pt2 "")
  25. (command "_trim" ss2 ss3 "" pt5 pt6 "")
  26. (command "_bhatch" "p" "solid" pt3 pt4 "" )
  27. )

本帖子中包含更多资源

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

x
发表于 2010-9-25 16:19:00 | 显示全部楼层

是不是由于捕捉造成的?加上三句试试!

(defun c:zbz ( / mdpt xdpt yxdpt zxdpt pt1 pt2 pt3 pt4 pt5 pt6 ss1 ss2 ss3)
    (setq osmode(getvar "osmode"))  
    (setvar "osmode" 0)
(print "欢迎使用biaoge124的指北针制定 \n 命令:zbz")
(setq mdpt (getpoint "\n 请确定插入点:"))
(setq ddpt (polar mdpt 1.5708 24.5))
(setq xdpt (polar mdpt 4.71239 11.5))
(setq yxdpt (polar xdpt 5.27099 18.868))
(setq zxdpt (polar xdpt 4.15379 18.868))
(setq pt1 (polar mdpt 4.36362 12.5))
(setq pt2 (polar mdpt 4.36362 15))
(setq pt5 (polar mdpt 1.63536 12.5))
(setq pt6 (polar mdpt 1.63536 15))
(setq pt3 (polar yxdpt 1.91957 7))
(setq pt4 (polar mdpt 0 2))
(command "_circle" mdpt 12.5 )
(command "_circle" mdpt 15 )
(command "_line" ddpt xdpt "")
(command "_line" xdpt yxdpt "")
(command "_line" xdpt zxdpt "")
(setq ss1 (entlast ))
(command "_line" ddpt zxdpt "")
(setq ss2 (entlast ))
(command "_line" ddpt yxdpt "")
(setq ss3 (entlast ))
(command "_trim" ss1 ss2 "" pt1 pt2 "")
(command "_trim" ss2 ss3 "" pt5 pt6 "")
(command "_bhatch" "p" "solid" pt3 pt4 "" ) 
    (setvar "osmode" osmode) 
)

 楼主| 发表于 2010-9-26 08:25:00 | 显示全部楼层

具体为什么我还是不知道

就知道一点

修剪命令  应该是双元点来完成  而我这里是点来完成的

填充命令 在小显示下没问题,大显示下找不到填充边界,所以无法完成,要想完成可以选实体来完成,而我这里是点选的

我已经更改了一些

但是还是有问题的

没有达到我想要的那种

基本可以用

 

 楼主| 发表于 2010-9-26 08:25:00 | 显示全部楼层
  1. (defun c:zbz (/    mdpt xdpt yxdpt    zxdpt pt1 pt2 pt3 pt4 pt5 pt6 ss1 ss2
  2.      ss3)
  3. (setvar "cmdecho" 0)
  4. (print "欢迎使用biaoge124的指北针制定 \n 命令:zbz")
  5. (setq mdpt (getpoint "\n 请确定插入点:"))
  6. (setq jdzbz (getreal "\n请确定北方向(竖直向上为0度,分+ -):"))
  7. (setq sizeview (getvar "viewsize"))
  8. (setq ctrview (getvar "viewctr"))
  9. (command "zoom" "c" mdpt 52.6)
  10. (if (not (tblsearch "layer" "bg指北针"))
  11. (command "_layer" "m" "bg指北针" "c" "4" "" "")
  12. )
  13. (setq ddpt (polar mdpt 1.5708 24.5))
  14. (setq xdpt (polar mdpt 4.71239 11.5))
  15. (setq yxdpt (polar xdpt 5.27099 18.868))
  16. (setq zxdpt (polar xdpt 4.15379 18.868))
  17. (setq pt1 (polar mdpt 4.36362 12.5))
  18. (setq pt2 (polar mdpt 4.36362 15))
  19. (setq pt5 (polar mdpt 1.63536 12.5))
  20. (setq pt6 (polar mdpt 1.63536 15))
  21. (setq pt3 (polar yxdpt 1.91957 7))
  22. (setq pt4 (polar mdpt 0 2))
  23. (command "_circle" mdpt 12.5)
  24. (command "_circle" mdpt 15)
  25. (command "_line" ddpt xdpt "")
  26. (command "_line" xdpt yxdpt "")
  27. (command "_line" xdpt zxdpt "")
  28. (setq ss1 (entlast))
  29. (command "_line" ddpt zxdpt "")
  30. (setq ss2 (entlast))
  31. (command "_line" ddpt yxdpt "")
  32. (setq ss3 (entlast))
  33. (command "_trim" ss1 ss2 "" pt1 pt2 "")
  34. (command "_trim" ss2 ss3 "" pt5 pt6 "")
  35. (command "_bhatch" "p" "solid" pt3 pt4 "")
  36. (command "zoom" "c" ctrview sizeview)
  37. (setq sszbz (ssget "x" '((8 . "bg指北针"))))
  38. (command "_rotate" sszbz "" mdpt jdzbz "")
  39. (setvar "cmdecho" 0)
  40. )
发表于 2010-9-26 17:23:00 | 显示全部楼层
抱歉!我以为你是问 为什么选择不同的插入点得到不同的图形呢?
发表于 2010-9-28 11:01:00 | 显示全部楼层

(command "_bhatch" "p" "solid" pt3 pt4 "" )

用solid替代bhatch更稳定

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

本版积分规则

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

GMT+8, 2024-10-2 12:31 , Processed in 0.185862 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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