立即注册 登录
晓东CAD家园-论坛 返回首页

ljxkm的个人空间 http://bbs.xdcad.net/?769669 [收藏] [复制] [分享] [RSS]

日志

创建边界填充

已有 79 次阅读2019-11-9 18:43 |个人分类:程序源码| 边界填充

;;;;(ljx-hatch pt name jd sca)  ,绘制边界填充函数
;;;;适用于"Line" "LWPOLYLINE" "CIRCLE" "SPLINE" "REGION" "ELLIPSE" 围成的填充边界
;;;;pt----填充范围内一点,用getpoint函数取得比较方便
;;;;name--填充图案名称如"ANSI31"
;;;;jd----填充图案旋转角度,以度计
;;;;sca---填充图案的比例,实数
;;;;示例:(ljx-hatch (getpoint "\n边界内选一点") "ANSI31" 90 5)
;;;;函数作者:  jixiangluo
;;;;最后修改日期2019.11.09

(defun ljx-hatch (pt name jd sca / mspace e hatchobj outlst objlst )
  (vl-load-com)
  (setq mspace (vla-get-ModelSpace (vla-get-ActiveDocument (vlax-get-acad-object))))
  (setq e (bpoly pt))
  (vl-cmdf)
  (if (not (vlax-ename->vla-object e))
    (progn
      (bpoly pt)
      (vl-cmdf "")
      (setq e (entlast))
    )
  )
  (setq objlst (list (vlax-ename->vla-object e))
        hatchobj (vla-AddHatch mspace 0 name :vlax-true)
        outlst (vlax-make-safearray vlax-vbobject (cons 0 (1- (length objlst))))
  )
  (vlax-safearray-fill  outlst objlst)
  (vla-appendouterloop hatchobj outlst)
  (vla-evaluate hatchobj)
  (vla-put-PatternScale hatchobj sca);;图案比例
  (vla-put-PatternAngle hatchobj (* jd (/ pi 180.0)));;图案旋转角度
  (vla-delete (vlax-ename->vla-object e))
)


路过

雷人

握手

鲜花

鸡蛋

全部作者的其他最新日志

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 立即注册

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-27 03:56 , Processed in 0.166378 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

返回顶部