明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 21554|回复: 59

[资源] 画洞口【更新至V3.4.0】

    [复制链接]
发表于 2013-3-6 12:21 | 显示全部楼层 |阅读模式
本帖最后由 张和平 于 2013-7-14 15:56 编辑

======更新V3.4.0
1、支持带圆弧的边界;
2、边界线和洞口线分为两根pline线,同时两者组为一个组,方便单独编辑洞口线,也方便一起删除边界线和洞口折线。



======更新V3.1.0


===========================================
自己编的小小插件,真的是很小的插件,有用的可以下载了用用看有人要求公开代码,我就斗胆公开了,初学Visual Lisp,其实就是极为简单的命令哈
  1. ;;; DRAW HOLES
  2. ;;; VERSION 1.0.0
  3. ;;; By PEACE
  4. ;;; Copyright (C) 2012-2013 ZIAD, All Rights Reserved
  5. ;;; Website: http://blog.sina.com.cn/peacelvirene
  6. ;;; E-mail: zhptj1986@gmail.com
  7. ;;; 2013-01-23
  8. ;;; "mdk" for multi dk models
  9. ;;; "dk" for single dk model
  10. (defun c:mdk(/ v1 v2 v3 v4 p1 p2 p3 p4 p5 x1 y1 x3 y3 x5 y5 ms)
  11.   (setq v1 (getvar "cmdecho"))
  12.   (setq v2 (getvar "blipmode"))
  13.   (setq v3 (getvar "CLAYER"))
  14.   (setq v4 (getvar "osmode"))
  15.   (setvar "cmdecho" 0)
  16.   (setvar "blipmode" 0)
  17.   
  18.   (setq ms (getstring "(A)此层开洞(默认)或[(B)此层不开洞/(C)此层开洞并填充]:"))
  19.   (if (= ms "")
  20.     (setq ms "A")
  21.   )
  22.   (setq p1 (getpoint "\n输入矩形洞口的一个角点:"))
  23.   (setq p3 (getcorner p1 "\n输入矩形洞口的另一个角点:"))
  24.   (setq x1 (car p1))
  25.   (setq y1 (cadr p1))
  26.   (setq x3 (car p3))
  27.   (setq y3 (cadr p3))
  28.   (setq p2 (list x3 y1))
  29.   (setq p4 (list x1 y3))
  30.   (setq x5 (+ x1 (* 0.15 (- x3 x1))))
  31.   (setq y5 (+ y1 (* 0.85 (- y3 y1))))
  32.   (setq p5 (list x5 y5))
  33.   (setvar "osmode" 0)
  34.   (cond ((or (= ms "A") (= ms "a"))
  35.           (progn (tuceng "结洞口实" 7 "continuous")
  36.           ;(command "pline" p1 "w" 0.3 0.3 p5 p3 "")
  37.           ;(command "pline" p1 p2 p3 p4 "c")
  38.            (command "line" p1 p2 p3 p4 p1 "")
  39.            (command "line" p1 p5 p3 "")
  40.           )
  41.         )
  42.         ((or (= ms "B") (= ms "b"))
  43.           (progn (tuceng "结洞口虚" 7 "dash")
  44.            (command "line" p1 p2 p3 p4 p1 "")
  45.            (command "line" p1 p5 p3 "")
  46.           )
  47.         )
  48.         ((or (= ms "C") (= ms "c"))
  49.           (progn (tuceng "结洞口实" 7 "continuous")
  50.            (command "line" p1 p2 p3 p4 p1 "")
  51.            (command "line" p1 p5 p3 "")
  52.            (command "solid" p1 p4 p5 p3 "")
  53.           )
  54.         )
  55.   )
  56.   (setvar "cmdecho" v1)
  57.   (setvar "blipmode" v2)
  58.   (setvar "CLAYER" v3)
  59.   (setvar "osmode" v4)
  60. )

  61. (defun c:dk(/ v1 v2 v3 v4 p1 p2 p3 p4 p5 x1 y1 x3 y3 x5 y5)
  62.   (setq v1 (getvar "cmdecho"))
  63.   (setq v2 (getvar "blipmode"))
  64.   (setq v3 (getvar "CLAYER"))
  65.   (setq v4 (getvar "osmode"))
  66.   (setvar "cmdecho" 0)
  67.   (setvar "blipmode" 0)
  68.   (setq p1 (getpoint "\n输入矩形洞口的一个角点:"))
  69.   (setq p3 (getcorner p1 "\n输入矩形洞口的另一个角点:"))
  70.   (setq x1 (car p1))
  71.   (setq y1 (cadr p1))
  72.   (setq x3 (car p3))
  73.   (setq y3 (cadr p3))
  74.   (setq p2 (list x3 y1))
  75.   (setq p4 (list x1 y3))
  76.   (setq x5 (+ x1 (* 0.15 (- x3 x1))))
  77.   (setq y5 (+ y1 (* 0.85 (- y3 y1))))
  78.   (setq p5 (list x5 y5))
  79.   (setvar "osmode" 0)
  80.   (tuceng "结洞口实" 7 "continuous")
  81.   (command "line" p1 p2 p3 p4 p1 "")
  82.   (command "line" p1 p5 p3 "")
  83.   (command "solid" p1 p4 p5 p3 "")
  84.   (setvar "cmdecho" v1)
  85.   (setvar "blipmode" v2)
  86.   (setvar "CLAYER" v3)
  87.   (setvar "osmode" v4)
  88. )
  89. (defun c:dkl(/ v1 v2 v3 v4 p1 p2 p3 p4 x1 y1 x2 y2 x3 y3 x4 y4 x5 y5)
  90.   (setq v1 (getvar "cmdecho"))
  91.   (setq v2 (getvar "blipmode"))
  92.   (setq v3 (getvar "CLAYER"))
  93.   (setq v4 (getvar "osmode"))
  94.   (setvar "cmdecho" 0)
  95.   (setvar "blipmode" 0)
  96.   (setq p1 (getpoint "\n输入洞口线起点:"))
  97.   (setq p2 (getpoint "\n输入洞口线中点:"))
  98.   (setq p3 (getpoint "\n输入洞口线末点:"))
  99.   (setvar "osmode" 0)
  100.   (setq x1 (car p1))
  101.   (setq y1 (cadr p1))
  102.   (setq x2 (car p2))
  103.   (setq y2 (cadr p2))
  104.   (setq x3 (car p3))
  105.   (setq y3 (cadr p3))
  106.   (setq x5 (* 0.5 (+ x1 x3)))
  107.   (setq y5 (* 0.5 (+ y1 y3)))
  108.   (setq x4 (+ x2 (* 0.3 (- x5 x2))))
  109.   (setq y4 (+ y2 (* 0.3 (- y5 y2))))
  110.   (setq p4 (list x4 y4))
  111.   (tuceng "结洞口实" 7 "continuous")
  112.   (command "line" p1 p4 p3 "")
  113.   (command "solid" p1 p2 p4 p3 "")
  114.   (setvar "cmdecho" v1)
  115.   (setvar "blipmode" v2)
  116.   (setvar "CLAYER" v3)
  117.   (setvar "osmode" v4)
  118.   ;(command "layer" s "0" "")
  119. )
  120. (defun tuceng(name color ltype)
  121.   (command "layer" "m" name "c" color name "l" ltype name "")
  122. )
以上为第一版,请下载试用第二版:
第二版源码:
第二版直接可用的下载地址:http://s.yunio.com/S_F0lC

2013/03/13
今天在大神的指导下解决了插件冲突的问题,然后顺便优化了一下这个画洞口的小插件,
当然也要感谢springwillow的指导。
现在放出这个插件的V2.1.0版。
在最新版的源码上邪恶地收了一个明经币,因为实在买不起别人的东西啊。。
不过前面几版的源码还是免费分享。
V2.1.0直接可用的打包:
V2.1.0源码:


本帖子中包含更多资源

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

x

评分

参与人数 1金钱 +20 收起 理由
xy233 + 20 赞一个!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2023-10-20 16:44 | 显示全部楼层
很好的东西,感谢楼主的无私奉献

下载后稍作修改可以实现我想要的功能,点选封闭空间,自动画门洞折线并将其归到图层内,本人想把源码精简下,能实现这个功能就行,无奈看不懂,楼主能否帮忙精简下,把不必要的删了,谢谢

本帖子中包含更多资源

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

x
发表于 2019-8-19 14:55 | 显示全部楼层
找的就是这个,好东西。谢谢!
发表于 2018-10-13 22:44 | 显示全部楼层
不错的帖子
发表于 2013-3-6 14:01 来自手机 | 显示全部楼层
正在找,下来看看。是源码吗?
 楼主| 发表于 2013-3-6 14:59 | 显示全部楼层
wjl1014 发表于 2013-3-6 14:01
正在找,下来看看。是源码吗?

不是源码,,下载用用看先把,,源码没几行
发表于 2013-3-6 16:49 | 显示全部楼层
希望谢谢楼主,开源共享,
 楼主| 发表于 2013-3-6 17:00 | 显示全部楼层
tianyi1230 发表于 2013-3-6 16:49
希望谢谢楼主,开源共享,

哈哈,已公开
 楼主| 发表于 2013-3-13 14:31 | 显示全部楼层
更新了画洞口插件的V2.1.0版,感谢springwillow的指导。沿用了你的思路,更改了其中的错误。邪恶地赚点币,因为实在买不起别人的东西哈。。。忘见谅。。
发表于 2013-4-18 16:01 | 显示全部楼层
张和平 发表于 2013-3-13 14:31
更新了画洞口插件的V2.1.0版,感谢springwillow的指导。沿用了你的思路,更改了其中的错误。邪恶地赚点币, ...

什么时候增加一个圆开孔口
发表于 2013-4-18 16:14 | 显示全部楼层
给个图啊  是画什么洞口?
 楼主| 发表于 2013-4-18 20:21 | 显示全部楼层
朽木大师 发表于 2013-4-18 16:01
什么时候增加一个圆开孔口

最近有点忙,所以没有时间更新, 不过这个小插件还是有更新的计划的。你不妨提供一下你需要的圆孔的样式,我可以考虑加进去。不过要有耐心等啊。。
发表于 2013-4-19 17:03 | 显示全部楼层
张和平 发表于 2013-4-18 20:21
最近有点忙,所以没有时间更新, 不过这个小插件还是有更新的计划的。你不妨提供一下你需要的圆孔的样式, ...

圆孔同方孔差不多,还可以增加一个选圆变孔,选矩形变孔
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-25 22:08 , Processed in 0.392802 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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