Die erzeugte Struktur breitet sich mit Hilfe eines Zufallsgenerators in x-y-Ebene aus, wobei sich einige Würfel überschneiden. Um dies zu vermeiden wird im nächsten Schritt eine Kontrolliste eingeführt, die die Positionen speichert und Doppelbelegungen verhindert.

weiter >


Sub setzeQuad(mittelPunkt() As Double, elevation As Double)
' Dim num As Integer num = 4
Dim wuerfel As Acad3DSolid
Dim length As Double, width As Double, height As Double
Dim center(0 To 2) As Double

' Angaben für den wuerfel
center(0) = mittelPunkt(0): center(1) = mittelPunkt(1): center(2) = mittelPunkt(2) - elevation / 2
height = elevation
length = 10
width = 10

' Würfel erstellen
Set wuerfel = ThisDrawing.ModelSpace.AddBox(center, length, width, height)

wuerfel.color = random(1, 255)
End Sub

Sub main()
Dim i As Integer
Dim u As Integer
Dim etage As Integer
Dim loops As Integer
Dim mitte(0 To 2) As Double
Dim oneSlice As Double
Dim angle As Double
Dim xW As Double
Dim yW As Double
Dim entscheid As Integer
Dim num As Double
num = 4
loops = 100
oneSlice = pi * 2 / num

For u = 1 To 10
etage = u
xW = 0
yW = 0
For i = 1 To loops
'entscheid = random(0#, 1#)
angle = Round((Rnd() * num + 1)) * oneSlice
'var angle = Math.floor(Math.random()*num+1)*oneSlice
mitte(0) = xW: mitte(1) = yW: mitte(2) = u * 10#
xW = xW + Cos(angle) * 11
yW = yW + Sin(angle) * 11
setzeQuad mitte, 10#
Next i
Next u
ZoomAll
End Sub

Function random(lower As Double, upper As Double)
random = Int((upper - lower + 1) * Rnd + lower)
End Function

Function pi()
pi = (Atn(1) * 4)
End Function

 
 
 
\\ Entwurfsforschung \ Strukturexperimente \ autoCAD_VBA experimente