home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Houseplan Collection
/
HRCD2005.ISO
/
data1.cab
/
Zusatz
/
3DS
/
DATA2.Z
/
Treppe.bas
< prev
next >
Wrap
BASIC Source File
|
1998-11-06
|
3KB
|
97 lines
Attribute VB_Name = "Treppe"
Option Explicit
Public exe As New ArCon.ArCon
Public Sub ErzeugeWendeltreppe(Stockwerk As ArCon.Story, PfostenObjekt As String)
' Die Konstruktionsdaten werden in einem PolygonWendelConstruction Objekt
' gesammelt.
Dim c As ArCon.PolygonWendelConstruction
Set c = exe.NewPolygonWendelConstruction
' Beginnen wir mit dem Polygon der Treppe...
Dim poly As ArCon.Point2DCollection
Set poly = exe.NewPoint2DCollection
poly.AddPoint 0, 0
poly.AddPoint 0, -5
poly.AddPoint 3, -7
poly.AddPoint 6, -5
poly.AddPoint 5, -2
poly.AddPoint 3, -2
poly.AddPoint 3, 2
c.Achslage = ACPWA_Mitte
c.SetPolygon poly
' Allgemeine Treppeneinstellungen
c.Bauart = ACPWS_Holztreppe
c.WinkelAmAntritt = 0
c.NiveauAmAntritt = 0
c.WinkelAmAustritt = 0
c.LaufBreiteAussen = 1
c.AnzahlSteigungen = 16
c.hoehe = 2.8
c.MitGelaenderLinks = True
c.MitGelaenderRechts = True
' GelΣndereinstellungen
c.GelaenderBauart = ACPW_Gelaender_Modern
c.HandlaufDurchmesser = ACPWQ_Kreis
c.HandlaufDurchmesser = 0.04
c.HandlaufMitKnicken = True
c.HandlaufHoehe = 0.9
c.MaximaleAuslenkungLinks = 0.06
c.MaximaleAuslenkungRechts = 0.06
' Fu▀lauf
c.MittlererFusslaufAbstand = 0.05
c.FusslaufBreite = 0.06
c.FusslaufDicke = 0.26
' StΣbe
c.StabQuerschnitt = ACPWQ_Rechteck
c.StabBreite = 0.04
c.StabDicke = 0.03
c.StabMaximalerAbstand = 0.15
' Einstellungen fⁿr Pfosten
If PfostenObjekt <> "" Then
c.PfostenQuerschnitt = ACPWQ_3DObjekt
c.pfostenObjektName = PfostenObjekt
Else
c.PfostenQuerschnitt = ACPWQ_Kreis
End If
c.PfostenBreite = 0.1
c.PfostenDicke = 0.1
c.PfostenDurchmesser = 0.08
c.PfostenLaenge = 1.2
' Damit sind alle Angaben fⁿr die Treppenkonstruktion vorhanden und
' wir k÷nnen das Konstruktionsobjekt eine Treppe erzeugen lassen.
Dim s As ArCon.StairCase, t As Long
t = FindeTreppentyp
Set s = c.CreateStairCase(t)
' Das PolygonWendelConstruction Objekt ist damit wertlos geworden,
' es darf jetzt nicht mehr weiter manipuliert werden. Zur Sicherheit
' entsorgen wir es.
Set c = Nothing
' Die erzeugte Treppe kommt nun in das ⁿbergebene Stockwerk
Stockwerk.PlaceStairCase s, False
End Sub
' Ermittle die Typkodierung fⁿr die erste polygonale Wendeltreppe aus Holz.
' Dies kann nur zur Laufzeit geschehen, da abhΣngig von der ArCon Installation
' unterschiedliche Treppentypen verfⁿgbar sind. Leider ist dies sprachabhΣngig...
Private Function FindeTreppentyp() As Long
Dim i As Long, num As Long
num = exe.AvailableStairCases
For i = 0 To num - 1
Dim n As String
n = exe.GetStairCaseName(i)
If InStr(n, "Holz") > 0 And InStr(n, "Wendel") > 0 And InStr(n, "Poly") > 0 Then Exit For
Next
' XXX - funktioniert noch nicht
FindeTreppentyp = 15 ' i
End Function