注册 登录
明经CAD社区 返回首页

zoubo604的个人空间 http://www.mjtd.com/?282069 [收藏] [复制] [分享] [RSS]

留言板

facelist doodle涂鸦板

您需要登录后才可以留言 登录 | 注册


zsw23 2011-9-22 00:33
zoubo604: 的确好用.我现在就用了十多次了.我查的资料说复制到acad.xx的某个文件末尾.就可以随CAD启动了.记住AD命令就OK,当然也可以做个按钮.不知道你会不会这招. LI ...
我是把它放到启动组里自动加载,有些命令不太好记的话我就做个快捷键,我学了点皮毛,放弃了
zsw23 2011-9-21 17:57
进来再次感谢一下~
mccad 2011-9-16 17:51
zoubo604: 我昨天在明经网上好象也给你留了言,还有我的代码.能不能帮我解决填充不稳定的问题啊.我用的是addhatch方法.还是不稳定,为什么时填时不填啊.谢谢了
我已经很久不搞编程了,没有时间做这些事情。
zoubo604 2011-9-15 00:41
我本来不是用Sendcommand方法的,我用的AddHatch方法.这种填充也不稳定,一会能填充一会又填不出花纹来.不知是何故.以为我的花纹名是中文的原因,换成英文+数字的文件名还是一样.也试过用多段线来围成填充范围,闭合后,还是不行.能填充后,一段时间都可以.关闭CAD或者重启电脑后,又不能填充了.甚至在一张图里,同一个花纹,一个区域可以填充,另一个区域又不能填充.郁闷得很.我怀疑是填充比例或者是未找到边界的原因.最初不出来花纹,我调了比例,就出来了.但为什么以后又会不出来.后者的原因,手动填充时有时提示英语:要选择Y,然后系统提示找到几百个对象.下面还有内容
这个问题困扰我好久了,盼你帮我解决.谢谢.下面附一段代码.(填充部分)
For n1 = 2 To 9999
    patternName = ExcelSheet.Cells(n1, 9) '"solid" '花纹名
    PatternType = 1 '填充类型.0默认,1,自定义.2,3,.......0为ANSI,1为       2为其它预定义;3为      后面的参数不知道.
    '花纹0,1,2均可!!!!
    bAssociativity = True
    Set hatchObj = ThisDrawing.ModelSpace.AddHatch(PatternType, patternName, bAssociativity)
hatchObj.PatternScale = 12 '图案比例,   自定义的图案,必须要有这句,否则不出来花纹.比例小了,太密,不出来花纹
'hatchObj.HatchStyle = acHatchStyleIgnore 也可以不要这一句


        fch = ExcelSheet.Cells(n1, 1) '赋值到分层号fch
        If fch = 0 Then Exit For '遇到样长为0,退出循环
        hcsd = blc * -1 * ExcelSheet.Cells(n1, 3) '赋值到换层深度*比例尺*-1(向下画)

    p1(0) = 0
    p1(1) = hcsd
    p1(2) = 0

    p2(0) = ljj(9)
    p2(1) = hcsd
    p2(2) = 0 '上面两个点是用来画横线和标注的.
   
   
   
    point1(0) = ljj(8) + 6 ' 用于填充的第1个点坐标
    point1(1) = blc * -1 * ExcelSheet.Cells(n1, 2)
    point1(2) = 0
   
    point2(0) = point1(0) ' 用于填充的第2个点坐标
    point2(1) = hcsd
    point2(2) = 0
   
    point3(0) = ljj(8) + 25 ' 用于填充的第3个点坐标
    point3(1) = point2(1)
    point3(2) = 0
   
    point4(0) = point3(0) ' 用于填充的第4个点坐标
    point4(1) = point1(1)
    point4(2) = 0
   
    Set outerLoop(0) = ThisDrawing.ModelSpace.AddLine(point1, point2)
    Set outerLoop(1) = ThisDrawing.ModelSpace.AddLine(point2, point3)
    Set outerLoop(2) = ThisDrawing.ModelSpace.AddLine(point3, point4)
    Set outerLoop(3) = ThisDrawing.ModelSpace.AddLine(point4, point1)
    ' 向 Hatch 对象附加外边界, 并显示图案填充
    hatchObj.AppendOuterLoop (outerLoop) '添加边界
    hatchObj.Evaluate '充填
mccad 2011-9-14 18:15
zoubo604: 请教一下,VBA里的填充怎么不稳定啊,时填时不填的,不过问题经常出在那一种自定义的花纹上.不知何故.有朋友说是com通讯接口不稳定的原因,用VC和LISP从系统底层操作 ...
VBA的填充,只有指定外框线那种方法,无法做到在区域中点一个点就可以填充。
如果你使用了SendCommand方法,本身就是不稳定的。

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

GMT+8, 2024-4-26 11:28 , Processed in 0.087965 second(s), 9 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部