From 78d36019ec11d62d6fd016fcbe19f566d11771ff Mon Sep 17 00:00:00 2001 From: Mikko Rasa Date: Wed, 7 May 2014 23:14:49 +0300 Subject: [PATCH] Reorganize data files into a directory structure All object types have been split out of the *.dat files into individual files. As a side effect, their names have acquired a type-specific suffix. --- .../H0/accessories/M7039.object" | 0 .../H0/accessories/M7039.signal" | 19 + .../H0/axles/wagon-axle.object" | 0 .../H0/bogies/mindensiegen-bogie.object" | 0 .../H0/bogies/y25-bogie.object" | 0 "data/M\303\244rklin/H0/ctrack/M24064.track" | 14 + "data/M\303\244rklin/H0/ctrack/M24071.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24077.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24094.track" | 14 + "data/M\303\244rklin/H0/ctrack/M24107.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24115.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24130.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24172.track" | 14 + "data/M\303\244rklin/H0/ctrack/M24188.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24206.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24207.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24215.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24224.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24229.track" | 13 + "data/M\303\244rklin/H0/ctrack/M24230.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24236.track" | 14 + "data/M\303\244rklin/H0/ctrack/M24330.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24360.track" | 13 + "data/M\303\244rklin/H0/ctrack/M24430.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24530.track" | 15 + "data/M\303\244rklin/H0/ctrack/M24611.track" | 21 + "data/M\303\244rklin/H0/ctrack/M24612.track" | 21 + "data/M\303\244rklin/H0/ctrack/M24624.track" | 35 + "data/M\303\244rklin/H0/ctrack/M24630.track" | 27 + "data/M\303\244rklin/H0/ctrack/M24640.track" | 19 + "data/M\303\244rklin/H0/ctrack/M24649.track" | 19 + "data/M\303\244rklin/H0/ctrack/M24671.track" | 28 + "data/M\303\244rklin/H0/ctrack/M24672.track" | 28 + "data/M\303\244rklin/H0/ctrack/M24711.track" | 21 + "data/M\303\244rklin/H0/ctrack/M24712.track" | 21 + "data/M\303\244rklin/H0/ctrack/M24740.track" | 19 + "data/M\303\244rklin/H0/ctrack/M24912.track" | 15 + .../M\303\244rklin/H0/ctrack/M24977.object" | 0 "data/M\303\244rklin/H0/ctrack/M24977.track" | 15 + "data/M\303\244rklin/H0/ctrack/ctrack.trkapp" | 36 + .../M\303\244rklin/H0/ctrack/track.tech" | 0 .../H0/electric/M36850-axle.object" | 0 .../H0/electric/M36850-body.object" | 0 .../H0/electric/M36850-bogie.object" | 0 "data/M\303\244rklin/H0/electric/M36850.veh" | 32 + .../H0/electric/M37225-02-body.object" | 0 .../H0/electric/M37225-02-bogie.object" | 0 .../M\303\244rklin/H0/electric/M37225-02.veh" | 37 + .../M\303\244rklin/H0/electric/M37574-01.veh" | 38 + .../H0/electric/M37851-body.object" | 0 "data/M\303\244rklin/H0/electric/M37851.veh" | 34 + .../H0/electric/M39410-axle.object" | 0 .../H0/electric/M39410-body.object" | 0 .../H0/electric/M39410-bogie.object" | 0 "data/M\303\244rklin/H0/electric/M39410.veh" | 35 + .../M\303\244rklin/H0/emu/M37504-axle.object" | 0 .../M\303\244rklin/H0/emu/M37504-body.object" | 0 .../H0/emu/M37504-bogie.object" | 0 "data/M\303\244rklin/H0/emu/M37504.veh" | 37 + .../H0/emu/M37504b-body.object" | 0 "data/M\303\244rklin/H0/emu/M37504b.veh" | 31 + "data/M\303\244rklin/H0/emu/M37504c.veh" | 32 + .../H0/freight/M29859b-body.object" | 0 "data/M\303\244rklin/H0/freight/M29859b.veh" | 27 + "data/M\303\244rklin/H0/freight/M4410.veh" | 16 + "data/M\303\244rklin/H0/freight/M4423.veh" | 16 + .../H0/freight/M4442-body.object" | 0 "data/M\303\244rklin/H0/freight/M4442.veh" | 16 + .../H0/freight/M46034e-body.object" | 0 "data/M\303\244rklin/H0/freight/M46034e.veh" | 17 + .../H0/freight/M4624-body.object" | 0 "data/M\303\244rklin/H0/freight/M4624.veh" | 28 + .../H0/freight/M46274-body.object" | 0 "data/M\303\244rklin/H0/freight/M46274.veh" | 16 + "data/M\303\244rklin/H0/freight/M46717.veh" | 17 + "data/M\303\244rklin/H0/freight/M4690.veh" | 27 + "data/M\303\244rklin/H0/freight/M46977.veh" | 16 + "data/M\303\244rklin/H0/freight/M4699.veh" | 16 + .../H0/freight/M47001-body.object" | 0 "data/M\303\244rklin/H0/freight/M47001.veh" | 28 + .../H0/freight/M47072-body.object" | 0 "data/M\303\244rklin/H0/freight/M47072.veh" | 28 + .../H0/freight/M48943-body.object" | 0 "data/M\303\244rklin/H0/freight/M48943.veh" | 16 + .../M\303\244rklin/H0/m\303\244rklin_h0.cat" | 180 ++++ .../H0/passenger/M43222-body.object" | 0 "data/M\303\244rklin/H0/passenger/M43222.veh" | 26 + .../H0/passenger/M43800-body.object" | 0 .../H0/passenger/M43800-bogie.object" | 0 "data/M\303\244rklin/H0/passenger/M43800.veh" | 29 + .../H0/steam/M29530-01-body.object" | 0 "data/M\303\244rklin/H0/steam/M29530-01.veh" | 34 + .../H0/steam/M29820-02-axle-front.object" | 0 .../H0/steam/M29820-02-axle-mid.object" | 0 .../H0/steam/M29820-02-axle.object" | 0 .../H0/steam/M29820-02-body.object" | 0 .../H0/steam/M29820-02-bogie-front.object" | 0 .../steam/M29820-02-rod-combination.object" | 0 .../H0/steam/M29820-02-rod-coupling.object" | 0 .../H0/steam/M29820-02-rod-eccentric.object" | 0 .../H0/steam/M29820-02-rod-lifting.object" | 0 .../H0/steam/M29820-02-rod-link.object" | 0 .../H0/steam/M29820-02-rod-main.object" | 0 .../H0/steam/M29820-02-rod-piston.object" | 0 .../H0/steam/M29820-02-rod-radius.object" | 0 .../H0/steam/M29820-02-rod-reach.object" | 0 .../H0/steam/M29820-02-rod-transfer.object" | 0 .../H0/steam/M29820-02-rod-union.object" | 0 .../H0/steam/M29820-02-rod-valve.object" | 0 "data/M\303\244rklin/H0/steam/M29820-02.veh" | 254 +++++ .../H0/steam/M29820-02b-body.object" | 0 .../H0/steam/M29820-02b-bogie.object" | 0 "data/M\303\244rklin/H0/steam/M29820-02b.veh" | 29 + .../H0/steam/M37968-body.object" | 0 .../H0/steam/M37968-bogie-back.object" | 0 .../H0/steam/M37968-bogie-front.object" | 0 "data/M\303\244rklin/H0/steam/M37968.veh" | 38 + .../H0/steam/M39230-body.object" | 0 "data/M\303\244rklin/H0/steam/M39230.veh" | 33 + .../H0/steam/M39230b-body.object" | 0 "data/M\303\244rklin/H0/steam/M39230b.veh" | 27 + dejavu-12.font => data/dejavu-12.font | 0 .../digitalreadout-16.font | 0 gui.png => data/gui.png | Bin r2c2.res => data/r2c2.res | 0 data/{ => r2c2}/beamgate.object | 0 data/{ => r2c2}/ghost.technique | 0 terrain.dat => data/r2c2/r2c2.cat | 19 +- data/{ => r2c2}/sky.object | 0 data/{ => r2c2}/sky.shader | 0 data/r2c2/tb5.terr | 13 + data/{ => r2c2}/terrain.tech | 0 locos.dat | 603 ------------ source/3d/catalogue.cpp | 7 +- source/3d/catalogue.h | 1 - source/designer/designer.cpp | 5 +- source/engineer/engineer.cpp | 7 +- source/libr2c2/catalogue.cpp | 75 +- source/libr2c2/catalogue.h | 8 + tracks.dat | 916 ------------------ wagons.dat | 541 ----------- 141 files changed, 1949 insertions(+), 2092 deletions(-) rename data/homesignal.object => "data/M\303\244rklin/H0/accessories/M7039.object" (100%) create mode 100644 "data/M\303\244rklin/H0/accessories/M7039.signal" rename wagon-axle.object => "data/M\303\244rklin/H0/axles/wagon-axle.object" (100%) rename mindensiegen-bogie.object => "data/M\303\244rklin/H0/bogies/mindensiegen-bogie.object" (100%) rename y25-bogie.object => "data/M\303\244rklin/H0/bogies/y25-bogie.object" (100%) create mode 100644 "data/M\303\244rklin/H0/ctrack/M24064.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24071.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24077.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24094.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24107.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24115.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24130.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24172.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24188.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24206.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24207.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24215.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24224.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24229.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24230.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24236.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24330.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24360.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24430.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24530.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24611.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24612.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24624.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24630.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24640.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24649.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24671.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24672.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24711.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24712.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24740.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/M24912.track" rename data/bumper.object => "data/M\303\244rklin/H0/ctrack/M24977.object" (100%) create mode 100644 "data/M\303\244rklin/H0/ctrack/M24977.track" create mode 100644 "data/M\303\244rklin/H0/ctrack/ctrack.trkapp" rename data/track.technique => "data/M\303\244rklin/H0/ctrack/track.tech" (100%) rename br185-axle.object => "data/M\303\244rklin/H0/electric/M36850-axle.object" (100%) rename br185-body.object => "data/M\303\244rklin/H0/electric/M36850-body.object" (100%) rename br185-bogie.object => "data/M\303\244rklin/H0/electric/M36850-bogie.object" (100%) create mode 100644 "data/M\303\244rklin/H0/electric/M36850.veh" rename br194-body.object => "data/M\303\244rklin/H0/electric/M37225-02-body.object" (100%) rename br194-bogie.object => "data/M\303\244rklin/H0/electric/M37225-02-bogie.object" (100%) create mode 100644 "data/M\303\244rklin/H0/electric/M37225-02.veh" create mode 100644 "data/M\303\244rklin/H0/electric/M37574-01.veh" rename data/br150-body.object => "data/M\303\244rklin/H0/electric/M37851-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/electric/M37851.veh" rename bre41-axle.object => "data/M\303\244rklin/H0/electric/M39410-axle.object" (100%) rename bre41-body.object => "data/M\303\244rklin/H0/electric/M39410-body.object" (100%) rename bre41-bogie.object => "data/M\303\244rklin/H0/electric/M39410-bogie.object" (100%) create mode 100644 "data/M\303\244rklin/H0/electric/M39410.veh" rename data/br420-axle.object => "data/M\303\244rklin/H0/emu/M37504-axle.object" (100%) rename data/br420-body.object => "data/M\303\244rklin/H0/emu/M37504-body.object" (100%) rename data/br420-bogie.object => "data/M\303\244rklin/H0/emu/M37504-bogie.object" (100%) create mode 100644 "data/M\303\244rklin/H0/emu/M37504.veh" rename data/br421-body.object => "data/M\303\244rklin/H0/emu/M37504b-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/emu/M37504b.veh" create mode 100644 "data/M\303\244rklin/H0/emu/M37504c.veh" rename zas999.object => "data/M\303\244rklin/H0/freight/M29859b-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/freight/M29859b.veh" create mode 100644 "data/M\303\244rklin/H0/freight/M4410.veh" create mode 100644 "data/M\303\244rklin/H0/freight/M4423.veh" rename z999.object => "data/M\303\244rklin/H0/freight/M4442-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/freight/M4442.veh" rename omm52-body.object => "data/M\303\244rklin/H0/freight/M46034e-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/freight/M46034e.veh" rename falsu176-body.object => "data/M\303\244rklin/H0/freight/M4624-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/freight/M4624.veh" rename gmhs54-body.object => "data/M\303\244rklin/H0/freight/M46274-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/freight/M46274.veh" create mode 100644 "data/M\303\244rklin/H0/freight/M46717.veh" create mode 100644 "data/M\303\244rklin/H0/freight/M4690.veh" create mode 100644 "data/M\303\244rklin/H0/freight/M46977.veh" create mode 100644 "data/M\303\244rklin/H0/freight/M4699.veh" rename rs684-body.object => "data/M\303\244rklin/H0/freight/M47001-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/freight/M47001.veh" rename sgns691-body.object => "data/M\303\244rklin/H0/freight/M47072-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/freight/M47072.veh" rename btr10-body.object => "data/M\303\244rklin/H0/freight/M48943-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/freight/M48943.veh" create mode 100644 "data/M\303\244rklin/H0/m\303\244rklin_h0.cat" rename schurzenwagen-body.object => "data/M\303\244rklin/H0/passenger/M43222-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/passenger/M43222.veh" rename b4nzb64-body.object => "data/M\303\244rklin/H0/passenger/M43800-body.object" (100%) rename b4nzb64-bogie.object => "data/M\303\244rklin/H0/passenger/M43800-bogie.object" (100%) create mode 100644 "data/M\303\244rklin/H0/passenger/M43800.veh" rename br86-body.object => "data/M\303\244rklin/H0/steam/M29530-01-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/steam/M29530-01.veh" rename br50-axle-front.object => "data/M\303\244rklin/H0/steam/M29820-02-axle-front.object" (100%) rename br50-axle-mid.object => "data/M\303\244rklin/H0/steam/M29820-02-axle-mid.object" (100%) rename br50-axle.object => "data/M\303\244rklin/H0/steam/M29820-02-axle.object" (100%) rename br50-body.object => "data/M\303\244rklin/H0/steam/M29820-02-body.object" (100%) rename br50-bogie-front.object => "data/M\303\244rklin/H0/steam/M29820-02-bogie-front.object" (100%) rename br50-rod-combination.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-combination.object" (100%) rename br50-rod-coupling.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-coupling.object" (100%) rename br50-rod-eccentric.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-eccentric.object" (100%) rename br50-rod-lifting.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-lifting.object" (100%) rename br50-rod-link.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-link.object" (100%) rename br50-rod-main.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-main.object" (100%) rename br50-rod-piston.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-piston.object" (100%) rename br50-rod-radius.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-radius.object" (100%) rename br50-rod-reach.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-reach.object" (100%) rename br50-rod-transfer.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-transfer.object" (100%) rename br50-rod-union.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-union.object" (100%) rename br50-rod-valve.object => "data/M\303\244rklin/H0/steam/M29820-02-rod-valve.object" (100%) create mode 100644 "data/M\303\244rklin/H0/steam/M29820-02.veh" rename br50-tender-body.object => "data/M\303\244rklin/H0/steam/M29820-02b-body.object" (100%) rename br50-tender-bogie.object => "data/M\303\244rklin/H0/steam/M29820-02b-bogie.object" (100%) create mode 100644 "data/M\303\244rklin/H0/steam/M29820-02b.veh" rename data/br96-body.object => "data/M\303\244rklin/H0/steam/M37968-body.object" (100%) rename data/br96-bogie-back.object => "data/M\303\244rklin/H0/steam/M37968-bogie-back.object" (100%) rename data/br96-bogie-front.object => "data/M\303\244rklin/H0/steam/M37968-bogie-front.object" (100%) create mode 100644 "data/M\303\244rklin/H0/steam/M37968.veh" rename br23-body.object => "data/M\303\244rklin/H0/steam/M39230-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/steam/M39230.veh" rename br23-tender-body.object => "data/M\303\244rklin/H0/steam/M39230b-body.object" (100%) create mode 100644 "data/M\303\244rklin/H0/steam/M39230b.veh" rename dejavu-12.font => data/dejavu-12.font (100%) rename digitalreadout-16.font => data/digitalreadout-16.font (100%) rename gui.png => data/gui.png (100%) rename r2c2.res => data/r2c2.res (100%) rename data/{ => r2c2}/beamgate.object (100%) rename data/{ => r2c2}/ghost.technique (100%) rename terrain.dat => data/r2c2/r2c2.cat (81%) rename data/{ => r2c2}/sky.object (100%) rename data/{ => r2c2}/sky.shader (100%) create mode 100644 data/r2c2/tb5.terr rename data/{ => r2c2}/terrain.tech (100%) delete mode 100644 locos.dat delete mode 100644 tracks.dat delete mode 100644 wagons.dat diff --git a/data/homesignal.object "b/data/M\303\244rklin/H0/accessories/M7039.object" similarity index 100% rename from data/homesignal.object rename to "data/M\303\244rklin/H0/accessories/M7039.object" diff --git "a/data/M\303\244rklin/H0/accessories/M7039.signal" "b/data/M\303\244rklin/H0/accessories/M7039.signal" new file mode 100644 index 0000000..286765c --- /dev/null +++ "b/data/M\303\244rklin/H0/accessories/M7039.signal" @@ -0,0 +1,19 @@ +article_number +{ + vendor "Märklin"; + article "7039"; +}; +name "Home signal"; + +indication "Hp1" +{ + aspect 0; + free_blocks 1; +}; +indication "Hp0" +{ + aspect 1; + free_blocks 0; +}; + +object "M7039.object"; diff --git a/wagon-axle.object "b/data/M\303\244rklin/H0/axles/wagon-axle.object" similarity index 100% rename from wagon-axle.object rename to "data/M\303\244rklin/H0/axles/wagon-axle.object" diff --git a/mindensiegen-bogie.object "b/data/M\303\244rklin/H0/bogies/mindensiegen-bogie.object" similarity index 100% rename from mindensiegen-bogie.object rename to "data/M\303\244rklin/H0/bogies/mindensiegen-bogie.object" diff --git a/y25-bogie.object "b/data/M\303\244rklin/H0/bogies/y25-bogie.object" similarity index 100% rename from y25-bogie.object rename to "data/M\303\244rklin/H0/bogies/y25-bogie.object" diff --git "a/data/M\303\244rklin/H0/ctrack/M24064.track" "b/data/M\303\244rklin/H0/ctrack/M24064.track" new file mode 100644 index 0000000..31f51ff --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24064.track" @@ -0,0 +1,14 @@ +article_number +{ + vendor "Märklin"; + article "24064"; +}; +name "Straight, 64.3 mm"; +description "R3-R4-R5 spacing"; + +appearance "ctrack.trkapp"; + +part +{ + length 64.3; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24071.track" "b/data/M\303\244rklin/H0/ctrack/M24071.track" new file mode 100644 index 0000000..fa35282 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24071.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24071"; +}; +name "Straight, 70.8 mm"; +description "For slim turnouts"; + +appearance "ctrack.trkapp"; +autofit_preference 0; + +part +{ + length 70.8; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24077.track" "b/data/M\303\244rklin/H0/ctrack/M24077.track" new file mode 100644 index 0000000..ec7cc55 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24077.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24077"; +}; +name "Straight, 77.5 mm"; +description "R1-R2-R3 spacing"; + +appearance "ctrack.trkapp"; +autofit_preference 2; + +part +{ + length 77.5; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24094.track" "b/data/M\303\244rklin/H0/ctrack/M24094.track" new file mode 100644 index 0000000..64cc86c --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24094.track" @@ -0,0 +1,14 @@ +article_number +{ + vendor "Märklin"; + article "24094"; +}; +name "Straight, 94.2 mm"; + +appearance "ctrack.trkapp"; +autofit_preference 2; + +part +{ + length 94.2; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24107.track" "b/data/M\303\244rklin/H0/ctrack/M24107.track" new file mode 100644 index 0000000..7ac6a7e --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24107.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24107"; +}; +name "Curve, R1, 7.5°"; +description "R = 360 mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 7.5; + radius 360; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24115.track" "b/data/M\303\244rklin/H0/ctrack/M24115.track" new file mode 100644 index 0000000..46f14ed --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24115.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24115"; +}; +name "Curve, R1, 15°"; +description "R = 360 mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 15; + radius 360; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24130.track" "b/data/M\303\244rklin/H0/ctrack/M24130.track" new file mode 100644 index 0000000..fce0272 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24130.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24130"; +}; +name "Curve, R1, 30°"; +description "R = 360 mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 30; + radius 360; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24172.track" "b/data/M\303\244rklin/H0/ctrack/M24172.track" new file mode 100644 index 0000000..8b92dee --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24172.track" @@ -0,0 +1,14 @@ +article_number +{ + vendor "Märklin"; + article "24172"; +}; +name "Straight, 171.7 mm"; + +appearance "ctrack.trkapp"; +autofit_preference 2; + +part +{ + length 171.7; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24188.track" "b/data/M\303\244rklin/H0/ctrack/M24188.track" new file mode 100644 index 0000000..adf5376 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24188.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24188"; +}; +name "Straight, 188.3 mm"; +description "Turnout length"; + +appearance "ctrack.trkapp"; +autofit_preference 2; + +part +{ + length 188.3; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24206.track" "b/data/M\303\244rklin/H0/ctrack/M24206.track" new file mode 100644 index 0000000..38a7fbd --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24206.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24206"; +}; +name "Curve, R2, 5.7°"; +description "R = 437.5 mm, complements turnout to 30°"; + +appearance "ctrack.trkapp"; + +part +{ + length 5.7; + radius 437.5; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24207.track" "b/data/M\303\244rklin/H0/ctrack/M24207.track" new file mode 100644 index 0000000..c0d7ec5 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24207.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24207"; +}; +name "Curve, R2, 7.5°"; +description "R = 437.5 mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 7.5; + radius 437.5; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24215.track" "b/data/M\303\244rklin/H0/ctrack/M24215.track" new file mode 100644 index 0000000..62eb6cc --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24215.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24215"; +}; +name "Curve, R2, 15°"; +description "R = 437.5 mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 15; + radius 437.5; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24224.track" "b/data/M\303\244rklin/H0/ctrack/M24224.track" new file mode 100644 index 0000000..693ebae --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24224.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24224"; +}; +name "Curve, R2, 24.3°"; +description "R = 437.5 mm, turnout angle"; + +appearance "ctrack.trkapp"; + +part +{ + length 24.3; + radius 437.5; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24229.track" "b/data/M\303\244rklin/H0/ctrack/M24229.track" new file mode 100644 index 0000000..5261c79 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24229.track" @@ -0,0 +1,13 @@ +article_number +{ + vendor "Märklin"; + article "24229"; +}; +name "Straight, 229.3 mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 229.3; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24230.track" "b/data/M\303\244rklin/H0/ctrack/M24230.track" new file mode 100644 index 0000000..a87d63d --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24230.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24230"; +}; +name "Curve, R2, 30°"; +description "R = 437.5 mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 30; + radius 437.5; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24236.track" "b/data/M\303\244rklin/H0/ctrack/M24236.track" new file mode 100644 index 0000000..40af5b9 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24236.track" @@ -0,0 +1,14 @@ +article_number +{ + vendor "Märklin"; + article "24236"; +}; +name "Straight, 236.1 mm"; +description "Slim turnout length"; + +appearance "ctrack.trkapp"; + +part +{ + length 236.1; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24330.track" "b/data/M\303\244rklin/H0/ctrack/M24330.track" new file mode 100644 index 0000000..bf713f0 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24330.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24330"; +}; +name "Curve, R3, 30°"; +description "R = 515mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 30; + radius 515; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24360.track" "b/data/M\303\244rklin/H0/ctrack/M24360.track" new file mode 100644 index 0000000..032bf70 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24360.track" @@ -0,0 +1,13 @@ +article_number +{ + vendor "Märklin"; + article "24360"; +}; +name "Straight, 360 mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 360; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24430.track" "b/data/M\303\244rklin/H0/ctrack/M24430.track" new file mode 100644 index 0000000..77cefb1 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24430.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24430"; +}; +name "Curve, R4, 30°"; +description "R = 579.3mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 30; + radius 579.3; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24530.track" "b/data/M\303\244rklin/H0/ctrack/M24530.track" new file mode 100644 index 0000000..c27871b --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24530.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24530"; +}; +name "Curve, R5, 30°"; +description "R = 643.6mm"; + +appearance "ctrack.trkapp"; + +part +{ + length 30; + radius 643.6; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24611.track" "b/data/M\303\244rklin/H0/ctrack/M24611.track" new file mode 100644 index 0000000..3f35189 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24611.track" @@ -0,0 +1,21 @@ +article_number +{ + vendor "Märklin"; + article "24611"; +}; +name "Turnout, left"; +description "R2, R = 437.5 mm, 24.3°"; + +appearance "ctrack.trkapp"; + +part +{ + length 188.3; + path 0; +}; +part +{ + length 24.3; + radius 437.5; + path 1; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24612.track" "b/data/M\303\244rklin/H0/ctrack/M24612.track" new file mode 100644 index 0000000..4c4c0b6 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24612.track" @@ -0,0 +1,21 @@ +article_number +{ + vendor "Märklin"; + article "24612"; +}; +name "Turnout, right"; +description "R2, R = 437.5 mm, 24.3°"; + +appearance "ctrack.trkapp"; + +part +{ + length 188.3; + path 0; +}; +part +{ + length 24.3; + radius -437.5; + path 1; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24624.track" "b/data/M\303\244rklin/H0/ctrack/M24624.track" new file mode 100644 index 0000000..ce77d55 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24624.track" @@ -0,0 +1,35 @@ +article_number +{ + vendor "Märklin"; + article "24624"; +}; +name "Turnout, double slip"; +description "R2, R = 437.5 mm, 24.3°"; + +appearance "ctrack.trkapp"; +state_bits 1; + +part +{ + length 188.3; + path 0; +}; +part +{ + length 24.3; + radius -437.5; + path 1; +}; +part +{ + start 8.34 38.74 -24.3; + length 188.3; + path 2; +}; +part +{ + start 8.34 38.74 -24.3; + length 24.3; + radius 437.5; + path 3; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24630.track" "b/data/M\303\244rklin/H0/ctrack/M24630.track" new file mode 100644 index 0000000..da1e3c6 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24630.track" @@ -0,0 +1,27 @@ +article_number +{ + vendor "Märklin"; + article "24630"; +}; +name "Turnout, 3-way"; +description "R2, R = 437.5 mm, 24.3°"; + +appearance "ctrack.trkapp"; + +part +{ + length 188.3; + path 0; +}; +part +{ + length 24.3; + radius 437.5; + path 2; +}; +part +{ + length 24.3; + radius -437.5; + path 1; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24640.track" "b/data/M\303\244rklin/H0/ctrack/M24640.track" new file mode 100644 index 0000000..4c9cfac --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24640.track" @@ -0,0 +1,19 @@ +article_number +{ + vendor "Märklin"; + article "24640"; +}; +name "Crossing, 24.3°"; +description "Turnout angle"; + +appearance "ctrack.trkapp"; + +part +{ + length 188.3; +}; +part +{ + start 8.34 38.74 -24.3; + length 188.3; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24649.track" "b/data/M\303\244rklin/H0/ctrack/M24649.track" new file mode 100644 index 0000000..38f6587 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24649.track" @@ -0,0 +1,19 @@ +article_number +{ + vendor "Märklin"; + article "24649"; +}; +name "Crossing, 48.6°"; +description "2× turnout angle"; + +appearance "ctrack.trkapp"; + +part +{ + length 103.3; +}; +part +{ + start 17.49 38.74 -48.6; + length 103.3; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24671.track" "b/data/M\303\244rklin/H0/ctrack/M24671.track" new file mode 100644 index 0000000..5e4792c --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24671.track" @@ -0,0 +1,28 @@ +article_number +{ + vendor "Märklin"; + article "24671"; +}; +name "Curved turnout, left"; +description "R1, R = 360 mm, 30°"; + +appearance "ctrack.trkapp"; + +part +{ + length 77.5; + path 0; +}; +part +{ + start 77.5 0 0; + length 30; + radius 360; + path 0; +}; +part +{ + length 30; + radius 360; + path 1; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24672.track" "b/data/M\303\244rklin/H0/ctrack/M24672.track" new file mode 100644 index 0000000..7e459a4 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24672.track" @@ -0,0 +1,28 @@ +article_number +{ + vendor "Märklin"; + article "24672"; +}; +name "Curved turnout, right"; +description "R1, R = 360 mm, 30°"; + +appearance "ctrack.trkapp"; + +part +{ + length 77.5; + path 0; +}; +part +{ + start 77.5 0 0; + length 30; + radius -360; + path 0; +}; +part +{ + length 30; + radius -360; + path 1; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24711.track" "b/data/M\303\244rklin/H0/ctrack/M24711.track" new file mode 100644 index 0000000..86cf9c0 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24711.track" @@ -0,0 +1,21 @@ +article_number +{ + vendor "Märklin"; + article "24711"; +}; +name "Slim turnout, left"; +description "R = 1114.6mm, 12.1°"; + +appearance "ctrack.trkapp"; + +part +{ + length 236.1; + path 0; +}; +part +{ + length 12.1; + radius 1114.6; + path 1; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24712.track" "b/data/M\303\244rklin/H0/ctrack/M24712.track" new file mode 100644 index 0000000..07cdc78 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24712.track" @@ -0,0 +1,21 @@ +article_number +{ + vendor "Märklin"; + article "24712"; +}; +name "Slim turnout, right"; +description "R = 1114.6mm, 12.1°"; + +appearance "ctrack.trkapp"; + +part +{ + length 236.1; + path 0; +}; +part +{ + length 12.1; + radius -1114.6; + path 1; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24740.track" "b/data/M\303\244rklin/H0/ctrack/M24740.track" new file mode 100644 index 0000000..19d8339 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24740.track" @@ -0,0 +1,19 @@ +article_number +{ + vendor "Märklin"; + article "24740"; +}; +name "Slim crossing, 12.1°"; +description "Slim turnout angle"; + +appearance "ctrack.trkapp"; + +part +{ + length 236.1; +}; +part +{ + start 2.62 24.75 -12.1; + length 236.1; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/M24912.track" "b/data/M\303\244rklin/H0/ctrack/M24912.track" new file mode 100644 index 0000000..43fa995 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24912.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24912"; +}; +name "Curve, 12.1°"; +description "R = 1114.6mm, slim turnout angle"; + +appearance "ctrack.trkapp"; + +part +{ + length 12.1; + radius 1114.6; +}; diff --git a/data/bumper.object "b/data/M\303\244rklin/H0/ctrack/M24977.object" similarity index 100% rename from data/bumper.object rename to "data/M\303\244rklin/H0/ctrack/M24977.object" diff --git "a/data/M\303\244rklin/H0/ctrack/M24977.track" "b/data/M\303\244rklin/H0/ctrack/M24977.track" new file mode 100644 index 0000000..e7a8a02 --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/M24977.track" @@ -0,0 +1,15 @@ +article_number +{ + vendor "Märklin"; + article "24977"; +}; +name "Bumper"; + +appearance "ctrack.trkapp"; +object "M24977.object"; + +part +{ + length 77.5; + dead_end true; +}; diff --git "a/data/M\303\244rklin/H0/ctrack/ctrack.trkapp" "b/data/M\303\244rklin/H0/ctrack/ctrack.trkapp" new file mode 100644 index 0000000..e45c02a --- /dev/null +++ "b/data/M\303\244rklin/H0/ctrack/ctrack.trkapp" @@ -0,0 +1,36 @@ +gauge 16.5; +rail_profile +{ + point 1.5 0.0; + smooth_point 1.5 0.3; + smooth_point 0.8 0.4; + smooth_point 0.8 1.4; + smooth_point 1.0 1.6; + smooth_point 1.0 2.1; + smooth_point 0.8 2.3; + smooth_point 0.2 2.3; + smooth_point 0.0 2.1; + smooth_point 0.0 1.6; + smooth_point 0.2 1.4; + smooth_point 0.2 0.4; + smooth_point -0.5 0.3; + point -0.5 0.0; +}; +ballast_profile +{ + point 20.0 0.0; + point 14.0 7.5; + point -14.0 7.5; + point -20.0 0.0; +}; +tie_profile +{ + point 13.5 0.0; + point 13.5 0.5; + point -13.5 0.5; + point -13.5 0.0; +}; +tie_length 2.2; +tie_spacing 7.8; + +technique "track.tech"; diff --git a/data/track.technique "b/data/M\303\244rklin/H0/ctrack/track.tech" similarity index 100% rename from data/track.technique rename to "data/M\303\244rklin/H0/ctrack/track.tech" diff --git a/br185-axle.object "b/data/M\303\244rklin/H0/electric/M36850-axle.object" similarity index 100% rename from br185-axle.object rename to "data/M\303\244rklin/H0/electric/M36850-axle.object" diff --git a/br185-body.object "b/data/M\303\244rklin/H0/electric/M36850-body.object" similarity index 100% rename from br185-body.object rename to "data/M\303\244rklin/H0/electric/M36850-body.object" diff --git a/br185-bogie.object "b/data/M\303\244rklin/H0/electric/M36850-bogie.object" similarity index 100% rename from br185-bogie.object rename to "data/M\303\244rklin/H0/electric/M36850-bogie.object" diff --git "a/data/M\303\244rklin/H0/electric/M36850.veh" "b/data/M\303\244rklin/H0/electric/M36850.veh" new file mode 100644 index 0000000..5707291 --- /dev/null +++ "b/data/M\303\244rklin/H0/electric/M36850.veh" @@ -0,0 +1,32 @@ +article_number +{ + vendor "Märklin"; + article "36850"; +}; +name "BR 185"; + +locomotive true; +function 0 "light"; +maximum_speed 0.447; + +gauge 16.5; +length 218; +width 34; +height 43; + +object "M36850-body.object"; + +bogie +{ + position 60; + object "M36850-bogie.object"; + axle { position 15; wheel_diameter 14; powered true; object "M36850-axle.object"; }; + axle { position -15; wheel_diameter 14; powered true; object "M36850-axle.object"; }; +}; +bogie +{ + position -60; + object "M36850-bogie.object"; + axle { position 15; wheel_diameter 14; powered true; object "M36850-axle.object"; }; + axle { position -15; wheel_diameter 14; powered true; object "M36850-axle.object"; }; +}; diff --git a/br194-body.object "b/data/M\303\244rklin/H0/electric/M37225-02-body.object" similarity index 100% rename from br194-body.object rename to "data/M\303\244rklin/H0/electric/M37225-02-body.object" diff --git a/br194-bogie.object "b/data/M\303\244rklin/H0/electric/M37225-02-bogie.object" similarity index 100% rename from br194-bogie.object rename to "data/M\303\244rklin/H0/electric/M37225-02-bogie.object" diff --git "a/data/M\303\244rklin/H0/electric/M37225-02.veh" "b/data/M\303\244rklin/H0/electric/M37225-02.veh" new file mode 100644 index 0000000..bb972f1 --- /dev/null +++ "b/data/M\303\244rklin/H0/electric/M37225-02.veh" @@ -0,0 +1,37 @@ +article_number +{ + vendor "Märklin"; + article "37225"; + part "02"; +}; +name "BR 194"; + +locomotive true; +function 0 "light"; +maximum_speed 0.287; + +gauge 16.5; +length 212; +width 35; +height 45; + +object "M37225-02-body.object"; + +bogie +{ + position 45; + object "M37225-02-bogie.object"; + // Note: front bogie not powered in model + axle { position 34; wheel_diameter 14; powered true; }; + axle { position 6; wheel_diameter 14; powered true; }; + axle { position -19; wheel_diameter 14; powered true; }; +}; +bogie +{ + position -45; + object "M37225-02-bogie.object"; + rotate_object true; + axle { position 19; wheel_diameter 14; powered true; }; + axle { position -6; wheel_diameter 14; powered true; }; + axle { position -34; wheel_diameter 14; powered true; }; +}; diff --git "a/data/M\303\244rklin/H0/electric/M37574-01.veh" "b/data/M\303\244rklin/H0/electric/M37574-01.veh" new file mode 100644 index 0000000..5a633f4 --- /dev/null +++ "b/data/M\303\244rklin/H0/electric/M37574-01.veh" @@ -0,0 +1,38 @@ +article_number +{ + vendor "Märklin"; + article "37574"; + part "01"; +}; +name "BR E 03"; + +locomotive true; +function 0 "light"; +function 2 "sfx"; +function 3 "whstl"; +swap_direction true; +maximum_speed 0.639; + +gauge 16.5; +length 219; +width 35; +height 49; + +// XXX Create proper 3D model for this +object "M36850-body.object"; + +bogie +{ + position 62; + axle { position 17; wheel_diameter 14; powered true; }; + axle { position -8.5; wheel_diameter 14; powered true; }; + axle { position -34; wheel_diameter 14; powered true; }; +}; + +bogie +{ + position -62; + axle { position 34; wheel_diameter 14; powered true; }; + axle { position 8.5; wheel_diameter 14; powered true; }; + axle { position -17; wheel_diameter 14; powered true; }; +}; diff --git a/data/br150-body.object "b/data/M\303\244rklin/H0/electric/M37851-body.object" similarity index 100% rename from data/br150-body.object rename to "data/M\303\244rklin/H0/electric/M37851-body.object" diff --git "a/data/M\303\244rklin/H0/electric/M37851.veh" "b/data/M\303\244rklin/H0/electric/M37851.veh" new file mode 100644 index 0000000..88bc7d9 --- /dev/null +++ "b/data/M\303\244rklin/H0/electric/M37851.veh" @@ -0,0 +1,34 @@ +article_number +{ + vendor "Märklin"; + article "37851"; +}; +name "BR 150"; + +locomotive true; +function 0 "light"; +function 1 "telex"; +function 3 "whstl"; +maximum_speed 0.319; + +gauge 16.5; +length 224; +width 35; +height 47; + +object "M37851-body.object"; + +bogie +{ + position 50.5; + axle { position 25.5; wheel_diameter 10; }; + axle { position -3; wheel_diameter 10; }; + axle { position -25.5; wheel_diameter 10; }; +}; +bogie +{ + position -50.5; + axle { position 25.5; wheel_diameter 10; }; + axle { position 3; wheel_diameter 10; }; + axle { position -25.5; wheel_diameter 10; }; +}; diff --git a/bre41-axle.object "b/data/M\303\244rklin/H0/electric/M39410-axle.object" similarity index 100% rename from bre41-axle.object rename to "data/M\303\244rklin/H0/electric/M39410-axle.object" diff --git a/bre41-body.object "b/data/M\303\244rklin/H0/electric/M39410-body.object" similarity index 100% rename from bre41-body.object rename to "data/M\303\244rklin/H0/electric/M39410-body.object" diff --git a/bre41-bogie.object "b/data/M\303\244rklin/H0/electric/M39410-bogie.object" similarity index 100% rename from bre41-bogie.object rename to "data/M\303\244rklin/H0/electric/M39410-bogie.object" diff --git "a/data/M\303\244rklin/H0/electric/M39410.veh" "b/data/M\303\244rklin/H0/electric/M39410.veh" new file mode 100644 index 0000000..aca32d5 --- /dev/null +++ "b/data/M\303\244rklin/H0/electric/M39410.veh" @@ -0,0 +1,35 @@ +article_number +{ + vendor "Märklin"; + article "39410"; +}; +name "BR E 41"; + +locomotive true; +function 0 "light"; +function 3 "sfx"; +function 5 "whstl"; +maximum_speed 0.383; + +gauge 16.5; +length 180; +width 34; +height 44; + +object "M39410-body.object"; + +bogie +{ + position 42; + object "M39410-bogie.object"; + axle { position 18.5; wheel_diameter 14; powered true; object "M39410-axle.object"; }; + axle { position -18.5; wheel_diameter 14; powered true; object "M39410-axle.object"; }; +}; +bogie +{ + position -42; + object "M39410-bogie.object"; + rotate_object true; + axle { position 18.5; wheel_diameter 14; powered true; object "M39410-axle.object"; }; + axle { position -18.5; wheel_diameter 14; powered true; object "M39410-axle.object"; }; +}; diff --git a/data/br420-axle.object "b/data/M\303\244rklin/H0/emu/M37504-axle.object" similarity index 100% rename from data/br420-axle.object rename to "data/M\303\244rklin/H0/emu/M37504-axle.object" diff --git a/data/br420-body.object "b/data/M\303\244rklin/H0/emu/M37504-body.object" similarity index 100% rename from data/br420-body.object rename to "data/M\303\244rklin/H0/emu/M37504-body.object" diff --git a/data/br420-bogie.object "b/data/M\303\244rklin/H0/emu/M37504-bogie.object" similarity index 100% rename from data/br420-bogie.object rename to "data/M\303\244rklin/H0/emu/M37504-bogie.object" diff --git "a/data/M\303\244rklin/H0/emu/M37504.veh" "b/data/M\303\244rklin/H0/emu/M37504.veh" new file mode 100644 index 0000000..6b1f04c --- /dev/null +++ "b/data/M\303\244rklin/H0/emu/M37504.veh" @@ -0,0 +1,37 @@ +// XXX The power car is really in the middle, but that configuration isn't supported yet +article_number +{ + vendor "Märklin"; + article "37504"; +}; +name "BR 420 S-bahn"; + +locomotive true; +function 0 "light"; +function 1 "intlt"; +function 2 "sfx"; +function 3 "whstl"; +maximum_speed 0.383; + +gauge 16.5; +length 268; +width 33; +height 44; + +object "M37504-body.object"; + +bogie +{ + position 94; + object "M37504-bogie.object"; + axle { position 14.5; wheel_diameter 10; object "M37504-axle.object"; }; + axle { position -14.5; wheel_diameter 10; object "M37504-axle.object"; }; +}; +bogie +{ + position -96; + object "M37504-bogie.object"; + rotate_object true; + axle { position 14.5; wheel_diameter 10; object "M37504-axle.object"; }; + axle { position -14.5; wheel_diameter 10; object "M37504-axle.object"; }; +}; diff --git a/data/br421-body.object "b/data/M\303\244rklin/H0/emu/M37504b-body.object" similarity index 100% rename from data/br421-body.object rename to "data/M\303\244rklin/H0/emu/M37504b-body.object" diff --git "a/data/M\303\244rklin/H0/emu/M37504b.veh" "b/data/M\303\244rklin/H0/emu/M37504b.veh" new file mode 100644 index 0000000..c4b283c --- /dev/null +++ "b/data/M\303\244rklin/H0/emu/M37504b.veh" @@ -0,0 +1,31 @@ +// XXX The power car is really in the middle, but that configuration isn't supported yet +article_number +{ + vendor "Märklin"; + article "37504"; + part "b"; +}; +name "BR 421 S-bahn"; + +gauge 16.5; +length 238; +width 33; +height 44; + +object "M37504b-body.object"; + +bogie +{ + position 80; + object "M37504-bogie.object"; + axle { position 14.5; wheel_diameter 10; object "M37504-axle.object"; }; + axle { position -14.5; wheel_diameter 10; object "M37504-axle.object"; }; +}; +bogie +{ + position -80; + object "M37504-bogie.object"; + rotate_object true; + axle { position 14.5; wheel_diameter 10; object "M37504-axle.object"; }; + axle { position -14.5; wheel_diameter 10; object "M37504-axle.object"; }; +}; diff --git "a/data/M\303\244rklin/H0/emu/M37504c.veh" "b/data/M\303\244rklin/H0/emu/M37504c.veh" new file mode 100644 index 0000000..2adce4c --- /dev/null +++ "b/data/M\303\244rklin/H0/emu/M37504c.veh" @@ -0,0 +1,32 @@ +// XXX Better solution would be to allow flipping of vehicles +article_number +{ + vendor "Märklin"; + article "37504"; + part "c"; +}; +name "BR 420 S-bahn"; + +gauge 16.5; +length 268; +width 33; +height 44; + +object "M37504-body.object"; +rotate_object true; + +bogie +{ + position 96; + object "M37504-bogie.object"; + axle { position 14.5; wheel_diameter 10; object "M37504-axle.object"; }; + axle { position -14.5; wheel_diameter 10; object "M37504-axle.object"; }; +}; +bogie +{ + position -94; + object "M37504-bogie.object"; + rotate_object true; + axle { position 14.5; wheel_diameter 10; object "M37504-axle.object"; }; + axle { position -14.5; wheel_diameter 10; object "M37504-axle.object"; }; +}; diff --git a/zas999.object "b/data/M\303\244rklin/H0/freight/M29859b-body.object" similarity index 100% rename from zas999.object rename to "data/M\303\244rklin/H0/freight/M29859b-body.object" diff --git "a/data/M\303\244rklin/H0/freight/M29859b.veh" "b/data/M\303\244rklin/H0/freight/M29859b.veh" new file mode 100644 index 0000000..8bc5c2e --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M29859b.veh" @@ -0,0 +1,27 @@ +article_number +{ + vendor "Märklin"; + article "29859"; + part "b"; +}; +name "Zas"; + +gauge 16.5; +length 180; +width 34; +height 47; + +object "M29859b-body.object"; + +bogie +{ + position 61; + axle { position 10.5; wheel_diameter 10; }; + axle { position -10.5; wheel_diameter 10; }; +}; +bogie +{ + position -61; + axle { position 10.5; wheel_diameter 10; }; + axle { position -10.5; wheel_diameter 10; }; +}; diff --git "a/data/M\303\244rklin/H0/freight/M4410.veh" "b/data/M\303\244rklin/H0/freight/M4410.veh" new file mode 100644 index 0000000..f0cc096 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M4410.veh" @@ -0,0 +1,16 @@ +article_number +{ + vendor "Märklin"; + article "4410"; +}; +name "Gs 210"; + +gauge 16.5; +length 115; +width 33; +height 47; + +object ":coveredwagon:length=101,roof=9,color=983800,color2=B2B2B2"; + +axle { position 31; wheel_diameter 10; }; +axle { position -31; wheel_diameter 10; }; diff --git "a/data/M\303\244rklin/H0/freight/M4423.veh" "b/data/M\303\244rklin/H0/freight/M4423.veh" new file mode 100644 index 0000000..f78a506 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M4423.veh" @@ -0,0 +1,16 @@ +article_number +{ + vendor "Märklin"; + article "4423"; +}; +name "Kklm 505"; + +gauge 16.5; +length 115; +width 33; +height 21; + +object ":openwagon:length=100,border=1,color=983800"; + +axle { position 31; wheel_diameter 10; }; +axle { position -31; wheel_diameter 10; }; diff --git a/z999.object "b/data/M\303\244rklin/H0/freight/M4442-body.object" similarity index 100% rename from z999.object rename to "data/M\303\244rklin/H0/freight/M4442-body.object" diff --git "a/data/M\303\244rklin/H0/freight/M4442.veh" "b/data/M\303\244rklin/H0/freight/M4442.veh" new file mode 100644 index 0000000..4254578 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M4442.veh" @@ -0,0 +1,16 @@ +article_number +{ + vendor "Märklin"; + article "4442"; +}; +name "Z"; + +gauge 16.5; +length 114; +width 32; +height 48; + +object "M4442-body.object"; + +axle { position 31; wheel_diameter 10; }; +axle { position -31; wheel_diameter 10; }; diff --git a/omm52-body.object "b/data/M\303\244rklin/H0/freight/M46034e-body.object" similarity index 100% rename from omm52-body.object rename to "data/M\303\244rklin/H0/freight/M46034e-body.object" diff --git "a/data/M\303\244rklin/H0/freight/M46034e.veh" "b/data/M\303\244rklin/H0/freight/M46034e.veh" new file mode 100644 index 0000000..471ca01 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M46034e.veh" @@ -0,0 +1,17 @@ +article_number +{ + vendor "Märklin"; + article "46034"; + part "e"; +}; +name "Omm 52"; + +gauge 16.5; +length 116; +width 34; +height 33; + +object "M46034e-body.object"; + +axle { position 31; wheel_diameter 10; }; +axle { position -31; wheel_diameter 10; }; diff --git a/falsu176-body.object "b/data/M\303\244rklin/H0/freight/M4624-body.object" similarity index 100% rename from falsu176-body.object rename to "data/M\303\244rklin/H0/freight/M4624-body.object" diff --git "a/data/M\303\244rklin/H0/freight/M4624.veh" "b/data/M\303\244rklin/H0/freight/M4624.veh" new file mode 100644 index 0000000..6b20d72 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M4624.veh" @@ -0,0 +1,28 @@ +article_number +{ + vendor "Märklin"; + article "4624"; +}; +name "Fals-u 176"; + +gauge 16.5; +length 134; +width 36; +height 45; + +object "M4624-body.object"; + +bogie +{ + position 35; + object "mindensiegen-bogie.object"; + axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; +}; +bogie +{ + position -35; + object "mindensiegen-bogie.object"; + axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; +}; diff --git a/gmhs54-body.object "b/data/M\303\244rklin/H0/freight/M46274-body.object" similarity index 100% rename from gmhs54-body.object rename to "data/M\303\244rklin/H0/freight/M46274-body.object" diff --git "a/data/M\303\244rklin/H0/freight/M46274.veh" "b/data/M\303\244rklin/H0/freight/M46274.veh" new file mode 100644 index 0000000..faae323 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M46274.veh" @@ -0,0 +1,16 @@ +article_number +{ + vendor "Märklin"; + article "46274"; +}; +name "Saar Railroad Gmhs 54"; + +gauge 16.5; +length 116; +width 33; +height 47; + +object "M46274-body.object"; + +axle { position 31; wheel_diameter 10; }; +axle { position -31; wheel_diameter 10; }; diff --git "a/data/M\303\244rklin/H0/freight/M46717.veh" "b/data/M\303\244rklin/H0/freight/M46717.veh" new file mode 100644 index 0000000..5d6f324 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M46717.veh" @@ -0,0 +1,17 @@ +article_number +{ + vendor "Märklin"; + article "46717"; +}; +name "Railway crane"; + +gauge 16.5; +length 83; +width 32; +height 16; + +object ":flatwagon:length=71,color=000000"; + +axle { position 21.5; wheel_diameter 10; }; +axle { position 0; wheel_diameter 10; }; +axle { position -21.5; wheel_diameter 10; }; diff --git "a/data/M\303\244rklin/H0/freight/M4690.veh" "b/data/M\303\244rklin/H0/freight/M4690.veh" new file mode 100644 index 0000000..47f73b8 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M4690.veh" @@ -0,0 +1,27 @@ +article_number +{ + vendor "Märklin"; + article "4690"; +}; +name "Eaos 106"; + +gauge 16.5; +length 160; +width 35; +height 38; + +object ":openwagon:length=149,border=2,color=983800"; + +bogie +{ + position 51.5; + axle { position 10.5; wheel_diameter 10; }; + axle { position -10.5; wheel_diameter 10; }; +}; + +bogie +{ + position -51.5; + axle { position 10.5; wheel_diameter 10; }; + axle { position -10.5; wheel_diameter 10; }; +}; diff --git "a/data/M\303\244rklin/H0/freight/M46977.veh" "b/data/M\303\244rklin/H0/freight/M46977.veh" new file mode 100644 index 0000000..cdc6508 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M46977.veh" @@ -0,0 +1,16 @@ +article_number +{ + vendor "Märklin"; + article "46977"; +}; +name "Rlmmso 56"; + +gauge 16.5; +length 157; +width 31; +height 21; + +object ":openwagon:length=144,border=1,color=983800"; + +axle { position 46; wheel_diameter 10; }; +axle { position -46; wheel_diameter 10; }; diff --git "a/data/M\303\244rklin/H0/freight/M4699.veh" "b/data/M\303\244rklin/H0/freight/M4699.veh" new file mode 100644 index 0000000..6109722 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M4699.veh" @@ -0,0 +1,16 @@ +article_number +{ + vendor "Märklin"; + article "4699"; +}; +name "Pwg 14"; + +gauge 16.5; +length 98; +width 31; +height 43; + +object ":coveredwagon:length=84,roof=5,color=264C1A,color2=B2B2B2"; + +axle { position 25; wheel_diameter 10; }; +axle { position -25; wheel_diameter 10; }; diff --git a/rs684-body.object "b/data/M\303\244rklin/H0/freight/M47001-body.object" similarity index 100% rename from rs684-body.object rename to "data/M\303\244rklin/H0/freight/M47001-body.object" diff --git "a/data/M\303\244rklin/H0/freight/M47001.veh" "b/data/M\303\244rklin/H0/freight/M47001.veh" new file mode 100644 index 0000000..97cc0bb --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M47001.veh" @@ -0,0 +1,28 @@ +article_number +{ + vendor "Märklin"; + article "47001"; +}; +name "Rs 684"; + +gauge 16.5; +length 229; +width 34; +height 29; + +object "M47001-body.object"; + +bogie +{ + position 85; + object "mindensiegen-bogie.object"; + axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; +}; +bogie +{ + position -85; + object "mindensiegen-bogie.object"; + axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; +}; diff --git a/sgns691-body.object "b/data/M\303\244rklin/H0/freight/M47072-body.object" similarity index 100% rename from sgns691-body.object rename to "data/M\303\244rklin/H0/freight/M47072-body.object" diff --git "a/data/M\303\244rklin/H0/freight/M47072.veh" "b/data/M\303\244rklin/H0/freight/M47072.veh" new file mode 100644 index 0000000..72465cd --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M47072.veh" @@ -0,0 +1,28 @@ +article_number +{ + vendor "Märklin"; + article "47072"; +}; +name "Sgns 691"; + +gauge 16.5; +length 228; +width 30; +height 15; + +object "M47072-body.object"; + +bogie +{ + position 81.5; + object "y25-bogie.object"; + axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; +}; +bogie +{ + position -81.5; + object "y25-bogie.object"; + axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; +}; diff --git a/btr10-body.object "b/data/M\303\244rklin/H0/freight/M48943-body.object" similarity index 100% rename from btr10-body.object rename to "data/M\303\244rklin/H0/freight/M48943-body.object" diff --git "a/data/M\303\244rklin/H0/freight/M48943.veh" "b/data/M\303\244rklin/H0/freight/M48943.veh" new file mode 100644 index 0000000..c5361e8 --- /dev/null +++ "b/data/M\303\244rklin/H0/freight/M48943.veh" @@ -0,0 +1,16 @@ +article_number +{ + vendor "Märklin"; + article "48943"; +}; +name "BTr 10"; + +gauge 16.5; +length 112; +width 34; +height 34; + +object "M48943-body.object"; + +axle { position 29; wheel_diameter 10; }; +axle { position -23; wheel_diameter 10; }; diff --git "a/data/M\303\244rklin/H0/m\303\244rklin_h0.cat" "b/data/M\303\244rklin/H0/m\303\244rklin_h0.cat" new file mode 100644 index 0000000..cfe4e03 --- /dev/null +++ "b/data/M\303\244rklin/H0/m\303\244rklin_h0.cat" @@ -0,0 +1,180 @@ +scale 1 87; + +layout +{ + beamgate + { + position -0.3876098 0.3496740 0.000000; + rotation 1.570800; + }; + track "M24115.track" + { + position 0.0806517 0.139002 0; + rotation 2.22529; + }; + track "M24612.track" + { + position -0.310086 -0.38055 0; + rotation 1.5708; + }; + track "M24172.track" + { + position -0.232565 -0.0797749 0; + rotation 1.5708; + }; + track "M24611.track" + { + position -0.387608 -0.380475 0; + rotation 1.5708; + }; + track "M24130.track" + { + position 0.155044 -0.08015 0; + rotation 1.5708; + }; + track "M24230.track" + { + position 0.232566 -0.0802249 0; + rotation 1.5708; + }; + track "M24107.track" + { + position -0.0249545 0.231617 0; + rotation 2.61799; + }; + track "M24224.track" + { + position -0.465131 -0.38055 0; + rotation 1.5708; + }; + track "M24330.track" + { + position 0.310088 -0.0803 0; + rotation 1.5708; + }; + track "M24215.track" + { + position 0.142158 0.186105 0; + rotation 2.2253; + }; + track "M24207.track" + { + position 0.0138165 0.298658 0; + rotation 2.61799; + }; + track "M24711.track" + { + position 0.374455 -0.381008 0; + rotation 1.5708; + }; + track "M24530.track" + { + position 0.438821 -0.0809179 0; + rotation 1.5708; + }; + track "M24430.track" + { + position 0.374455 -0.080609 0; + rotation 1.5708; + }; + track "M24630.track" + { + position -0.19005 -0.380551 0; + rotation 1.5708; + }; + track "M24712.track" + { + position 0.438821 -0.381316 0; + rotation 1.5708; + }; + track "M24624.track" + { + position -0.0775215 -0.380625 0; + rotation 1.5708; + }; + track "M24640.track" + { + position -0.232565 0.185972 0; + rotation 1.5708; + }; + track "M24671.track" + { + position 0.0775225 -0.380624 0; + rotation 1.5708; + }; + track "M24977.track" + { + position -0.465131 0.186196 0; + rotation 1.5708; + }; + track "M24672.track" + { + position 0.155044 -0.380699 0; + rotation 1.5708; + }; + track "M24649.track" + { + position -0.348827 0.194312 0; + rotation 1.99491; + }; + track "M24064.track" + { + position 0.0775223 -0.080075 0; + rotation 1.5708; + }; + track "M24077.track" + { + position -0.0775215 -0.079925 0; + rotation 1.5708; + }; + track "M24229.track" + { + position -0.387609 -0.079626 0; + rotation 1.5708; + }; + track "M24071.track" + { + position 2.56295e-07 -0.0799999 0; + rotation 1.5708; + }; + track "M24094.track" + { + position -0.155042 -0.07985 0; + rotation 1.5708; + }; + track "M24188.track" + { + position -0.310087 -0.0797 0; + rotation 1.5708; + }; + track "M24236.track" + { + position -0.465131 -0.0795509 0; + rotation 1.5708; + }; + track "M24912.track" + { + position 0.310088 -0.380699 0; + rotation 1.5708; + }; + track "M24206.track" + { + position -0.446223 -0.161726 0; + rotation 2.0944; + }; + track "M24740.track" + { + position -0.112537 0.138174 0; + rotation 1.5708; + }; + track "M24360.track" + { + position -0.542646 -0.0794758 0; + rotation 1.5708; + }; + signal "M7039.signal" + { + position -0.5020055 0.3153508 0.000000; + rotation 1.570800; + }; +}; diff --git a/schurzenwagen-body.object "b/data/M\303\244rklin/H0/passenger/M43222-body.object" similarity index 100% rename from schurzenwagen-body.object rename to "data/M\303\244rklin/H0/passenger/M43222-body.object" diff --git "a/data/M\303\244rklin/H0/passenger/M43222.veh" "b/data/M\303\244rklin/H0/passenger/M43222.veh" new file mode 100644 index 0000000..aaa0140 --- /dev/null +++ "b/data/M\303\244rklin/H0/passenger/M43222.veh" @@ -0,0 +1,26 @@ +article_number +{ + vendor "Märklin"; + article "43222"; +}; +name "B4üw 38 \"Schürzenwagen\""; + +gauge 16.5; +length 244; +width 34; +height 45; + +object "M43222-body.object"; + +bogie +{ + position 82; + axle { position 17; wheel_diameter 10; }; + axle { position -17; wheel_diameter 10; }; +}; +bogie +{ + position -82; + axle { position 17; wheel_diameter 10; }; + axle { position -17; wheel_diameter 10; }; +}; diff --git a/b4nzb64-body.object "b/data/M\303\244rklin/H0/passenger/M43800-body.object" similarity index 100% rename from b4nzb64-body.object rename to "data/M\303\244rklin/H0/passenger/M43800-body.object" diff --git a/b4nzb64-bogie.object "b/data/M\303\244rklin/H0/passenger/M43800-bogie.object" similarity index 100% rename from b4nzb64-bogie.object rename to "data/M\303\244rklin/H0/passenger/M43800-bogie.object" diff --git "a/data/M\303\244rklin/H0/passenger/M43800.veh" "b/data/M\303\244rklin/H0/passenger/M43800.veh" new file mode 100644 index 0000000..730f8b2 --- /dev/null +++ "b/data/M\303\244rklin/H0/passenger/M43800.veh" @@ -0,0 +1,29 @@ +article_number +{ + vendor "Märklin"; + article "43800"; +}; +name "B4nzb 64 \"Silberling\""; + +gauge 16.5; +length 282; +width 30; +height 46; + +object "M43800-body.object"; + +bogie +{ + position 95; + object "M43800-bogie.object"; + axle { position 20; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -7; wheel_diameter 10; object "wagon-axle.object"; }; +}; +bogie +{ + position -95; + object "M43800-bogie.object"; + rotate_object true; + axle { position 7; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -20; wheel_diameter 10; object "wagon-axle.object"; }; +}; diff --git a/br86-body.object "b/data/M\303\244rklin/H0/steam/M29530-01-body.object" similarity index 100% rename from br86-body.object rename to "data/M\303\244rklin/H0/steam/M29530-01-body.object" diff --git "a/data/M\303\244rklin/H0/steam/M29530-01.veh" "b/data/M\303\244rklin/H0/steam/M29530-01.veh" new file mode 100644 index 0000000..9de86d3 --- /dev/null +++ "b/data/M\303\244rklin/H0/steam/M29530-01.veh" @@ -0,0 +1,34 @@ +article_number +{ + vendor "Märklin"; + article "29530"; + part "01"; +}; +name "BR 86"; + +locomotive true; +function 0 "light"; +function 2 "telex"; +maximum_speed 0.255; + +gauge 16.5; +length 144; +width 33; +height 33; + +object "M29530-01-body.object"; + +bogie +{ + position 36; + axle { position 23; wheel_diameter 9; }; +}; +axle { position 29; wheel_diameter 16; powered true; }; +axle { position 9.67; wheel_diameter 16; powered true; }; +axle { position -9.67; wheel_diameter 16; powered true; }; +axle { position -29; wheel_diameter 16; powered true; }; +bogie +{ + position -36; + axle { position -23; wheel_diameter 9; }; +}; diff --git a/br50-axle-front.object "b/data/M\303\244rklin/H0/steam/M29820-02-axle-front.object" similarity index 100% rename from br50-axle-front.object rename to "data/M\303\244rklin/H0/steam/M29820-02-axle-front.object" diff --git a/br50-axle-mid.object "b/data/M\303\244rklin/H0/steam/M29820-02-axle-mid.object" similarity index 100% rename from br50-axle-mid.object rename to "data/M\303\244rklin/H0/steam/M29820-02-axle-mid.object" diff --git a/br50-axle.object "b/data/M\303\244rklin/H0/steam/M29820-02-axle.object" similarity index 100% rename from br50-axle.object rename to "data/M\303\244rklin/H0/steam/M29820-02-axle.object" diff --git a/br50-body.object "b/data/M\303\244rklin/H0/steam/M29820-02-body.object" similarity index 100% rename from br50-body.object rename to "data/M\303\244rklin/H0/steam/M29820-02-body.object" diff --git a/br50-bogie-front.object "b/data/M\303\244rklin/H0/steam/M29820-02-bogie-front.object" similarity index 100% rename from br50-bogie-front.object rename to "data/M\303\244rklin/H0/steam/M29820-02-bogie-front.object" diff --git a/br50-rod-combination.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-combination.object" similarity index 100% rename from br50-rod-combination.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-combination.object" diff --git a/br50-rod-coupling.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-coupling.object" similarity index 100% rename from br50-rod-coupling.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-coupling.object" diff --git a/br50-rod-eccentric.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-eccentric.object" similarity index 100% rename from br50-rod-eccentric.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-eccentric.object" diff --git a/br50-rod-lifting.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-lifting.object" similarity index 100% rename from br50-rod-lifting.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-lifting.object" diff --git a/br50-rod-link.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-link.object" similarity index 100% rename from br50-rod-link.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-link.object" diff --git a/br50-rod-main.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-main.object" similarity index 100% rename from br50-rod-main.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-main.object" diff --git a/br50-rod-piston.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-piston.object" similarity index 100% rename from br50-rod-piston.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-piston.object" diff --git a/br50-rod-radius.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-radius.object" similarity index 100% rename from br50-rod-radius.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-radius.object" diff --git a/br50-rod-reach.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-reach.object" similarity index 100% rename from br50-rod-reach.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-reach.object" diff --git a/br50-rod-transfer.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-transfer.object" similarity index 100% rename from br50-rod-transfer.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-transfer.object" diff --git a/br50-rod-union.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-union.object" similarity index 100% rename from br50-rod-union.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-union.object" diff --git a/br50-rod-valve.object "b/data/M\303\244rklin/H0/steam/M29820-02-rod-valve.object" similarity index 100% rename from br50-rod-valve.object rename to "data/M\303\244rklin/H0/steam/M29820-02-rod-valve.object" diff --git "a/data/M\303\244rklin/H0/steam/M29820-02.veh" "b/data/M\303\244rklin/H0/steam/M29820-02.veh" new file mode 100644 index 0000000..4fac4d5 --- /dev/null +++ "b/data/M\303\244rklin/H0/steam/M29820-02.veh" @@ -0,0 +1,254 @@ +article_number +{ + vendor "Märklin"; + article "29820"; + part "02"; +}; +name "BR 50"; + +locomotive true; +function 0 "light"; +function 1 "smke"; +function 2 "telex"; +function 3 "sfx"; +function 5 "whst"; +maximum_speed 0.255; + +gauge 16.5; +length 160; +width 37; +height 50.5; + +object "M29820-02-body.object"; + +bogie +{ + position 37; + object "M29820-02-bogie-front.object"; + axle { position 24; wheel_diameter 9; object "M29820-02-axle-front.object"; }; +}; +axle { position 29; wheel_diameter 16; powered true; object "M29820-02-axle.object"; }; +axle { position 9.5; wheel_diameter 16; powered true; object "M29820-02-axle.object"; }; +axle { position -10; wheel_diameter 16; powered true; object "M29820-02-axle-mid.object"; }; +axle { position -29.5; wheel_diameter 16; powered true; object "M29820-02-axle.object"; }; +axle { position -49; wheel_diameter 16; powered true; object "M29820-02-axle.object"; }; + +rod "coupling_r" +{ + move + { + target_axle 3; + target_position 0 -10.5 -3.5; + }; + object "M29820-02-rod-coupling.object"; +}; + +rod "main_r" +{ + move + { + target_axle 3; + target_position 0 -13 -3.5; + }; + rotate + { + target_rod "piston_r"; + target_position 0 1 0; + local_position 37.5 0 0; + }; + object "M29820-02-rod-main.object"; +}; + +rod "piston_r" +{ + initial_position 28 -14 8; + move + { + target_rod "main_r"; + target_position 37.5 -1 0; + }; + slide + { + target_position 27 -14 8; + axis 1 0 0; + }; + object "M29820-02-rod-piston.object"; +}; + +rod "eccentric_r" +{ + move + { + target_axle 3; + target_position 1.5 -15 0; + }; + rotate + { + target_rod "expansion_r"; + target_position 0 -0.5 -4.5; + local_position 21 0 0; + }; + object "M29820-02-rod-eccentric.object"; +}; + +rod "expansion_r" +{ + initial_position 10.5 -14.5 16.5; + rotate + { + target_rod "eccentric_r"; + target_position 21 0.5 0; + local_position 0 0 -4.5; + }; + object "M29820-02-rod-link.object"; +}; + +rod "reach" +{ + initial_position 7 -9.5 27.5; + object "M29820-02-rod-reach.object"; +}; + +rod "transfer" +{ + initial_position 4 0 22; + rotate + { + target_rod "reach"; + local_position -1 -9.5 5.5; + }; + object "M29820-02-rod-transfer.object"; +}; + +rod "expansion_guide_r" +{ + move + { + target_rod "expansion_r"; + target_position 20.5 0 0; + }; + rotate + { + target_rod "radius_r"; + target_position 3.2 0 0.5; + local_position -20.5 0 0; + }; +}; + +rod "lifting_guide_r" +{ + move + { + target_rod "expansion_guide_r"; + target_position -20.5 0 0; + }; + rotate + { + target_rod "lifting_r"; + target_position 0 1 -5.5; + local_position -3.2 0 -0.5; + }; +}; + +rod "lifting_r" +{ + move + { + target_rod "transfer"; + target_position 4.5 -15.5 0; + }; + rotate + { + target_rod "lifting_guide_r"; + target_position -3.2 -1 -0.5; + local_position 0 0 -5.5; + }; + object "M29820-02-rod-lifting.object"; +}; + +rod "radius_guide_r" +{ + initial_position 33 -16 15.5; + move + { + target_rod "valve_r"; + }; + rotate + { + target_rod "radius_r"; + target_position 25 -1 0.5; + local_position 0 0 1.5; + }; +}; + +rod "radius_r" +{ + initial_position 11 -15 17; + move + { + target_rod "lifting_r"; + target_position 0 0.5 -5.5; + }; + rotate + { + target_rod "radius_guide_r"; + target_position 0 1 1.5; + local_position 25 0 0.5; + }; + object "M29820-02-rod-radius.object"; +}; + +rod "union_r" +{ + move + { + target_rod "piston_r"; + target_position 0 -1.5 -2; + }; + rotate + { + target_rod "combination_r"; + target_position 0 0 -11.5; + local_position 5.5 0 0; + }; + object "M29820-02-rod-union.object"; +}; + +rod "combination_r" +{ + initial_position 38 -15.5 17; + move + { + target_rod "radius_r"; + target_position 25 -0.5 0.5; + }; + rotate + { + target_rod "union_r"; + target_position 5.5 0 0; + local_position 0 0 -11.5; + }; + object "M29820-02-rod-combination.object"; +}; + +rod "valve_r" +{ + initial_position 33 -16 15.5; + move + { + target_rod "combination_r"; + target_position 0 -0.5 -1.5; + }; + slide + { + target_position 32 -16 15.5; + axis 1 0 0; + }; + object "M29820-02-rod-valve.object"; +}; + +mirror_rods +{ + filter "_r$"; + phase_offset -90; +}; diff --git a/br50-tender-body.object "b/data/M\303\244rklin/H0/steam/M29820-02b-body.object" similarity index 100% rename from br50-tender-body.object rename to "data/M\303\244rklin/H0/steam/M29820-02b-body.object" diff --git a/br50-tender-bogie.object "b/data/M\303\244rklin/H0/steam/M29820-02b-bogie.object" similarity index 100% rename from br50-tender-bogie.object rename to "data/M\303\244rklin/H0/steam/M29820-02b-bogie.object" diff --git "a/data/M\303\244rklin/H0/steam/M29820-02b.veh" "b/data/M\303\244rklin/H0/steam/M29820-02b.veh" new file mode 100644 index 0000000..d7c771a --- /dev/null +++ "b/data/M\303\244rklin/H0/steam/M29820-02b.veh" @@ -0,0 +1,29 @@ +article_number +{ + vendor "Märklin"; + article "29820"; + part "02b"; +}; +name "BR 50 tender"; + +gauge 16.5; +length 96; +width 35; +height 47; + +object "M29820-02b-body.object"; + +bogie +{ + position 26; + object "M29820-02b-bogie.object"; + axle { position 11; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -11; wheel_diameter 10; object "wagon-axle.object"; }; +}; +bogie +{ + position -18; + object "M29820-02b-bogie.object"; + axle { position 11; wheel_diameter 10; object "wagon-axle.object"; }; + axle { position -11; wheel_diameter 10; object "wagon-axle.object"; }; +}; diff --git a/data/br96-body.object "b/data/M\303\244rklin/H0/steam/M37968-body.object" similarity index 100% rename from data/br96-body.object rename to "data/M\303\244rklin/H0/steam/M37968-body.object" diff --git a/data/br96-bogie-back.object "b/data/M\303\244rklin/H0/steam/M37968-bogie-back.object" similarity index 100% rename from data/br96-bogie-back.object rename to "data/M\303\244rklin/H0/steam/M37968-bogie-back.object" diff --git a/data/br96-bogie-front.object "b/data/M\303\244rklin/H0/steam/M37968-bogie-front.object" similarity index 100% rename from data/br96-bogie-front.object rename to "data/M\303\244rklin/H0/steam/M37968-bogie-front.object" diff --git "a/data/M\303\244rklin/H0/steam/M37968.veh" "b/data/M\303\244rklin/H0/steam/M37968.veh" new file mode 100644 index 0000000..e50fb7a --- /dev/null +++ "b/data/M\303\244rklin/H0/steam/M37968.veh" @@ -0,0 +1,38 @@ +article_number +{ + vendor "Märklin"; + article "37968"; +}; +name "BR 96"; + +locomotive true; +function 0 "light"; +function 2 "sfx"; +function 3 "whstl"; +maximum_speed 0.160; + +gauge 16.5; +length 203; +width 35; +height 49; + +object "M37968-body.object"; + +bogie +{ + position 32; + object "M37968-bogie-front.object"; + axle { position 35; wheel_diameter 13; }; + axle { position 17.5; wheel_diameter 13; }; + axle { position 0; wheel_diameter 13; }; + axle { position -17.5; wheel_diameter 13; }; +}; +bogie +{ + position -49; + object "M37968-bogie-back.object"; + axle { position 26.25; wheel_diameter 13; }; + axle { position 8.75; wheel_diameter 13; }; + axle { position -8.75; wheel_diameter 13; }; + axle { position -26.25; wheel_diameter 13; }; +}; diff --git a/br23-body.object "b/data/M\303\244rklin/H0/steam/M39230-body.object" similarity index 100% rename from br23-body.object rename to "data/M\303\244rklin/H0/steam/M39230-body.object" diff --git "a/data/M\303\244rklin/H0/steam/M39230.veh" "b/data/M\303\244rklin/H0/steam/M39230.veh" new file mode 100644 index 0000000..8b6d38f --- /dev/null +++ "b/data/M\303\244rklin/H0/steam/M39230.veh" @@ -0,0 +1,33 @@ +article_number +{ + vendor "Märklin"; + article "39230"; +}; +name "BR 23"; + +locomotive true; +function 0 "light"; +function 1 "smke"; +function 2 "sfx"; +function 3 "whst"; + +gauge 16.5; +length 154; +width 38; +height 53; + +object "M39230-body.object"; + +bogie +{ + position 33; + axle { position 22; wheel_diameter 11; }; +}; +axle { position 20; wheel_diameter 20; powered true; }; +axle { position -3; wheel_diameter 20; powered true; }; +axle { position -26; wheel_diameter 20; powered true; }; +bogie +{ + position -38; + axle { position -22; wheel_diameter 14; }; +}; diff --git a/br23-tender-body.object "b/data/M\303\244rklin/H0/steam/M39230b-body.object" similarity index 100% rename from br23-tender-body.object rename to "data/M\303\244rklin/H0/steam/M39230b-body.object" diff --git "a/data/M\303\244rklin/H0/steam/M39230b.veh" "b/data/M\303\244rklin/H0/steam/M39230b.veh" new file mode 100644 index 0000000..a07f88b --- /dev/null +++ "b/data/M\303\244rklin/H0/steam/M39230b.veh" @@ -0,0 +1,27 @@ +article_number +{ + vendor "Märklin"; + article "39230"; + part "b"; +}; +name "BR 23 tender"; + +gauge 16.5; +length 92; +width 34; +height 46; + +object "M39230b-body.object"; + +bogie +{ + position 28; + axle { position 11; wheel_diameter 10; }; + axle { position -11; wheel_diameter 10; }; +}; +bogie +{ + position -16; + axle { position 11; wheel_diameter 10; }; + axle { position -11; wheel_diameter 10; }; +}; diff --git a/dejavu-12.font b/data/dejavu-12.font similarity index 100% rename from dejavu-12.font rename to data/dejavu-12.font diff --git a/digitalreadout-16.font b/data/digitalreadout-16.font similarity index 100% rename from digitalreadout-16.font rename to data/digitalreadout-16.font diff --git a/gui.png b/data/gui.png similarity index 100% rename from gui.png rename to data/gui.png diff --git a/r2c2.res b/data/r2c2.res similarity index 100% rename from r2c2.res rename to data/r2c2.res diff --git a/data/beamgate.object b/data/r2c2/beamgate.object similarity index 100% rename from data/beamgate.object rename to data/r2c2/beamgate.object diff --git a/data/ghost.technique b/data/r2c2/ghost.technique similarity index 100% rename from data/ghost.technique rename to data/r2c2/ghost.technique diff --git a/terrain.dat b/data/r2c2/r2c2.cat similarity index 81% rename from terrain.dat rename to data/r2c2/r2c2.cat index 7e0558b..fe4b274 100644 --- a/terrain.dat +++ b/data/r2c2/r2c2.cat @@ -1,23 +1,8 @@ -terrain "tb5" -{ - article_number - { - vendor "MSP"; - article "tb5"; - }; - name "Terrain blocks, 5 cm grid"; - - surface - { - }; - - tile_size 0.05; - elevation_granularity 0.0125; -}; +scale 1 87; layout { - terrain "tb5" + terrain "tb5.terr" { position 0.1519720 0.2448861 0.000000; rotation 0.000000; diff --git a/data/sky.object b/data/r2c2/sky.object similarity index 100% rename from data/sky.object rename to data/r2c2/sky.object diff --git a/data/sky.shader b/data/r2c2/sky.shader similarity index 100% rename from data/sky.shader rename to data/r2c2/sky.shader diff --git a/data/r2c2/tb5.terr b/data/r2c2/tb5.terr new file mode 100644 index 0000000..51fa1c9 --- /dev/null +++ b/data/r2c2/tb5.terr @@ -0,0 +1,13 @@ +article_number +{ + vendor "MSP"; + article "tb5"; +}; +name "Terrain blocks, 5 cm grid"; + +surface +{ +}; + +tile_size 0.05; +elevation_granularity 0.0125; diff --git a/data/terrain.tech b/data/r2c2/terrain.tech similarity index 100% rename from data/terrain.tech rename to data/r2c2/terrain.tech diff --git a/locos.dat b/locos.dat deleted file mode 100644 index f330a81..0000000 --- a/locos.dat +++ /dev/null @@ -1,603 +0,0 @@ -scale 1 87; - -vehicle "39230" -{ - article_number - { - vendor "Märklin"; - article "39230"; - }; - name "BR 23"; - locomotive true; - function 0 "light"; - function 1 "smke"; - function 2 "sfx"; - function 3 "whst"; - - gauge 16.5; - length 154; - width 38; - height 53; - - object "br23-body.object"; - - bogie - { - position 33; - axle { position 22; wheel_diameter 11; }; - }; - axle { position 20; wheel_diameter 20; powered true; }; - axle { position -3; wheel_diameter 20; powered true; }; - axle { position -26; wheel_diameter 20; powered true; }; - bogie - { - position -38; - axle { position -22; wheel_diameter 14; }; - }; -}; - -vehicle "29820-02" -{ - article_number - { - vendor "Märklin"; - article "29820"; - part "02"; - }; - name "BR 50"; - locomotive true; - function 0 "light"; - function 1 "smke"; - function 2 "telex"; - function 3 "sfx"; - function 5 "whst"; - maximum_speed 0.255; - - gauge 16.5; - length 160; - width 37; - height 50.5; - - object "br50-body.object"; - - bogie - { - position 37; - object "br50-bogie-front.object"; - axle { position 24; wheel_diameter 9; object "br50-axle-front.object"; }; - }; - axle { position 29; wheel_diameter 16; powered true; object "br50-axle.object"; }; - axle { position 9.5; wheel_diameter 16; powered true; object "br50-axle.object"; }; - axle { position -10; wheel_diameter 16; powered true; object "br50-axle-mid.object"; }; - axle { position -29.5; wheel_diameter 16; powered true; object "br50-axle.object"; }; - axle { position -49; wheel_diameter 16; powered true; object "br50-axle.object"; }; - - rod "coupling_r" - { - move - { - target_axle 3; - target_position 0 -10.5 -3.5; - }; - object "br50-rod-coupling.object"; - }; - - rod "main_r" - { - move - { - target_axle 3; - target_position 0 -13 -3.5; - }; - rotate - { - target_rod "piston_r"; - target_position 0 1 0; - local_position 37.5 0 0; - }; - object "br50-rod-main.object"; - }; - - rod "piston_r" - { - initial_position 28 -14 8; - move - { - target_rod "main_r"; - target_position 37.5 -1 0; - }; - slide - { - target_position 27 -14 8; - axis 1 0 0; - }; - object "br50-rod-piston.object"; - }; - - rod "eccentric_r" - { - move - { - target_axle 3; - target_position 1.5 -15 0; - }; - rotate - { - target_rod "expansion_r"; - target_position 0 -0.5 -4.5; - local_position 21 0 0; - }; - object "br50-rod-eccentric.object"; - }; - - rod "expansion_r" - { - initial_position 10.5 -14.5 16.5; - rotate - { - target_rod "eccentric_r"; - target_position 21 0.5 0; - local_position 0 0 -4.5; - }; - object "br50-rod-link.object"; - }; - - rod "reach" - { - initial_position 7 -9.5 27.5; - object "br50-rod-reach.object"; - }; - - rod "transfer" - { - initial_position 4 0 22; - rotate - { - target_rod "reach"; - local_position -1 -9.5 5.5; - }; - object "br50-rod-transfer.object"; - }; - - rod "expansion_guide_r" - { - move - { - target_rod "expansion_r"; - target_position 20.5 0 0; - }; - rotate - { - target_rod "radius_r"; - target_position 3.2 0 0.5; - local_position -20.5 0 0; - }; - }; - - rod "lifting_guide_r" - { - move - { - target_rod "expansion_guide_r"; - target_position -20.5 0 0; - }; - rotate - { - target_rod "lifting_r"; - target_position 0 1 -5.5; - local_position -3.2 0 -0.5; - }; - }; - - rod "lifting_r" - { - move - { - target_rod "transfer"; - target_position 4.5 -15.5 0; - }; - rotate - { - target_rod "lifting_guide_r"; - target_position -3.2 -1 -0.5; - local_position 0 0 -5.5; - }; - object "br50-rod-lifting.object"; - }; - - rod "radius_guide_r" - { - initial_position 33 -16 15.5; - move - { - target_rod "valve_r"; - }; - rotate - { - target_rod "radius_r"; - target_position 25 -1 0.5; - local_position 0 0 1.5; - }; - }; - - rod "radius_r" - { - initial_position 11 -15 17; - move - { - target_rod "lifting_r"; - target_position 0 0.5 -5.5; - }; - rotate - { - target_rod "radius_guide_r"; - target_position 0 1 1.5; - local_position 25 0 0.5; - }; - object "br50-rod-radius.object"; - }; - - rod "union_r" - { - move - { - target_rod "piston_r"; - target_position 0 -1.5 -2; - }; - rotate - { - target_rod "combination_r"; - target_position 0 0 -11.5; - local_position 5.5 0 0; - }; - object "br50-rod-union.object"; - }; - - rod "combination_r" - { - initial_position 38 -15.5 17; - move - { - target_rod "radius_r"; - target_position 25 -0.5 0.5; - }; - rotate - { - target_rod "union_r"; - target_position 5.5 0 0; - local_position 0 0 -11.5; - }; - object "br50-rod-combination.object"; - }; - - rod "valve_r" - { - initial_position 33 -16 15.5; - move - { - target_rod "combination_r"; - target_position 0 -0.5 -1.5; - }; - slide - { - target_position 32 -16 15.5; - axis 1 0 0; - }; - object "br50-rod-valve.object"; - }; - - mirror_rods - { - filter "_r$"; - phase_offset -90; - }; -}; - -vehicle "29530-01" -{ - article_number - { - vendor "Märklin"; - article "29530"; - part "01"; - }; - name "BR 86"; - locomotive true; - function 0 "light"; - function 2 "telex"; - maximum_speed 0.255; - - gauge 16.5; - length 144; - width 33; - height 33; - - object "br86-body.object"; - - bogie - { - position 36; - axle { position 23; wheel_diameter 9; }; - }; - axle { position 29; wheel_diameter 16; powered true; }; - axle { position 9.67; wheel_diameter 16; powered true; }; - axle { position -9.67; wheel_diameter 16; powered true; }; - axle { position -29; wheel_diameter 16; powered true; }; - bogie - { - position -36; - axle { position -23; wheel_diameter 9; }; - }; -}; - -vehicle "36850" -{ - article_number - { - vendor "Märklin"; - article "36850"; - }; - name "BR 185"; - locomotive true; - function 0 "light"; - maximum_speed 0.447; - - gauge 16.5; - length 218; - width 34; - height 43; - - object "br185-body.object"; - - bogie - { - position 60; - object "br185-bogie.object"; - axle { position 15; wheel_diameter 14; powered true; object "br185-axle.object"; }; - axle { position -15; wheel_diameter 14; powered true; object "br185-axle.object"; }; - }; - bogie - { - position -60; - object "br185-bogie.object"; - axle { position 15; wheel_diameter 14; powered true; object "br185-axle.object"; }; - axle { position -15; wheel_diameter 14; powered true; object "br185-axle.object"; }; - }; -}; - -vehicle "37225-02" -{ - article_number - { - vendor "Märklin"; - article "37225"; - part "02"; - }; - name "BR 194"; - locomotive true; - function 0 "light"; - maximum_speed 0.287; - - gauge 16.5; - length 212; - width 34; - height 45; - - object "br194-body.object"; - - bogie - { - position 45; - object "br194-bogie.object"; - // Note: front bogie not powered in model - axle { position 34; wheel_diameter 14; powered true; }; - axle { position 6; wheel_diameter 14; powered true; }; - axle { position -19; wheel_diameter 14; powered true; }; - }; - bogie - { - position -45; - object "br194-bogie.object"; - rotate_object true; - axle { position 19; wheel_diameter 14; powered true; }; - axle { position -6; wheel_diameter 14; powered true; }; - axle { position -34; wheel_diameter 14; powered true; }; - }; -}; - -vehicle "39410" -{ - article_number - { - vendor "Märklin"; - article "39410"; - }; - name "BR E 41"; - locomotive true; - function 0 "light"; - function 3 "sfx"; - function 5 "whstl"; - maximum_speed 0.383; - - gauge 16.5; - length 180; - width 35; - height 44; - - object "bre41-body.object"; - - bogie - { - position 42; - object "bre41-bogie.object"; - axle { position 18.5; wheel_diameter 14; powered true; object "bre41-axle.object"; }; - axle { position -18.5; wheel_diameter 14; powered true; object "bre41-axle.object"; }; - }; - bogie - { - position -42; - object "bre41-bogie.object"; - rotate_object true; - axle { position 18.5; wheel_diameter 14; powered true; object "bre41-axle.object"; }; - axle { position -18.5; wheel_diameter 14; powered true; object "bre41-axle.object"; }; - }; -}; - -vehicle "37574-01" -{ - article_number - { - vendor "Märklin"; - article "37574"; - part "01"; - }; - name "BR E 03"; - locomotive true; - function 0 "light"; - function 2 "sfx"; - function 3 "whstl"; - swap_direction true; - maximum_speed 0.639; - - gauge 16.5; - length 219; - width 35; - height 49; - - // XXX Create proper 3D model for this - object "br185-body.object"; - - bogie - { - position 62; - axle { position 17; wheel_diameter 14; powered true; }; - axle { position -8.5; wheel_diameter 14; powered true; }; - axle { position -34; wheel_diameter 14; powered true; }; - }; - - bogie - { - position -62; - axle { position 34; wheel_diameter 14; powered true; }; - axle { position 8.5; wheel_diameter 14; powered true; }; - axle { position -17; wheel_diameter 14; powered true; }; - }; -}; - -vehicle "37504" -{ - // XXX The power car is really in the middle, but that configuration isn't supported yet - article_number - { - vendor "Märklin"; - article "37504"; - }; - name "BR 420 S-bahn"; - locomotive true; - function 0 "light"; - function 1 "intlt"; - function 2 "sfx"; - function 3 "whstl"; - maximum_speed 0.383; - - gauge 16.5; - length 268; - width 33; - height 44; - - object "br420-body.object"; - - bogie - { - position 94; - object "br420-bogie.object"; - axle { position 14.5; wheel_diameter 10; object "br420-axle.object"; }; - axle { position -14.5; wheel_diameter 10; object "br420-axle.object"; }; - }; - bogie - { - position -96; - object "br420-bogie.object"; - rotate_object true; - axle { position 14.5; wheel_diameter 10; object "br420-axle.object"; }; - axle { position -14.5; wheel_diameter 10; object "br420-axle.object"; }; - }; -}; - -vehicle "37851" -{ - article_number - { - vendor "Märklin"; - article "37851"; - }; - name "BR 150"; - locomotive true; - function 0 "light"; - function 1 "telex"; - function 3 "whstl"; - maximum_speed 0.319; - - gauge 16.5; - length 224; - width 35; - height 47; - - object "br150-body.object"; - - bogie - { - position 50.5; - axle { position 25.5; wheel_diameter 10; }; - axle { position -3; wheel_diameter 10; }; - axle { position -25.5; wheel_diameter 10; }; - }; - bogie - { - position -50.5; - axle { position 25.5; wheel_diameter 10; }; - axle { position 3; wheel_diameter 10; }; - axle { position -25.5; wheel_diameter 10; }; - }; -}; - -vehicle "37968" -{ - article_number - { - vendor "Märklin"; - article "37968"; - }; - name "BR 96"; - locomotive true; - function 0 "light"; - function 2 "sfx"; - function 3 "whstl"; - maximum_speed 0.160; - - gauge 16.5; - length 203; - width 35; - height 49; - - object "br96-body.object"; - - bogie - { - position 32; - object "br96-bogie-front.object"; - axle { position 35; wheel_diameter 13; }; - axle { position 17.5; wheel_diameter 13; }; - axle { position 0; wheel_diameter 13; }; - axle { position -17.5; wheel_diameter 13; }; - }; - bogie - { - position -49; - object "br96-bogie-back.object"; - axle { position 26.25; wheel_diameter 13; }; - axle { position 8.75; wheel_diameter 13; }; - axle { position -8.75; wheel_diameter 13; }; - axle { position -26.25; wheel_diameter 13; }; - }; -}; diff --git a/source/3d/catalogue.cpp b/source/3d/catalogue.cpp index f06356b..a767cf5 100644 --- a/source/3d/catalogue.cpp +++ b/source/3d/catalogue.cpp @@ -13,9 +13,10 @@ namespace R2C2 { Catalogue3D::Catalogue3D(Catalogue &c): catalogue(c) { - src.add_directory("."); - src.add_directory("data"); - add_source(src); + const list &src = catalogue.get_sources(); + for(list::const_iterator i=src.begin(); i!=src.end(); ++i) + add_source(**i); + catalogue.signal_source_added.connect(sigc::mem_fun(static_cast(this), &Catalogue3D::add_source)); } Catalogue3D::~Catalogue3D() diff --git a/source/3d/catalogue.h b/source/3d/catalogue.h index d82529f..586ee66 100644 --- a/source/3d/catalogue.h +++ b/source/3d/catalogue.h @@ -19,7 +19,6 @@ private: typedef std::map EndpointMap; Catalogue &catalogue; - Msp::DataFile::DirectorySource src; ObjectMap objects; EndpointMap endpoint_meshes; diff --git a/source/designer/designer.cpp b/source/designer/designer.cpp index 744f975..a450264 100644 --- a/source/designer/designer.cpp +++ b/source/designer/designer.cpp @@ -49,7 +49,7 @@ Designer::Designer(int argc, char **argv): window(1280, 960), keyboard(window), mouse(window), - ui_res("r2c2.res"), + ui_res("data/r2c2.res"), root(ui_res, &window, &keyboard, &mouse), base_object(0), cur_route(0), @@ -63,8 +63,7 @@ Designer::Designer(int argc, char **argv): window.signal_close.connect(sigc::bind(sigc::mem_fun(this, &Designer::exit), 0)); // Setup catalogue and layout - DataFile::load(catalogue, "tracks.dat"); - DataFile::load(catalogue, "terrain.dat"); + catalogue.add_source("data/Märklin/H0"); cat_layout_3d = new Layout3D(catalogue.get_layout()); diff --git a/source/engineer/engineer.cpp b/source/engineer/engineer.cpp index 07ab83b..f5823c4 100644 --- a/source/engineer/engineer.cpp +++ b/source/engineer/engineer.cpp @@ -40,7 +40,7 @@ Engineer::Engineer(int argc, char **argv): window(options.screen_w, options.screen_h, options.fullscreen), keyboard(window), mouse(window), - ui_res("r2c2.res"), + ui_res("data/r2c2.res"), import_active(false), layout(catalogue, (options.driver.empty() ? 0 : Driver::create(options.driver))), layout_3d(layout), @@ -69,10 +69,7 @@ Engineer::Engineer(int argc, char **argv): overlay = new Overlay3D(ui_res.get_default_font()); // Setup railroad control - DataFile::load(catalogue, "tracks.dat"); - DataFile::load(catalogue, "locos.dat"); - DataFile::load(catalogue, "wagons.dat"); - DataFile::load(catalogue, "terrain.dat"); + catalogue.add_source("data/Märklin/H0"); DataFile::load(layout, options.layout_fn); if(layout.has_driver()) diff --git a/source/libr2c2/catalogue.cpp b/source/libr2c2/catalogue.cpp index a919cb7..a367799 100644 --- a/source/libr2c2/catalogue.cpp +++ b/source/libr2c2/catalogue.cpp @@ -1,6 +1,11 @@ #include #include +#include +#include #include +#include +#include +#include #include "catalogue.h" #include "signaltype.h" #include "terraintype.h" @@ -18,9 +23,73 @@ Catalogue::Catalogue(): { add_type().keyword("track"); add_type().keyword("signal"); - add_type().keyword("vehicle"); - add_type().keyword("terrain"); - add_type().keyword("track_appearance"); + add_type().suffix(".veh").keyword("vehicle"); + add_type().suffix(".terr").keyword("terrain"); + add_type().suffix("trkapp").keyword("track_appearance"); + + add_source("data/r2c2"); +} + +void Catalogue::add_source(const FS::Path &path) +{ + string ext = FS::extpart(path.str()); + DataFile::CollectionSource *source = 0; + IO::Seekable *init_file = 0; + if(ext==".mdt") + { + DataFile::PackSource *pack_source = new DataFile::PackSource; + pack_source->add_pack_file(path.str()); + source = pack_source; + + list files = pack_source->list_files(); + for(list::const_iterator i=files.begin(); i!=files.end(); ++i) + { + string fext = FS::extpart(i->name); + if(fext==".cat" && !init_file) + init_file = pack_source->open(i->name); + } + } + else if(FS::is_dir(path)) + { + DataFile::DirectorySource *dir_source = new DataFile::DirectorySource; + dir_source->add_directory(path); + + list queue; + queue.push_back(path); + while(!queue.empty()) + { + FS::Path dir = queue.front(); + queue.pop_front(); + list files = FS::list_files(dir); + for(list::const_iterator i=files.begin(); i!=files.end(); ++i) + { + FS::Path full = dir/ *i; + if(FS::is_dir(full)) + { + dir_source->add_directory(full); + queue.push_back(full); + } + + string fext = FS::extpart(*i); + if(fext==".cat" && !init_file) + init_file = new IO::BufferedFile(full.str()); + } + } + + source = dir_source; + } + + sources.push_back(source); + Collection::add_source(*source); + signal_source_added.emit(*source); + + if(init_file) + { + DataFile::Parser parser(*init_file, path.str()); + Loader ldr(*this); + ldr.load(parser); + } + delete init_file; } diff --git a/source/libr2c2/catalogue.h b/source/libr2c2/catalogue.h index 49a4a4d..5adbde0 100644 --- a/source/libr2c2/catalogue.h +++ b/source/libr2c2/catalogue.h @@ -3,6 +3,8 @@ #include #include +#include +#include #include "articlenumber.h" #include "layout.h" #include "trackappearance.h" @@ -26,13 +28,19 @@ public: void scale(float, float); }; + sigc::signal signal_source_added; + private: float scale; Layout layout; + std::list sources; public: Catalogue(); + void add_source(const Msp::FS::Path &); + const std::list &get_sources() const { return sources; } + float get_scale() const { return scale; } Layout &get_layout() { return layout; } }; diff --git a/tracks.dat b/tracks.dat deleted file mode 100644 index 34eeef8..0000000 --- a/tracks.dat +++ /dev/null @@ -1,916 +0,0 @@ -scale 1 87; - -track_appearance "C" -{ - gauge 16.5; - rail_profile - { - point 1.5 0.0; - smooth_point 1.5 0.3; - smooth_point 0.8 0.4; - smooth_point 0.8 1.4; - smooth_point 1.0 1.6; - smooth_point 1.0 2.1; - smooth_point 0.8 2.3; - smooth_point 0.2 2.3; - smooth_point 0.0 2.1; - smooth_point 0.0 1.6; - smooth_point 0.2 1.4; - smooth_point 0.2 0.4; - smooth_point -0.5 0.3; - point -0.5 0.0; - }; - ballast_profile - { - point 20.0 0.0; - point 14.0 7.5; - point -14.0 7.5; - point -20.0 0.0; - }; - tie_profile - { - point 13.5 0.0; - point 13.5 0.5; - point -13.5 0.5; - point -13.5 0.0; - }; - tie_length 2.2; - tie_spacing 7.8; - - technique "track.technique"; -}; - -// Straight - -track "24064" -{ - article_number - { - vendor "Märklin"; - article "24064"; - }; - appearance "C"; - name "Straight, 64.3 mm"; - description "R3-R4-R5 spacing"; - part - { - length 64.3; - }; -}; - -track "24071" -{ - article_number - { - vendor "Märklin"; - article "24071"; - }; - appearance "C"; - name "Straight, 70.8 mm"; - description "For slim turnouts"; - part - { - length 70.8; - }; - autofit_preference 0; -}; - -track "24077" -{ - article_number - { - vendor "Märklin"; - article "24077"; - }; - appearance "C"; - name "Straight, 77.5 mm"; - description "R1-R2-R3 spacing"; - part - { - length 77.5; - }; - autofit_preference 2; -}; - -track "24094" -{ - article_number - { - vendor "Märklin"; - article "24094"; - }; - appearance "C"; - name "Straight, 94.2 mm"; - part - { - length 94.2; - }; - autofit_preference 2; -}; - -track "24172" -{ - article_number - { - vendor "Märklin"; - article "24172"; - }; - appearance "C"; - name "Straight, 171.7 mm"; - part - { - length 171.7; - }; - autofit_preference 2; -}; - -track "24188" -{ - article_number - { - vendor "Märklin"; - article "24188"; - }; - appearance "C"; - name "Straight, 188.3 mm"; - description "Turnout length"; - part - { - length 188.3; - }; - autofit_preference 2; -}; - -track "24229" -{ - article_number - { - vendor "Märklin"; - article "24229"; - }; - appearance "C"; - name "Straight, 229.3 mm"; - part - { - length 229.3; - }; -}; - -track "24236" -{ - article_number - { - vendor "Märklin"; - article "24236"; - }; - appearance "C"; - name "Straight, 236.1 mm"; - description "Slim turnout length"; - part - { - length 236.1; - }; -}; - -track "24360" -{ - article_number - { - vendor "Märklin"; - article "24360"; - }; - appearance "C"; - name "Straight, 360 mm"; - part - { - length 360; - }; -}; - -// Curves, R1 - -track "24107" -{ - article_number - { - vendor "Märklin"; - article "24107"; - }; - appearance "C"; - name "Curve, R1, 7.5°"; - description "R = 360 mm"; - part - { - length 7.5; - radius 360; - }; -}; - -track "24115" -{ - article_number - { - vendor "Märklin"; - article "24115"; - }; - appearance "C"; - name "Curve, R1, 15°"; - description "R = 360 mm"; - part - { - length 15; - radius 360; - }; -}; - -track "24130" -{ - article_number - { - vendor "Märklin"; - article "24130"; - }; - appearance "C"; - name "Curve, R1, 30°"; - description "R = 360 mm"; - part - { - length 30; - radius 360; - }; -}; - -// Curves, R2 - -track "24206" -{ - article_number - { - vendor "Märklin"; - article "24206"; - }; - appearance "C"; - name "Curve, R2, 5.7°"; - description "R = 437.5 mm, complements turnout to 30°"; - part - { - length 5.7; - radius 437.5; - }; -}; - -track "24207" -{ - article_number - { - vendor "Märklin"; - article "24207"; - }; - appearance "C"; - name "Curve, R2, 7.5°"; - description "R = 437.5 mm"; - part - { - length 7.5; - radius 437.5; - }; -}; - -track "24215" -{ - article_number - { - vendor "Märklin"; - article "24215"; - }; - appearance "C"; - name "Curve, R2, 15°"; - description "R = 437.5 mm"; - part - { - length 15; - radius 437.5; - }; -}; - -track "24224" -{ - article_number - { - vendor "Märklin"; - article "24224"; - }; - appearance "C"; - name "Curve, R2, 24.3°"; - description "R = 437.5 mm, turnout angle"; - part - { - length 24.3; - radius 437.5; - }; -}; - -track "24230" -{ - article_number - { - vendor "Märklin"; - article "24230"; - }; - appearance "C"; - name "Curve, R2, 30°"; - description "R = 437.5 mm"; - part - { - length 30; - radius 437.5; - }; -}; - -// Curves, R3 - -track "24330" -{ - article_number - { - vendor "Märklin"; - article "24330"; - }; - appearance "C"; - name "Curve, R3, 30°"; - description "R = 515mm"; - part - { - length 30; - radius 515; - }; -}; - -// Curves, R4 - -track "24430" -{ - article_number - { - vendor "Märklin"; - article "24430"; - }; - appearance "C"; - name "Curve, R4, 30°"; - description "R = 579.3mm"; - part - { - length 30; - radius 579.3; - }; -}; - -// Curves, R5 - -track "24530" -{ - article_number - { - vendor "Märklin"; - article "24530"; - }; - appearance "C"; - name "Curve, R5, 30°"; - description "R = 643.6mm"; - part - { - length 30; - radius 643.6; - }; -}; - -// Curves, slim turnout - -track "24912" -{ - article_number - { - vendor "Märklin"; - article "24912"; - }; - appearance "C"; - name "Curve, 12.1°"; - description "R = 1114.6mm, slim turnout angle"; - part - { - length 12.1; - radius 1114.6; - }; -}; - -// Curved turnouts, R1 - -track "24671" -{ - article_number - { - vendor "Märklin"; - article "24671"; - }; - appearance "C"; - name "Curved turnout, left"; - description "R1, R = 360 mm, 30°"; - part - { - length 77.5; - path 0; - }; - part - { - start 77.5 0 0; - length 30; - radius 360; - path 0; - }; - part - { - length 30; - radius 360; - path 1; - }; -}; - -track "24672" -{ - article_number - { - vendor "Märklin"; - article "24672"; - }; - appearance "C"; - name "Curved turnout, right"; - description "R1, R = 360 mm, 30°"; - part - { - length 77.5; - path 0; - }; - part - { - start 77.5 0 0; - length 30; - radius -360; - path 0; - }; - part - { - length 30; - radius -360; - path 1; - }; -}; - -// Turnouts, R2 - -track "24611" -{ - article_number - { - vendor "Märklin"; - article "24611"; - }; - appearance "C"; - name "Turnout, left"; - description "R2, R = 437.5 mm, 24.3°"; - part - { - length 188.3; - path 0; - }; - part - { - length 24.3; - radius 437.5; - path 1; - }; -}; - -track "24612" -{ - article_number - { - vendor "Märklin"; - article "24612"; - }; - appearance "C"; - name "Turnout, right"; - description "R2, R = 437.5 mm, 24.3°"; - part - { - length 188.3; - path 0; - }; - part - { - length 24.3; - radius -437.5; - path 1; - }; -}; - -track "24630" -{ - article_number - { - vendor "Märklin"; - article "24630"; - }; - appearance "C"; - name "Turnout, 3-way"; - description "R2, R = 437.5 mm, 24.3°"; - part - { - length 188.3; - path 0; - }; - part - { - length 24.3; - radius 437.5; - path 2; - }; - part - { - length 24.3; - radius -437.5; - path 1; - }; -}; - -track "24624" -{ - article_number - { - vendor "Märklin"; - article "24624"; - }; - appearance "C"; - name "Turnout, double slip"; - description "R2, R = 437.5 mm, 24.3°"; - state_bits 1; - part - { - length 188.3; - path 0; - }; - part - { - length 24.3; - radius -437.5; - path 1; - }; - part - { - start 8.34 38.74 -24.3; - length 188.3; - path 2; - }; - part - { - start 8.34 38.74 -24.3; - length 24.3; - radius 437.5; - path 3; - }; -}; - -// Slim turnouts - -track "24711" -{ - article_number - { - vendor "Märklin"; - article "24711"; - }; - appearance "C"; - name "Slim turnout, left"; - description "R = 1114.6mm, 12.1°"; - part - { - length 236.1; - path 0; - }; - part - { - length 12.1; - radius 1114.6; - path 1; - }; -}; - -track "24712" -{ - article_number - { - vendor "Märklin"; - article "24712"; - }; - appearance "C"; - name "Slim turnout, right"; - description "R = 1114.6mm, 12.1°"; - part - { - length 236.1; - path 0; - }; - part - { - length 12.1; - radius -1114.6; - path 1; - }; -}; - -// Crossings - -track "24640" -{ - article_number - { - vendor "Märklin"; - article "24640"; - }; - appearance "C"; - name "Crossing, 24.3°"; - description "Turnout angle"; - part - { - length 188.3; - }; - part - { - start 8.34 38.74 -24.3; - length 188.3; - }; -}; - -track "24649" -{ - article_number - { - vendor "Märklin"; - article "24649"; - }; - appearance "C"; - name "Crossing, 48.6°"; - description "2× turnout angle"; - part - { - length 103.3; - }; - part - { - start 17.49 38.74 -48.6; - length 103.3; - }; -}; - -track "24740" -{ - article_number - { - vendor "Märklin"; - article "24740"; - }; - appearance "C"; - name "Slim crossing, 12.1°"; - description "Slim turnout angle"; - part - { - length 236.1; - }; - part - { - start 2.62 24.75 -12.1; - length 236.1; - }; -}; - -// Specials - -track "24977" -{ - article_number - { - vendor "Märklin"; - article "24977"; - }; - appearance "C"; - name "Bumper"; - object "bumper.object"; - part - { - length 77.5; - dead_end true; - }; -}; - -// Signals - -signal "7039" -{ - article_number - { - vendor "Märklin"; - article "7039"; - }; - name "Home signal"; - indication "Hp1" - { - aspect 0; - free_blocks 1; - }; - indication "Hp0" - { - aspect 1; - free_blocks 0; - }; - object "homesignal.object"; -}; - -// Layout for selecting tracks - -layout -{ - beamgate - { - position -0.3876098 0.3496740 0.000000; - rotation 1.570800; - }; - track "24115" - { - position 0.0806517 0.139002 0; - rotation 2.22529; - }; - track "24612" - { - position -0.310086 -0.38055 0; - rotation 1.5708; - }; - track "24172" - { - position -0.232565 -0.0797749 0; - rotation 1.5708; - }; - track "24611" - { - position -0.387608 -0.380475 0; - rotation 1.5708; - }; - track "24130" - { - position 0.155044 -0.08015 0; - rotation 1.5708; - }; - track "24230" - { - position 0.232566 -0.0802249 0; - rotation 1.5708; - }; - track "24107" - { - position -0.0249545 0.231617 0; - rotation 2.61799; - }; - track "24224" - { - position -0.465131 -0.38055 0; - rotation 1.5708; - }; - track "24330" - { - position 0.310088 -0.0803 0; - rotation 1.5708; - }; - track "24215" - { - position 0.142158 0.186105 0; - rotation 2.2253; - }; - track "24207" - { - position 0.0138165 0.298658 0; - rotation 2.61799; - }; - track "24711" - { - position 0.374455 -0.381008 0; - rotation 1.5708; - }; - track "24530" - { - position 0.438821 -0.0809179 0; - rotation 1.5708; - }; - track "24430" - { - position 0.374455 -0.080609 0; - rotation 1.5708; - }; - track "24630" - { - position -0.19005 -0.380551 0; - rotation 1.5708; - }; - track "24712" - { - position 0.438821 -0.381316 0; - rotation 1.5708; - }; - track "24624" - { - position -0.0775215 -0.380625 0; - rotation 1.5708; - }; - track "24640" - { - position -0.232565 0.185972 0; - rotation 1.5708; - }; - track "24671" - { - position 0.0775225 -0.380624 0; - rotation 1.5708; - }; - track "24977" - { - position -0.465131 0.186196 0; - rotation 1.5708; - }; - track "24672" - { - position 0.155044 -0.380699 0; - rotation 1.5708; - }; - track "24649" - { - position -0.348827 0.194312 0; - rotation 1.99491; - }; - track "24064" - { - position 0.0775223 -0.080075 0; - rotation 1.5708; - }; - track "24077" - { - position -0.0775215 -0.079925 0; - rotation 1.5708; - }; - track "24229" - { - position -0.387609 -0.079626 0; - rotation 1.5708; - }; - track "24071" - { - position 2.56295e-07 -0.0799999 0; - rotation 1.5708; - }; - track "24094" - { - position -0.155042 -0.07985 0; - rotation 1.5708; - }; - track "24188" - { - position -0.310087 -0.0797 0; - rotation 1.5708; - }; - track "24236" - { - position -0.465131 -0.0795509 0; - rotation 1.5708; - }; - track "24912" - { - position 0.310088 -0.380699 0; - rotation 1.5708; - }; - track "24206" - { - position -0.446223 -0.161726 0; - rotation 2.0944; - }; - track "24740" - { - position -0.112537 0.138174 0; - rotation 1.5708; - }; - track "24360" - { - position -0.542646 -0.0794758 0; - rotation 1.5708; - }; - signal "7039" - { - position -0.5020055 0.3153508 0.000000; - rotation 1.570800; - }; -}; diff --git a/wagons.dat b/wagons.dat deleted file mode 100644 index 5ba888e..0000000 --- a/wagons.dat +++ /dev/null @@ -1,541 +0,0 @@ -scale 1 87; - -vehicle "46274" -{ - article_number - { - vendor "Märklin"; - article "46274"; - }; - name "Saar Railroad Gmhs 54"; - - gauge 16.5; - length 116; - width 33; - height 47; - - object "gmhs54-body.object"; - - axle { position 31; wheel_diameter 10; }; - axle { position -31; wheel_diameter 10; }; -}; - -vehicle "29820-02b" -{ - article_number - { - vendor "Märklin"; - article "29820"; - part "02b"; - }; - name "BR 50 tender"; - - gauge 16.5; - length 96; - width 35; - height 47; - - object "br50-tender-body.object"; - - bogie - { - position 26; - object "br50-tender-bogie.object"; - axle { position 11; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -11; wheel_diameter 10; object "wagon-axle.object"; }; - }; - bogie - { - position -18; - object "br50-tender-bogie.object"; - axle { position 11; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -11; wheel_diameter 10; object "wagon-axle.object"; }; - }; -}; - -vehicle "4442" -{ - article_number - { - vendor "Märklin"; - article "4442"; - }; - name "Z"; - - gauge 16.5; - length 114; - width 32; - height 48; - - object "z999.object"; - - axle { position 31; wheel_diameter 10; }; - axle { position -31; wheel_diameter 10; }; -}; - -vehicle "29859b" -{ - article_number - { - vendor "Märklin"; - article "29859"; - part "b"; - }; - name "Zas"; - - gauge 16.5; - length 180; - width 34; - height 47; - - object "zas999.object"; - - bogie - { - position 61; - axle { position 10.5; wheel_diameter 10; }; - axle { position -10.5; wheel_diameter 10; }; - }; - bogie - { - position -61; - axle { position 10.5; wheel_diameter 10; }; - axle { position -10.5; wheel_diameter 10; }; - }; -}; - -vehicle "46034e" -{ - article_number - { - vendor "Märklin"; - article "46034"; - part "e"; - }; - name "Omm 52"; - - gauge 16.5; - length 116; - width 34; - height 33; - - object "omm52-body.object"; - - axle { position 31; wheel_diameter 10; }; - axle { position -31; wheel_diameter 10; }; -}; - -vehicle "47001" -{ - article_number - { - vendor "Märklin"; - article "47001"; - }; - name "Rs 684"; - - gauge 16.5; - length 229; - width 34; - height 29; - - object "rs684-body.object"; - - bogie - { - position 85; - object "mindensiegen-bogie.object"; - axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; - }; - bogie - { - position -85; - object "mindensiegen-bogie.object"; - axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; - }; -}; - -vehicle "48943" -{ - article_number - { - vendor "Märklin"; - article "48943"; - }; - name "BTr 10"; - - gauge 16.5; - length 112; - width 34; - height 34; - - object "btr10-body.object"; - - axle { position 29; wheel_diameter 10; }; - axle { position -23; wheel_diameter 10; }; -}; - -vehicle "43222" -{ - article_number - { - vendor "Märklin"; - article "43222"; - }; - name "B4üw 38 \"Schürzenwagen\""; - - gauge 16.5; - length 244; - width 34; - height 45; - - object "schurzenwagen-body.object"; - - bogie - { - position 82; - axle { position 17; wheel_diameter 10; }; - axle { position -17; wheel_diameter 10; }; - }; - bogie - { - position -82; - axle { position 17; wheel_diameter 10; }; - axle { position -17; wheel_diameter 10; }; - }; -}; - -vehicle "39230b" -{ - article_number - { - vendor "Märklin"; - article "39230"; - part "b"; - }; - name "BR 23 tender"; - - gauge 16.5; - length 92; - width 34; - height 46; - - object "br23-tender-body.object"; - - bogie - { - position 28; - axle { position 11; wheel_diameter 10; }; - axle { position -11; wheel_diameter 10; }; - }; - bogie - { - position -16; - axle { position 11; wheel_diameter 10; }; - axle { position -11; wheel_diameter 10; }; - }; -}; - -vehicle "43800" -{ - article_number - { - vendor "Märklin"; - article "43800"; - }; - name "B4nzb 64 \"Silberling\""; - - gauge 16.5; - length 282; - width 30; - height 46; - - object "b4nzb64-body.object"; - - bogie - { - position 95; - object "b4nzb64-bogie.object"; - axle { position 20; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -7; wheel_diameter 10; object "wagon-axle.object"; }; - }; - bogie - { - position -95; - object "b4nzb64-bogie.object"; - rotate_object true; - axle { position 7; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -20; wheel_diameter 10; object "wagon-axle.object"; }; - }; -}; - -vehicle "47072" -{ - article_number - { - vendor "Märklin"; - article "47042"; - }; - name "Sgns 691"; - - gauge 16.5; - length 228; - width 30; - height 15; - - object "sgns691-body.object"; - - bogie - { - position 81.5; - object "y25-bogie.object"; - axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; - }; - bogie - { - position -81.5; - object "y25-bogie.object"; - axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; - }; -}; - -vehicle "4624" -{ - article_number - { - vendor "Märklin"; - article "4624"; - }; - name "Fals-u 176"; - - gauge 16.5; - length 134; - width 36; - height 45; - - object "falsu176-body.object"; - - bogie - { - position 35; - object "mindensiegen-bogie.object"; - axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; - }; - bogie - { - position -35; - object "mindensiegen-bogie.object"; - axle { position 10.5; wheel_diameter 10; object "wagon-axle.object"; }; - axle { position -10.5; wheel_diameter 10; object "wagon-axle.object"; }; - }; -}; - -vehicle "4423" -{ - article_number - { - vendor "Märklin"; - article "4423"; - }; - name "Kklm 505"; - - gauge 16.5; - length 115; - width 33; - height 21; - - object ":openwagon:length=100,border=1,color=983800"; - - axle { position 31; wheel_diameter 10; }; - axle { position -31; wheel_diameter 10; }; -}; - -vehicle "4410" -{ - article_number - { - vendor "Märklin"; - article "4410"; - }; - name "Gs 210"; - - gauge 16.5; - length 115; - width 33; - height 47; - - object ":coveredwagon:length=101,roof=9,color=983800,color2=B2B2B2"; - - axle { position 31; wheel_diameter 10; }; - axle { position -31; wheel_diameter 10; }; -}; - -vehicle "46977" -{ - article_number - { - vendor "Märklin"; - article "46977"; - }; - name "Rlmmso 56"; - - gauge 16.5; - length 157; - width 31; - height 21; - - object ":openwagon:length=144,border=1,color=983800"; - - axle { position 46; wheel_diameter 10; }; - axle { position -46; wheel_diameter 10; }; -}; - -vehicle "4699" -{ - article_number - { - vendor "Märklin"; - article "4699"; - }; - name "Pwg 14"; - - gauge 16.5; - length 98; - width 31; - height 43; - - object ":coveredwagon:length=84,roof=5,color=264C1A,color2=B2B2B2"; - - axle { position 25; wheel_diameter 10; }; - axle { position -25; wheel_diameter 10; }; -}; - -vehicle "46717" -{ - article_number - { - vendor "Märklin"; - article "46717"; - }; - name "Railway crane"; - - gauge 16.5; - length 83; - width 32; - height 16; - - object ":flatwagon:length=71,color=000000"; - - axle { position 21.5; wheel_diameter 10; }; - axle { position 0; wheel_diameter 10; }; - axle { position -21.5; wheel_diameter 10; }; -}; - -vehicle "4690" -{ - article_number - { - vendor "Märklin"; - article "4690"; - }; - name "Eaos 106"; - - gauge 16.5; - length 160; - width 35; - height 38; - - object ":openwagon:length=149,border=2,color=983800"; - - bogie - { - position 51.5; - - axle { position 10.5; wheel_diameter 10; }; - axle { position -10.5; wheel_diameter 10; }; - }; - - bogie - { - position -51.5; - - axle { position 10.5; wheel_diameter 10; }; - axle { position -10.5; wheel_diameter 10; }; - }; -}; - -vehicle "37504b" -{ - // XXX The power car is really in the middle, but that configuration isn't supported yet - article_number - { - vendor "Märklin"; - article "37504"; - part "b"; - }; - name "BR 421 S-bahn"; - - gauge 16.5; - length 238; - width 33; - height 44; - - object "br421-body.object"; - - bogie - { - position 80; - object "br420-bogie.object"; - axle { position 14.5; wheel_diameter 10; object "br420-axle.object"; }; - axle { position -14.5; wheel_diameter 10; object "br420-axle.object"; }; - }; - bogie - { - position -80; - object "br420-bogie.object"; - rotate_object true; - axle { position 14.5; wheel_diameter 10; object "br420-axle.object"; }; - axle { position -14.5; wheel_diameter 10; object "br420-axle.object"; }; - }; -}; - -vehicle "37504c" -{ - // XXX Better solution would be to allow flipping of vehicles - article_number - { - vendor "Märklin"; - article "37504"; - part "c"; - }; - name "BR 420 S-bahn"; - - gauge 16.5; - length 268; - width 33; - height 44; - - object "br420-body.object"; - rotate_object true; - - bogie - { - position 96; - object "br420-bogie.object"; - axle { position 14.5; wheel_diameter 10; object "br420-axle.object"; }; - axle { position -14.5; wheel_diameter 10; object "br420-axle.object"; }; - }; - bogie - { - position -94; - object "br420-bogie.object"; - rotate_object true; - axle { position 14.5; wheel_diameter 10; object "br420-axle.object"; }; - axle { position -14.5; wheel_diameter 10; object "br420-axle.object"; }; - }; -}; -- 2.43.0