Baue zuerst zwei neue Parameter
nola und
nolb für Breite und Stärke der Pfosten ein, sonst sind sie immer gleich wie die Stäbe:
Dann ändere das 3D-Script wie unten geschrieben. Die mit
! versehenen Zeilen haben nun keine Funktion mehr, in den roten Zeilen habe ich die Parameter für Pfostenbreite und Stärke eingebaut. Der Handlauf lässt sich nun aber nicht mehr einschalten, müsste man zusätzlich programmieren. Zudem bezieht sich die Geländerhöhe immer noch auf die Höhe inkl. Handlauf. Nicht perfekt aber so auf die Schnelle erfüllt es den Zweck vermutlich...
!! Railing Vert. Straight.gsm
IF gs_detlevel_3D="Off" then end
IF gs_shadow=0 THEN SHADOW OFF
IF gs_shadow=1 THEN SHADOW ON
pen gs_cont_pen
ADDx -a/2 !! Drag to Origo
!!!!!!!HANDRAIL!!!!!!!!
MATERIAL railing_mat
rotz -leca
rotx 90
cutplane
del 2
addx a
rotz 180+reca
rotx -90
cutplane
del 3
addz zzyzx-hrh_w/2-a_hohe-e_mod
addx -dx1
! tube 4, 4, 1+2+16+32,
! -hrw/2, -hrh/2, 0,
! hrw/2, -hrh/2, 0,
! hrw/2, hrh/2, 0,
! -hrw/2, hrh/2, 0,
! -1, 0, erhohung, 0,
! 0, 0, 0, 0,
! a+dx1+dx2, 0, erhohung*(a+dx1+dx2), 0,
! a+dx1+dx2+1, 0, erhohung*(a+dx1+dx2)-erhohung, 0
del 1
!!!!!!!UPPER CROSSBAR!!!!!!!!
addz -lh-ucbh_w/2-hrh_w/2
addx -dx1
tube 4, 4, 1+2+16+32,
-ucbw/2, -ucbh/2, 0,
ucbw/2, -ucbh/2, 0,
ucbw/2, ucbh/2, 0,
-ucbw/2, ucbh/2, 0,
-1, 0, erhohung, 0,
0, 0, 0, 0,
a+dx1+dx2, 0, erhohung*(a+dx1+dx2), 0,
a+dx1+dx2+1, 0, erhohung*(a+dx1+dx2)-erhohung, 0
del 3
!!!!!!!LOWER CROSSBAR!!!!!!!!
addz lh-a_hohe+lcbh_w/2-e_mod
addx -dx1
tube 4, 4, 1+2+16+32,
-lcbw/2, -lcbh/2, 0,
lcbw/2, -lcbh/2, 0,
lcbw/2, lcbh/2, 0,
-lcbw/2, lcbh/2, 0,
-1, 0, erhohung, 0,
0, 0, 0, 0,
a+dx1+dx2, 0, erhohung*(a+dx1+dx2), 0,
a+dx1+dx2+1, 0, erhohung*(a+dx1+dx2)-erhohung, 0
del 1
cutend
cutend
del 1
!!!!!!!!Vertical Bars!!!!!!!!
addx -dx/2
addz lh+lcbh_w
for n=1 to nob
addx n*dx
tube 4, 4, 1+2+16+32,
-bw/2, -bth/2, 0,
bw/2, -bth/2, 0,
bw/2, bth/2, 0,
-bw/2, bth/2, 0,
-erhohung2, 0, de+bar_w, 0,
0, 0, bar_w, 0,
0, 0, 0, 0,
erhohung2, 0, -de, 0
del 1
addz g_hohe/(nob-1)
next n
del nob
del 2
!!!!!!!!Legs!!!!!!!!
!*** Lower Legs ***
if nol<>1 then
dx2=(a-dx)/(nol-1)
endif
addx dx/2
for n=0 to nol-1
addx n*dx2
sprism_ railing_mat, railing_mat, railing_mat,
4, 0, 0, 0, 1, zzyzx-lh-2*ucbh_w, erho,
-nola/2, -nolb/2, 15,
nola/2, -nolb/2, 15,
nola/2, nolb/2, 15,
-nola/2, nolb/2, 15
del 1
if nol<>1 then addz g_hohe/(nol-1)
next n
del nol
if nol<>1 then del 1
!*** Upper Legs ***
addz zzyzx-hrh_w-lh
addx dx/2
for n=0 to nol-1
addx n*dx2
!tube 4, 4, 1+2+16+32,
! -bw/2, -bth/2, 0,
! bw/2, -bth/2, 0,
! bw/2, bth/2, 0,
! -bw/2, bth/2, 0,
! -erhohung2, 0, de+lh, 0,
! 0, 0, lh, 0,
! 0, 0, 0, 0,
! erhohung2, 0, -de, 0
del 1
if nol<>1 then addz g_hohe/(nol-1)
next n
del nol+1
DEL top
ArchiCAD CHE 5 - 27 - Windows 10