乐筑天下

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

vba旋转生成实体

[复制链接]

2

主题

7

帖子

1

银币

初来乍到

Rank: 1

铜币
15
发表于 2010-7-23 23:04:00 | 显示全部楼层 |阅读模式
求VBA旋转生成实体语句,如一个平面的圆绕一个轴旋转后生成圆环

jsidu4bgpub.jpg

jsidu4bgpub.jpg


,就是这个图标的语句。谢了!
回复

使用道具 举报

3

主题

103

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
115
发表于 2010-7-28 22:54:00 | 显示全部楼层
Sub Example_AddRevolvedSolid()
    ' 该示例通过面域沿一个轴旋转以创建实体。
    ' 面域是由一个弧和一根直线创建的。
    Dim curves(0 To 1) As AcadEntity
    ' 定义圆弧
    Dim centerPoint(0 To 2) As Double
    Dim radius As Double
    Dim startAngle As Double
    Dim endAngle As Double
    centerPoint(0) = 5#: centerPoint(1) = 3#: centerPoint(2) = 0#
    radius = 2#
    startAngle = 0
    endAngle = 3.141592
    Set curves(0) = ThisDrawing.ModelSpace.AddArc(centerPoint, radius, startAngle, endAngle)
   
    ' 定义直线
    Set curves(1) = ThisDrawing.ModelSpace.AddLine(curves(0).startPoint, curves(0).endPoint)
        
    ' 创建面域
    Dim regionObj As Variant
    regionObj = ThisDrawing.ModelSpace.AddRegion(curves)
    ZoomAll
    MsgBox "旋转该面域以创建实体。", , "AddRevolvedSolid 示例"
   
    ' 定义旋转轴
    Dim axisPt(0 To 2) As Double
    Dim axisDir(0 To 2) As Double
    Dim angle As Double
    axisPt(0) = 7: axisPt(1) = 2.5: axisPt(2) = 0
    axisDir(0) = 11: axisDir(1) = 1: axisDir(2) = 3
    angle = 6.28
        
    ' 创建实体
    Dim solidObj As Acad3DSolid
    Set solidObj = ThisDrawing.ModelSpace.AddRevolvedSolid(regionObj(0), axisPt, axisDir, angle)
    ZoomAll
   
     ' 更改视口的查看方向以更好地看清实体
    Dim NewDirection(0 To 2) As Double
    NewDirection(0) = -1: NewDirection(1) = -1: NewDirection(2) = 1
    ThisDrawing.ActiveViewport.direction = NewDirection
    ThisDrawing.ActiveViewport = ThisDrawing.ActiveViewport
    ZoomAll
    MsgBox "实体已创建完成", , "AddRevolvedSolid 示例"
End Sub
回复

使用道具 举报

2

主题

7

帖子

1

银币

初来乍到

Rank: 1

铜币
15
发表于 2010-7-30 12:59:00 | 显示全部楼层
谢了,就是这个东西,我的开发要完成了
回复

使用道具 举报

2

主题

7

帖子

1

银币

初来乍到

Rank: 1

铜币
15
发表于 2010-7-30 13:26:00 | 显示全部楼层
Sub Example_AddRevolvedSolid()
        Dim cc As AcadCircle
        Dim ptc(0 To 2) As Double
        Dim rc As Double
        ptc(0) = 0: ptc(1) = 0: ptc(2) = 0
        re = 5
         Set cc = ThisDrawing.ModelSpace.AddCircle(ptc, re)
    ' 创建面域
    Dim regionObj As Variant
    regionObj = ThisDrawing.ModelSpace.AddRegion(cc)
   
   
    ' 定义旋转轴
    Dim axisPt(0 To 2) As Double
    Dim axisDir(0 To 2) As Double
    Dim angle As Double
    axisPt(0) = 10: axisPt(1) = -5: axisPt(2) = 0
    axisDir(0) = 10: axisDir(1) = 5: axisDir(2) = 0
    angle = 6.28
        
    ' 创建实体
    Dim solidObj As Acad3DSolid
    Set solidObj = ThisDrawing.ModelSpace.AddRevolvedSolid(regionObj(0), axisPt, axisDir, angle)
    ZoomAll
End Sub
这又是这么回事?
按照你给的代码修改的

5nozslzygom.jpg

5nozslzygom.jpg


回复

使用道具 举报

2

主题

7

帖子

1

银币

初来乍到

Rank: 1

铜币
15
发表于 2010-8-1 22:58:00 | 显示全部楼层
求解答~~~~~~~~~~~~~~~~~~!!~!~!~!~!~!~!~!
回复

使用道具 举报

2

主题

7

帖子

1

银币

初来乍到

Rank: 1

铜币
15
发表于 2010-8-6 20:03:00 | 显示全部楼层
00000000000000000000000000
回复

使用道具 举报

2

主题

7

帖子

1

银币

初来乍到

Rank: 1

铜币
15
发表于 2010-8-12 14:50:00 | 显示全部楼层
版主,管理员。。。。。。。。帮忙解决下啊~~~~~~~~~~~~~~~~~~~~~~~~~~~!!!!!
谢谢~~~~~~~~~~~~~~~~~~!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-1 13:11 , Processed in 1.538996 second(s), 69 queries .

© 2020-2025 乐筑天下

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