Sin-thesis
How Sin-thesizing is done
Creating a straight segment is rather easy. Simply set the end vertex
to the desired distance on the negative Z-axis. Any X- and Y- values are zero.
But where are we to put the control points?
We will call the mathematicaly correct solution 'equidistant' (you may also have found 'equidistant'
with these 'Push Straight...' operations already). So the 1st control point will be on exactly
one third of the straight's lenght, the 2nd on two thirds of it.
However: when 'making straight' any segment within the Nolimits-Editor you will get different
positions for the two control points. This other characteristic is available as an option also.
Calculating Bows (arcs, curves, turns, call these whatever you like) is a bit more tricky.
Due to the nature of the 3rd-order beziers we're using with NoLimits there is no mathematical exact
solution of creating a perfect circle or any part of it. You simply can't model sine/cosine
functions with a 3rd-order Bezier polynom.
(Tiny voice: "B-splines, get B-splines!" Redunzelizer: "Forget it!")
So we have to find a Bezier-curve that represents the 'apperance' of a circle/bow as close as possible.
The initial values for this calculation are based on a 'best fit - least error' algorithm and will
not be discussed here. For you it's most important to reckognize that the error of this calculation
(the 'non-perfect behaviour' so to say) increases dramaticaly with larger angle values!
It's therefor strongly recommended using angles smaller than aproximately 65 degrees.
Designing A Parabolic Hat using Bezier's is possible with mathematical perfection.
The quadratic parabola segment(s) created here are a subset of the Bezier's third-order eqations,
thus can be modeled with ease. Nevertheless there are lots of different parameters which
may define the desired final result.
Cooking a Bezier by coordinates is something for the 'not faint at heart' (at least mathematicaly spoken).
So fire up you spreadsheets and on we go... (Low voice: "Uarghhhhh... Please take that away!")
In case of more complex prefabs please use the import- / export-functions which are described
in chapter 'Menus & Commands'.
^ Top of Page
Sin-thesis: General
!!! Caution: The Result of any synthesis will immediately become your new 'IN'
and thus overwrite any previously existing 'IN' !!!
First choose what to do: besides the four existing groups (Straight, Bow, Parabola, Coord's) you will find some
'radiobuttons' by which you may select the type of synthesis you want to do.
Select a Sin-thesis
Then better do some general settings which will affect all (w. one exception) kinds of sin-thesizing:
Synth Panel: General Options
-
Units: (must i say something about this?)
But better use '[Menu]/[Put]/[All Metrics/Units to...]' instead! This will change ANY affected units
throughout the whole 'Purgatorium'.
-
Scale Result by: check this and enter a value in case you want
to apply additional resizing. (will NOT influence Parabolas!)
After you have set all the other specific values and finaly pushed the 'Synthesize'-button...
(Third voice: "Show me! Show me!".) OK here you are. On special request of the audience,
exlusive and only tonight we proudly present the fabulous:
Synthesize Button
... so you've pushed the 'Synthesize'-button and the result will immediately become your new
'IN' and show up.
^ Top of Page
Sin-thesis: Straights
Synth Panel: Straight's options
The result will be created within the ZX-plane and thus have zero Y-values.
The X-/Y-/Z-Coordinates of the 1st Vertex (Bezier-'P0') will be 0/0/0.
-
T-Len. Track lenght. (checked the 'units' settings above already???)
-
Type: Equ. 'equidistant' as mentioned above.
-
Type: NL-Style as with NoLimit-Editor 'make straight' .
^ Top of Page
Sin-thesis: Bows
Synth Panel: Bows's options
The result will be created within the ZX-plane and thus have zero Y-values.
The X-/Y-/Z-Coordinates of the 1st Vertex (Bezier-'P0') will be 0/0/0.
A positive angle will make your bow turn the right, a negative to the left.
Input of 'Angle' values is limited to 90.0 degrees.
There are three Inputs: values for angle, radius and and bow lenght.
Calculation is done out of two of these three which you may then
choose by checking one of the following 'By'-options.
-
Use dX/dZ: will interpret the value in the 'Angle'-input as slope
and not as degrees. Whith checking this any existent angle value will automaticaly
be converted to its corresponding 'ZX-slope' and vice versa.
-
By A & R: Use angle and radius values for calculation.
-
By A & B: Use angle and bow-length.
-
By R & B: Do it with 'Rythm and Blues'!
^ Top of Page
Sin-thesis: Parabolic Hats
CAUTION: the general 'resizing' option on the 'Synth Panel' will NOT influence Parabolas!
Synth Panel: Parabola's options
The result will be created within the ZY-plane which is 'straight forward' and up and thus have zero X-values.
The X-/Y-/Z-Coordinates of the 1st Vertex (Bezier-'P0') will be 0/0/0.
The settings will first create and affect a half 'Parabolic Hat' stub!
This 'half' may then optionaly (by default) be mirrored to give a fully symmetric 'hat'.
The first line will determine the general characteristics. Select one of the following three:
-
'G&V' Design the parabolic curve by G-Forces and Speed (Velocity!)
Enter the desired G-force value then.
-
'R-top' You may want to have a defined radius (in ZY-plane) with the
'top'. Enter this radius then.
-
'K-par' Define by the 'k-parameter' of the parabola.
You may want to calculate the characteristics by using the generic 2nd order parabolic function of
'y = k * x^2' (resp. 'y = k * (-z)^2' in NoLimits coordinates)
In case you have selected 'G&V' above you will have to preset the velocity of the train
(precisesly: of the 'mass center' of the virtual train as seen on rail/wheel-level! (Phew...))
as it's passing the 'top' (the highest point of the parabola)
-
'V-top' Enter a value after having chosen the speed unit besides it.
Finaly you will have to set the actual dimensions of the resulting segment(s):
-
'Dims. by Z:' Use 'Dims'-value as Z-dimension (=footprint lenght) for the 'half hat'
-
'Dims. by Y:' Use 'Dims'-value as overall Y-dimension (= height)
-
'Dims. by Slope-T:' Use whenever the entry point (=first vertex) of your parabola
should have an exact defined slope and get happy with the resulting size.
Reminder: this slope is simply the tangens of an angle. (No degree values entered here!)
Additional Parabolic Hat Options:
-
Split into N Seg's.: This will NOT change any size or characteristics you have already
defined. It will simply create the same half parabola stub but now split into as many segments as you say here.
-
AND Mirror by Top: Again: All above settings create a HALF parabola!
Only this option (enabled by default) will create and attach the mirrored 'other' half.
But you may for instance want different slopes at entry and exit points of your parabola.
Then Sin-thesize these each alone by deactivating this option and then merge the two Prefabs
with some or another of these infamous 'Purgatorium' 'Push'-functions...
^ Top of Page
Sin-thesis: By Bezier-Coordinates
This will give you the opportunity to create a single segment by user-defined values.
In case you want this a bit more elegant or wish to create multiple segments please use the import- / export-functions
(from/to CSV-/Text-files) which are available by [Menu]:[Prefab]:[... as CSV-/Text ...]
Synth Panel: Bezier Coord's Input
-
Values P1-X... P3-Z: 3-Dimensional Coordinates for your new segment.
-
Lock P's with 'IN': Will result in displaying the values of the
currently viewed segment. (See 'Walk'-functions with display-options)
There is NO VALIDATION done on any of these values!
Z-Coordinates are preset -2...-6 to instantly remind you of the existent Z-axis direction.
You probably also may ask: 'Where can i set the coordinates for the P0 ?'. These are 0/0/0, remember?
Maybe you forgot all this until now? Of course you didn't! I'm sooooo sorry about assuming that...
(Tiny voice once more: "This redunzelizer sucks!")
^ Top of Page