Παρασκευή 11 Απριλίου 2014

Acad VBA Utilities - Άθροιση επιφανειών

Η άθροιση επιφανειών βοηθά και βολεύει όταν πρόκειται να υπολογίσουμε αθροίσματα επιφανειών για ασφαλτοστρώσεις , δαπεδοκαλύψεις , πλακοστρώσεις κ.λ.π. Συνήθως , τις επιφάνειες που μας ενδιαφέρουν να αθροίσουμε , τις βάζουμε σε ένα δικό τους ξεχωριστό layer .





Ακολουθεί ενδεικτικό παράδειγμα το οποίο παρουσιάζει την μεθοδολογία που αναλύθηκε παραπάνω .

Sub CalcClosedAreas()

    Dim obj As Object
    
    Dim PArea As Double
     
    Dim i As Integer
    Dim txt As String
    
    
    PArea = 0#
    
    For Each obj In ThisDrawing.ModelSpace
        
        If obj.Layer = "PEZODR" Then
            If StrComp(obj.EntityName, "AcdbPolyline", 1) = 0 Then
                If obj.Closed = True Then
                    PArea = PArea + obj.Area
                End If
            End If
        End If
        
    Next
    
    MsgBox "Closed area : " & Str$(PArea)
    
End Sub

Στο παραπάνω παράδειγμα η άθροιση γίνεται μόνο για κλειστές επιφάνειες που βρίσκονται στο layer PEZODR.

Κατεβάστε ολόκληρο το παράδειγμα με τον κώδικα VBA ανοικτό για παρεμβάσεις .
Για να μεταβείτε στην οθόνη διόρθωσης του κώδικα πατείστε Alt-F11 μόλις φορτωθεί το αρχείο . 

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου