|
RUEDE HULSMANN'S SMOOTH SWITCHES
On 21 October 2001 Ruede Hulsmann announced the availability of downloadable smooth switches via his website. These switches are gorgeous. Not only are the curves almost perfectly smooth, but the switch points clearly indicate which route will be followed. Rail intersections at the frog are clearly gapped, providing extra realism. Ruede has promised additional curves of various radii and transition pieces for switches between parallel tracks that do not match the 4m separation upon which the original switches are based. As a bonus for anyone wanting to get started in route building, Ruede's demo provides a good base with which to experiment.
Concept. BVE renders track in 25m long straight sections. To form a curve, each succeeding section is rotated (by BVE) relative to the previous one. For large-radius curves, this series of sections appears more or less as a continuous curve. For tighter curves, such as we find with rapid transit and light rail systems, the lack of a true curve becomes noticeable. The only way to overcome this in BVE is to design a 25m long section that in itself has shorter sections, each rotated somewhat from the previous. The new section, which is created as a free object, is then placed over the original track which has been created as an invisible object. Mr. Gaku (Tanigumi, Iida, Minitobu Lines) and others have already used this technique to create smoother curves, including divergent legs of switches.
Normally, a switch is created by having two tracks intersect. Ruede has taken this process a step further by actually creating a switch object. This lets him add the detail at the points and frog. Ruede has also increased to 5 the number of subsections in the curves of his switches to give him smoother curves. The results are stunning.
A glance at the code for one of Ruede's switch objects shows why the switches are so nice. My Notepad printout amounted to 6 pages. Fortunately, once the switch is completed, it is there for as many times as you like. Ruede has done us all a great favor by making these available.
What's included. Ruede's demo includes a route with ten arrangements of switches and all the necessary objects and associated bitmaps. Even if you are not a developer, this demo is worth looking at if only for a glimpse of what lies ahead. The route requires train 481. My version of 481 seems to have some files missing, though it operates OK. If you don't have 481, you can substitute another train.
At the heart of Ruede's system is a basic switch where the train continues straight ahead. A variation is the switch that follows the divergent route. These two variants occur in left and right hand versions. Thus you have a base of four switch objects. Ruede has provided switches with rust/brown ballast for older, more heavily trafficked routes and switches with grey ballast for newer, less heavily trafficked routes. The four brown ballast objects are as follows. (I've added the English comments. The grey ballast objects are named with a 2 in place of the 1.)
- w25_r_g1.b3d ; (righthand switch; straight route taken; brown)
-
- w25_r_a1.b3d ; (righthand switch; divergent route taken; brown)
-
- w25_l_g1.b3d ; (lefthand switch; straight route taken; brown)
-
- w25_l_a1.b3d ; (lefthand switch; divergent route taken; brown)
In order to provide switches that converge rather than diverge, Ruede simply rotates the switch 180 degrees.
Following the Weichendemo (Switch Demo) route, each of the ten presentations are identified by a stopping point. The timetable names these stopping points and the last station as follows (I've add the English comments):
- Einfache Weiche (geradeaus) ; Simple switch (straight)
-
- Gleiverbindung (geradeaus) ; Track connection (straight)
-
- Schrägeinbau 1 (geradeaus) ; Diagonal installation 1 (straight)
-
- Schrägeinbau 2 (geradeaus) ; Diagonal installation 2 (straight)
-
- Einfache Weiche (Abzweig) ; Simple switch (branch)
-
- Gleisverbindung (Abzweig) ; Track connection (branch)
-
- Schrägeinbau 1 (geradeaus) ; Diagonal installation 1 (branch)
-
- Schrägeinbau 2 (geradeaus) ; Diagonal installation 2 (branch)
-
- Nebengleis (geradeaus) ; Siding (straight)
-
- Nebengleis (Abzweig) ; Siding (branch
-
- Ende ; End
Ruede also provides two rail objects: gleis_null.b3d and gleis_01.b3d. The former is invisible. It's code consists of a single statement: [meshbuilder]. The latter is a conventional rail object.
Finally, there is a ground object gras.b3d and two curve rail objects objects, gb25_r1.b3d and gb25_l1.b3d and their matching grey ballast counterparts.
Key points. To use the switches, there are several key points to bear in mind. First, the running track is normally invisible, but very real as far as the train is concerned. Second, there are three basic switch configurations: 1) the straight ahead switch, 2) the branch switch, and 3) the convergent switch.
With the staight ahead switch, you simply insert the switch object w25_r_g1.b3d (right) or w25_l_g1.b3d (left).
With the divergent switch, you must rotate the running track so the train actually turns and you must also rotate the switch so the divergent rails line up with the running direction.
With the convergent switch, you must rotate the switch object 180 degrees and factor in the rotations described for the divergent switch.
Following are relevant sections of Ruede's code (I've added English comments and removed code elements related to stations and stops). (You can display a secondary window with a summary of BVE rail codes here.)
- [Object]
-
- rail(0)=S-Bahn-Berlin\gleis_null.b3d ; track type 0 ; invisible
-
- rail(1)=S-Bahn-Berlin\gleis_01.b3d ; track type 1; visible
-
-  
-
- RH switch, straight
-
- 300@railstart(1, 0, 0, 0) ; begin track 1 with zero x/y displacement; track type 0 (invisible)
-
- 300@railtype(0, 0) ; running track (0) concurrent with track 1
-
- 300@freeobject(0, 0) ; RH straight switch object (0) placed on track 0
-
-  
-
- RH switch, branch
-
- 1000@railstart(1, 0, 0, 0) ; begin track 1 with zero x/y displacement; track type 0 (invisible)
-
- 1000@railtype(0, 0) ; running track (0) concurrent with track 1
-
- 1000@curve(156.538) ; track turns 156.538 degrees
-
- 1000@freeobject(0, 1 , 0, 0, 355.426) ; RH branch switch object (1) placed on track 0 and rotated 355.426 degrees CW (or 4.574 CCW)
-
-  
-
- LH switch, straight, approach from open end
-
- 900@railstart(1, 4, 0, 0) ; begin track 1 with 4m lateral displacement; track type 0 (invisible)
-
- 925@railtype(1, 2) ; track 1 with 2m lateral displacement
-
- 925@railtype(0, 0) ; invisible running track (type 0) with zero displacement
-
- 950@freeobject(0, 2 , 0, 0, 180) ; LH straight switch object (2) placed on track 0 and rotated 180 degrees CW
-
What's coming. So far Ruede's curved rail objects match the radius of his switches. He has indicated that curves of different radii will be along soon. He also has promised transition pieces to permit parallel tracks with lateral separations other than 4 meters. Currently, the switch system is perfectly attuned to the 4m separation.
Alfred Barten, 31 October 2001
Top        
|