明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1648|回复: 6

求函数一个

[复制链接]
发表于 2013-1-18 09:47:08 | 显示全部楼层 |阅读模式
1明经币
本帖最后由 429014673 于 2013-1-19 09:39 编辑

求点选填充通用函数(最好有一个简单例子的应用)(填充后不要边界线)
PS:在回家路上发个贴不容易,大伙都过来看看

附件: 您需要 登录 才可以下载或查看,没有账号?注册
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2013-1-18 09:47:09 | 显示全部楼层
本帖最后由 SunSpring 于 2013-1-18 18:35 编辑







  1. (defun hatch_abc (a b c d)
  2.   (prompt "快速对象边界填充")
  3.   (command "hatch" c d "0" "" "N")
  4.   (while (wcmatch (getvar "cmdnames") (strcase "hatch"))
  5.     (command pause)
  6.   )
  7.   (modifylayer (entlast) a)
  8.   (modifycolor (entlast) b)
  9.   (princ)
  10. )
  11. (defun c:abc ()
  12.   (hatch_abc "石材" 8 "ANSI31" 3)
  13. )
  14. ;;修改对象颜色子函数
  15. (defun modifycolor (entgrp color / n vobj)
  16.   (if (= (type entgrp) 'ename)
  17.     (setq entgrp (ssadd entgrp))
  18.   )
  19.   (if entgrp
  20.     (repeat (setq n (sslength entgrp))
  21.       (setq vobj (vlax-ename->vla-object (ssname entgrp (setq n (1- n)))))
  22.       (vlax-put-property vobj 'color color)
  23.     )
  24.   )
  25.   (princ)
  26. )
  27. ;;修改对象图层子函数
  28. (defun modifylayer (entgrp layername / n vobj)
  29.   (makelayer layername)
  30.   (if (= (type entgrp) 'ename)
  31.     (setq entgrp (ssadd entgrp))
  32.   )
  33.   (if entgrp
  34.     (repeat (setq n (sslength entgrp))
  35.       (setq vobj (vlax-ename->vla-object (ssname entgrp (setq n (1- n)))))
  36.       (vlax-put-property vobj 'layer layername)
  37.     )
  38.   )
  39.   (princ)
  40. )
  41. ;;创建图层函数(仅需图层名)
  42. (defun makelayer (layername)
  43.   (if (= (tblobjname "LAYER" layername) nil)
  44.     (entmake (list '(0 . "LAYER")
  45.                    '(100 . "AcDbSymbolTableRecord")
  46.                    '(100 . "AcDbLayerTableRecord")
  47.                    '(70 . 0)
  48.                     (cons 2 layername)
  49.              )
  50.     )
  51.   )
  52.   (princ)
  53. )

本帖子中包含更多资源

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

x
回复

使用道具 举报

发表于 2013-1-18 10:06:12 | 显示全部楼层
参数应该还缺一个范围的参数吧!

点评

期待大师作品  发表于 2013-1-18 10:17
回复

使用道具 举报

发表于 2013-1-18 11:27:17 来自手机 | 显示全部楼层
帮你顶一个
回复

使用道具 举报

发表于 2013-1-18 12:12:36 | 显示全部楼层
思路:
1.根据选取的点生成封闭pl多边形
2.选择生产的多边形进行填充
3.删除多边形
   
回复

使用道具 举报

发表于 2013-1-18 13:17:59 | 显示全部楼层
本帖最后由 cable2004 于 2013-1-19 12:18 编辑


什么叫仅你可见!

本帖子中包含更多资源

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

x
回复

使用道具 举报

发表于 2013-1-20 22:49:41 | 显示全部楼层
看不到啊 看不到
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-20 13:52 , Processed in 0.212626 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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