找回密码 注册 QQ登录
开思网工业级高精度在线3D打印服务

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 16100|回复: 0
打印 上一主题 下一主题

[求助] vb编程求实体表面积

[复制链接]
跳转到指定楼层
1
发表于 2008-3-11 12:33:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

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

x
大家好 ,
前段时间在论坛上看见关于求实体表面积的文章,受益匪浅.看完程序不知该程序如何获取到指定实体的表面积,还请大家帮忙指教一下哈,谢谢!


已有代码如下:
Option Explicit

Public Enum swBodyType_e
    swSolidBody = 0
    swSheetBody = 1
    swWireBody = 2
    swMinimumBody = 3
    swGeneralBody = 4
    swEmptyBody = 5
End Enum

Sub main()
    Dim swApp                   As SldWorks.SldWorks
    Dim swModel                 As SldWorks.ModelDoc2
    Dim swPart                  As SldWorks.PartDoc
    Dim vBody                   As Variant
    Dim swBody                  As SldWorks.body2
    Dim swFace                  As SldWorks.face2
    Dim i                       As Long
    Dim j                       As Long
    Dim nTotArea                As Double
    Dim nArea(5)                As Double
    Dim bRet                    As Boolean
   
    Set swApp = CreateObject("SldWorks.Application")
    Set swModel = swApp.ActiveDoc
    Set swPart = swModel
   
    For i = 0 To 5
        vBody = swPart.GetBodies(i)
        
        If Not IsEmpty(vBody) Then
            For j = 0 To UBound(vBody)
                Set swBody = vBody(j)
                Set swFace = swBody.GetFirstFace
                While Not swFace Is Nothing
                    nArea(i) = nArea(i) + swFace.GetArea
               
                    Set swFace = swFace.GetNextFace
                Wend
            Next j
        End If
        
        nTotArea = nTotArea + nArea(i)
    Next i
   
    Debug.Print "Total Area = " + Str(nTotArea) + " m^2"
    For i = 0 To 5
        Debug.Print "  Area(" + Str(i) + ") = " + Str(nArea(i)) + " m^2"
    Next i
End Sub
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-12-5 09:09 , Processed in 0.033390 second(s), 13 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

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