找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1661|回复: 4

[讨论]:如何实现图案填充

[复制链接]
发表于 2006-12-13 19:14:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
请教各位高手
  如何在vba中编辑图案填充

我找到答案了
大家一起分享
Sub Example_HatchStyle()
      ' 这个范例在模型空间中建立一个关联式图案填充
      ' 接着改变图案填充样式来示范各种
      ' 内回路的处理方式。

      Dim hatchObj As AcadHatch
      Dim patternName As String
      Dim PatternType As Long
      Dim bAssociativity As Boolean

      ' 定义图案填充

      patternName = "ANSI31"
      PatternType = 0
      bAssociativity = True

      ' 建立关联的Hatch对象
      Set hatchObj = ThisDrawing.ModelSpace.AddHatch(PatternType, patternName, bAssociativity)
          hatchObj.Update
      ' 建立图案填充的外回路
      ' 使用一个弧以及一条线来建立封闭回路

      Dim outerLoop(0 To 1) As AcadEntity
      Dim center(0 To 2) As Double

      Dim radius As Double
      Dim startAngle As Double
      Dim endAngle As Double
      center(0) = 50: center(1) = 30: center(2) = 0
      radius = 30
      startAngle = 0
      endAngle = 3.141592
      Set outerLoop(0) = ThisDrawing.ModelSpace.AddArc(center, radius, startAngle, endAngle)
      Set outerLoop(1) = ThisDrawing.ModelSpace.AddLine(outerLoop(0).StartPoint, outerLoop(0).EndPoint)

      ' 附加外回路到图案填充对象
      hatchObj.AppendOuterLoop (outerLoop)
  
      Dim innerLoop1(0) As AcadEntity
      center(0) = 50: center(1) = 34.5: center(2) = 0
      radius = 10
      Set innerLoop1(0) = ThisDrawing.ModelSpace.AddCircle(center, radius)
      hatchObj.AppendInnerLoop (innerLoop1)
      ' 将图案填充样式设定忽略
      hatchObj.HatchStyle = acHatchStyleIgnore
      ThisDrawing.Regen True
      

  End Sub
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-12-21 23:32:34 | 显示全部楼层
太复杂了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-1-2 10:33:14 | 显示全部楼层
这个例子在CAD开发人员帮助中就有的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-1-10 19:13:02 | 显示全部楼层
谢谢分享。还是不错的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-1-19 17:59:29 | 显示全部楼层
顶呀
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-24 14:26 , Processed in 0.517560 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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