乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 114|回复: 9

关于autocadVBA开发精彩实例教程6.2节螺栓模型

[复制链接]

5

主题

11

帖子

3

银币

初来乍到

Rank: 1

铜币
31
发表于 2005-4-20 13:50:00 | 显示全部楼层 |阅读模式
各位大侠,
能否帮忙看下此书中6.2螺栓模型程序,在创建六边形这一部分,有个set objpline=addpolygon(ptcen,6,7.5) ,调试过程中,说没有addpolygon()这个函数,难道在vba中没有这个函数的吗?应该怎么解决这个问题?请帮忙啊!万分感谢!
回复

使用道具 举报

25

主题

134

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
234
发表于 2005-4-20 15:54:00 | 显示全部楼层
addpolygon()可能是自己定义的一个函数,你在6.2节前后仔细找找,哪个地方可能有这个函数吧.
回复

使用道具 举报

5

主题

11

帖子

3

银币

初来乍到

Rank: 1

铜币
31
发表于 2005-4-20 16:52:00 | 显示全部楼层
我找了,没有的。请问有此函数的vb代码吗?谢谢了啊!
回复

使用道具 举报

25

主题

134

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
234
发表于 2005-4-20 17:25:00 | 显示全部楼层
我都找到了,代码如下:
'创建正多边形
Public Function AddPolygon(ByVal ptCen As Variant, ByVal number As Integer, ByVal radius As Double, _
                         Optional width As Double = 0, Optional angle As Double = 0) As AcadLWPolyline
                         '定义动态数组
                         Dim objPline As AcadLWPolyline
                         Dim ptArr() As Double
                         '顶点的个数为number,需要2*number个元素来表示
                         ReDim ptArr(2 * number - 1)
                         
                         '每条边对应的角度
                         Dim ang As Double
                         ang = 2 * PI / number
                         
                         '为点的坐标数组赋值
                         Dim i As Integer
                         For i = 0 To 2 * number - 1
                                                         If i Mod 2 = 0 Then
                                                                                         ptArr(i) = ptCen(0) + radius * Cos((i \ 2) * ang)
                                                         ElseIf i Mod 2  0 Then
                                                                                         ptArr(i) = ptCen(1) + radius * Sin((i \ 2) * ang)
                                                         End If
                         Next i
                         
                         '创建多段线,并调整其特性
                         Set objPline = AddLWPline(ptArr, width)
                         objPline.Closed = True
                         objPline.Rotate ptCen, angle
                         objPline.Update
                         
                         Set AddPolygon = objPline
End Function
回复

使用道具 举报

5

主题

11

帖子

3

银币

初来乍到

Rank: 1

铜币
31
发表于 2005-4-20 18:22:00 | 显示全部楼层
谢谢啊,在书上哪呢~?
回复

使用道具 举报

5

主题

11

帖子

3

银币

初来乍到

Rank: 1

铜币
31
发表于 2005-4-20 18:38:00 | 显示全部楼层
不对啊,我调试了,在AddLWPline(ptArr, width)         处调试不通,没有这个函数,难道这个也不是vba自带的么?需要自行编写?
回复

使用道具 举报

5

主题

11

帖子

3

银币

初来乍到

Rank: 1

铜币
31
发表于 2005-4-20 19:40:00 | 显示全部楼层
程序已经能够运行出来了,可是图象不对,不是如书上所示的螺栓图象,可完全是按照书上的程序运行啊?
回复

使用道具 举报

5

主题

11

帖子

3

银币

初来乍到

Rank: 1

铜币
31
发表于 2005-4-20 19:50:00 | 显示全部楼层
哪位高手能不能帮忙看一下下,
图象是

                               
登录/注册后可看大图

回复

使用道具 举报

5

主题

11

帖子

3

银币

初来乍到

Rank: 1

铜币
31
发表于 2005-4-20 19:53:00 | 显示全部楼层
图象是
www.sxszjzx.com/~c18/2.bmp
回复

使用道具 举报

34

主题

372

帖子

7

银币

中流砥柱

Rank: 25

铜币
508
发表于 2005-5-23 23:55:00 | 显示全部楼层
问题是否已经解决?
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-3 09:39 , Processed in 1.265137 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表