Option Strict Off
Option Explicit On
Friend Class clsPartDocument

    Public SolidEdgeVersion As Integer
    Public DocumentSize As Integer
    Public RecomputeTime As Double
    Public Volume As Double
    Public Name As String
    Public FeaturesDifferentCount As Integer

    Private mCenterOfGravity(3) As Double
    Private mvarFailedItems As clsFailedItems
    Private mvarWarnedItems As clsWarnedItems

    Public Sub SetCenterOfGravity(ByRef CenterOfGravity() As Double)
        Dim i As Short

        For i = 1 To 3
            mCenterOfGravity(i) = CenterOfGravity(i)
        Next
    End Sub

    Public Sub GetCenterOfGravity(ByRef CenterOfGravity() As Double)
        Dim i As Short

        For i = 1 To 3
            CenterOfGravity(i) = mCenterOfGravity(i)
        Next
    End Sub

    Public Function CompareCenterOfGravities(ByRef NewCenter() As Double) As Boolean
        Dim i As Short

        For i = 1 To 3
            If System.Math.Abs(mCenterOfGravity(i) - NewCenter(i)) > 0.0000001 Then
                CompareCenterOfGravities = False
                Exit Function
            End If
        Next

        CompareCenterOfGravities = True
    End Function

    Public ReadOnly Property DocumentType() As modOpenSave.DocumentTypes
        Get
            DocumentType = modOpenSave.DocumentTypes.typPartDocument
        End Get
    End Property

    Public ReadOnly Property WarnedItems() As clsWarnedItems
        Get
            If mvarWarnedItems Is Nothing Then
                mvarWarnedItems = New clsWarnedItems
            End If

            WarnedItems = mvarWarnedItems
        End Get
    End Property


    Public ReadOnly Property FailedItems() As clsFailedItems
        Get
            If mvarFailedItems Is Nothing Then
                mvarFailedItems = New clsFailedItems
            End If

            FailedItems = mvarFailedItems
        End Get
    End Property

    Protected Overrides Sub Finalize()
        'Class_Terminate_Renamed()
        mvarFailedItems = Nothing
        mvarWarnedItems = Nothing
        MyBase.Finalize()
    End Sub
End Class