Templot Club forums powered for Martin Wynne by XenForo :

TEMPLOT 3D PLUG TRACK - To get up to speed with this experimental project click here.   To watch an introductory video click here.   See the User Guide at Bexhill West.

     Templot5 - To join this open-source project on GitHub click here.  For news of the latest on-going developments click here.  Templot5 is now included with Templot2 - download.

  • The Plug Track functions are experimental and still being developed. Some of the earlier pages of this topic are now out-of-date.

    For an updated overview of this project see this topic.   For some practical modelling aspects of using Plug Track see Building 3D Track.

    The assumption is that you have your own machines on which to experiment, or helpful friends with machines. Please do not send Templot files to commercial laser cutting or 3D printing firms while this project is still experimental, because the results are unpredictable and possibly wasteful.

    Some pages of this and other topics include contributions from members who are creating and posting their own CAD designs for 3D printing and laser-cutting. Do not confuse them with Templot's own exported CAD files. All files derived from Templot are © Martin Wynne.
  • The Plug Track functions are experimental and still being developed.

    For an updated overview of this project see this topic.   For some practical modelling aspects of using Plug Track see Building 3D Track.

    The assumption is that you have your own machines on which to experiment, or helpful friends with machines. Please do not send Templot files to commercial laser cutting or 3D printing firms while this project is still experimental, because the results are unpredictable and possibly wasteful.

    Some pages of this and other topics include contributions from members who are creating and posting their own CAD designs for 3D printing and laser-cutting. Do not confuse them with Templot's own exported CAD files. All files derived from Templot are © Martin Wynne.

Experimental 3D plug track - up to version 244c

Quick reply >
When you click to export a file, the first part of the export process is for Templot to generate all the DXF blocks for each template. They are generated at the required model scale and to match the required rail section and any other settings, such as whether loose outer jaws are wanted. For the interchangeable chair jaws, the same blocks are used as many times over as the template requires.
Hi Martin,
Ok I get it now that makes more sense.
Still and this is very much more about my understanding, If Templot is creating the DXF block (but no library)
and then reusing it, as many times as required. Is it creating a new repeat of the same DXF block each time? Or does it somehow know how to add or maybe even subtract part made DXF blocks to create the finished chair? If the latter Is that not an indication some sort of block manipulation is possible within Delphi? (am not saying your using that concept. Or you even want to go down that path, I am only asking as a lay person how it all work.)

I have to say that is all somewhat academic, if Templot is generating SLT files directly. I had assumed it seems wrongly, the process was first to create a DXF file, and then convert that into STL file format. Or have I misunderstood that part of your post as well?

I must admit I had overlooked you start by using full size math equations for the detail dimensions etc, then divide by whatever scale is set within Templot. Which is also the obvious explanation as to why gauge setting first is so important.

More for my understanding here, is there a standard height from sleeper to the top of the rail head? I presume there must be, as I have seen photos of chairs that are mixed and matched. I.E. REA with GW for example. Which I would have though not possible, if the critical chair dimensioned are not following some sort of standard sleeper to rail head height value.
Cheers
Phil
 
_______________
message ref: 10674
More for my understanding here, is there a standard height from sleeper to the top of the rail head? I presume there must be, as I have seen photos of chairs that are mixed and matched. I.E. REA with GW for example. Which I would have though not possible, if the critical chair dimensioned are not following some sort of standard sleeper to rail head height value.
@Phil G

Hi Phil,

The prototype does not have a baseboard. The tops of timbers don't have to be all at the same level. For example the toe timber is 1/2" lower in the ballast than the others to allow for the 1/2" thick soleplate under the chairs.

cheers,

Martin.
 
_______________
message ref: 10675
Ok I get it now that makes more sense.
Still and this is very much more about my understanding, If Templot is creating the DXF block (but no library)
and then reusing it, as many times as required. Is it creating a new repeat of the same DXF block each time? Or does it somehow know how to add or maybe even subtract part made DXF blocks to create the finished chair? If the latter Is that not an indication some sort of block manipulation is possible within Delphi? (am not saying your using that concept. Or you even want to go down that path, I am only asking as a lay person how it all work.)

I have to say that is all somewhat academic, if Templot is generating SLT files directly. I had assumed it seems wrongly, the process was first to create a DXF file, and then convert that into STL file format. Or have I misunderstood that part of your post as well?

I must admit I had overlooked you start by using full size math equations for the detail dimensions etc, then divide by whatever scale is set within Templot. Which is also the obvious explanation as to why gauge setting first is so important.
@Phil G

I'm sorry Phil, I don't understand what you are asking me.

When I have got 244a released I'm intending to release the files open-source again, so you will be able to se how it all works.

cheers,

Martin.
 
_______________
message ref: 10676
@Phil G

Hi Phil,

The prototype does not have a baseboard. The tops of timbers don't have to be all at the same level. For example the toe timber is 1/2" lower in the ballast than the others to allow for the 1/2" thick soleplate under the chairs.

cheers,

Martin.
Hi Martin,
I get that, but when ballasting they must have a target level to aim for. Are you saying when a different chair design is used its a case of using the ballast to pack to ensure the right rail height is maintained?
So its is possible for different thickness (height) chairs to be mixed and matched on the prototype?

If so the logic for a model would have to be to very the thickness of the timber to suit the required chair height in the rail.
Sound like yet another viable:(
cheers
phil,
 
_______________
message ref: 10677
Hi Martin,
I get that, but when ballasting they must have a target level to aim for. Are you saying when a different chair design is used its a case of using the ballast to pack to ensure the right rail height is maintained?
So its is possible for different thickness (height) chairs to be mixed and matched on the prototype?

If so the logic for a model would have to be to very the thickness of the timber to suit the required chair height in the rail.
Sound like yet another viable:(
cheers
phil,
@Phil G

Hi Phil,

The track is tamped at each timber so that the rail top is at the required level. No-one checks to see whether the timber top is level with anything. But different chair types are not normally mixed up at random. All REA chairs have a base thickness of 1.3/4" so timbers will normally be level. At a place where the rail height changes, say from BS-95R to BS-85R section, the rail top is maintained using special cranked fishplates, and the timber tops will be higher or lower as needed.

The FDM timber thickness can be adjusted in Templot to whatever you want. The whole point of Templot is that users know what they want, as when using any other workshop tool.

Likewise for laser-cut bases, you select the plywood thickness to give you the required rail top.

cheers,

Martin.
 
_______________
message ref: 10678
Hi Martin,
Fully understood
All REA chairs have a base thickness of 1.3/4"
So the bottom line is, when the chair base is not the same as an REA. we adjust within Templot. Assuming of course the difference is actually measurable, at whatever the chosen scale is.

By the way, I am not asking to be be argumentative here, simply to better understand, how we could possibly help you with Templot development.
cheers
Phil
 
_______________
message ref: 10680
@Phil G

Hi Phil,

Just to correct what I said a moment ago, REA chairs for BS-85R rail (e.g. S2, L2 chairs) have a base thickness of 1.5/8", i.e. 1/8" thinner than chairs for BS-95R rail.

This may be significant in 7mm/ft scale where many modellers use the smaller BS-85R section (code 125). However the option to adjust the base thickness is not yet in Templot, so I will add that right now while I think of it. 1/8" in 7mm scale is 0.07mm, i.e. more than one layer in most resin prints.

However the BS-85R chairs are also smaller, and there is no way I can create all those in the short term.

cheers,

Martin.
 
_______________
message ref: 10681
Hi Phil,

On the prototype turnout timbers are normally 6 inches thick, whereas standard sleepers are only 5 inches, but the rail head is maintained by packing. Also on the prototype there is railhead wear to take into consideration, this can be as much as 3/8", all this is sorted with shims or lift plates.

On the ESR we had mostly GW 95 rail, but we also had around a 1/4 mile of 85lb, there was also LNER and BR rail with chairs to suit, and a 109lb flat bottom rail. There was also various amounts of railhead wear to take into consideration. I used to cut fishplates in half and weld them back together to make custom lift plates, At least once a year we would need to repack the joints around the areas of different rail intersections to maintain the railhead, unless we had, had a tamper in to get its certification, which would usually do the whole 3 miles, in the time it took us to do a dozen or so joints with bars and Kangos.

On the models we build we start with a flat baseboard and work up, so we don't use different thicknesses of sleepers and timbers, if we get railhead wear, it's imperceptible. If we mix different rail sections, IE. code 75 with F/B code 82 and code 100, we tend to pack the lower code rail to match the higher code rail head, once ballasted no one sees the subterfuge.

HTH
 
_______________
message ref: 10682
Hi Phil,

On the prototype turnout timbers are normally 6 inches, whereas standard timbers are only 5 inches, but the rail head is maintained by packing. Also on the prototype there is railhead wear to take into consideration, this can be as much as 3/8", all this is sorted with shims or lift plates.

On the ESR we had mostly GW 95 rail, but we also had around a 1/4 mile of 85lb, there was also LNER and BR rail with chairs to suit, and a 109lb flat bottom rail. There was also various amounts of railhead wear to take into consideration. I used to cut fishplates in half and weld them back together to make custom lift plates, At least once a year we would need to repack the joints around the areas of different rail intersections to maintain the railhead, unless we had, had a tamper in to get its certification, which would usually do the whole 3 miles, in the time it took us to do a dozen or so joints with bars and Kangos.

On the models we build we start with a flat baseboard and work up, so we don't use different thicknesses of sleepers and timbers, if we get railhead wear, it's imperceptible. If we mix different rail sections, IE. code 75 with F/B code 82 and code 100, we tend to pack the lower code rail to match the higher code rail head, once ballasted no one sees the subterfuge.

HTH
Hi Phil,
Thanks for the info very much appreciated. Always good to know how the real railway handled things.
I had wrongly assume you have to start with some sort of datum point.

What I was really trying to understand is how Martin was planning to account for different types of chairs when the height from the Timber, was different EG what is the chair base was not 1 and 3/4 full size. Given the timber does represent a plane in space in the model form, simply because the plug drops into the socket and stops when it hits the top of the timber. Equally in model form the top of the rail can be measured again the top of the timber for exactly the same reason.
However I am still non the wiser how that is being planned to be overcome.
cheers
Phil,
 
_______________
message ref: 10684
However I am still non the wiser how that is being planned to be overcome.
@Phil G

Hi Phil,

It's not being planned to be overcome in Templot.

You are the modelmaker. If for some reason you want an odd non-REA chair in a timbering brick which is otherwise for REA chairs, it will be up to you to cut out the relevant timber and pack it up or create a pocket for it in the trackbed.

If there are REA chairs on the same timber, it will be necessary to use a packing shim under whichever chairs are the smallest.

GWR chairs normally have a base thickness of 1.7/8", i.e. 1/8" thicker than REA.

You are jumping a long way ahead. For the present the default for all Templot rail seats is 1.3/4" as REA. If you want something different it will be up to you to make the necessary arrangements.

The prototype sometimes has chairs with different base thicknesses for use in superelevated track. But any of that is an even longer way ahead. One thing at a time. :)

cheers,

Martin.
 
_______________
message ref: 10685
Phil,

When we did/do relays, we scrape the old ballast down to the formation level, spread the new ballast to roughly 150mm or 6 inches in real money, layout the sleepers or timbers, fit and key up the rails, propel the ballast hoppers over the relayed track, remove them.

We then sight up a couple of panels, starting from the undisturbed end, along one rail, using Jack's, we have sighting boards to assist, we then pack all the sleepers/ timbers under that rail. Once we have done that we then cross level the other rail, we use shims in 1/4" increments for cant, that rail or rails if it's a turnout, then packed. Repeat as required.

We then box it all up and give it back to the train players, with a 5mph restriction for a month and then we go back and fettle it, and remove the restriction. If during the period of the restriction, the train players notice anything untoward we will do remedial work as necessary.

Nothing like the way we modellers lay track. If you can see the fractions of an inch between the prototype rail chair seats in model form, you're a better man than me, especially from the normal 2 ft or so that we look at layouts from. The whole thing is a compromise.

I can't pick out the difference between real chairs from 10 ft away, unless there's a different number of screws or the chairs are fang bolted and even then you look a bit further away, even that disappears.
 
_______________
message ref: 10687
first attempts at etching timber around sole plate is ok (3mm ply - 00-SF) but, I probably need to etch deeper as this etch is measuring 0.1mm deep and after the thinest spray of paint/sleeper grime the definition will be lost. I'll post more later once perfected.View attachment 8598
Some progress and I'm still refining the resin chair fit but, I'm not convinced about the rust colour of either the resin chairs or the laser cut sole-plate. Any thoughts/feedback/oppinion would be great?
1710604594098.png
 
_______________
message ref: 10699
Some progress and I'm still refining the resin chair fit but, I'm not convinced about the rust colour of either the resin chairs or the laser cut sole-plate. Any thoughts/feedback/oppinion would be great?View attachment 8886
@Terry Downes

Hi Terry,

Looking good. The chair detail is excellent -- the screw heads are obviously square, which is great to see in 4mm scale. :)

The chair colour is maybe a bit too red on my monitor. Is that painted, or coloured resin? I have obtained some brown colourant for mixing with the resin, but I haven't tried using it yet. Generally chairs are a grey/brown colour -- a mixture of rust, brake dust and general gunge:


index.php



Soleplates tend to be oily grey/black. I think a soleplate would only look rusty brown in disused track. Even in sidings the slide chairs generally get a slosh of black oil once a year, which strays into the timbers and along the sole plate:


index.php


index.php



cheers,

Martin.
 
_______________
message ref: 10701
Hi Martin,
Ok I get it now that makes more sense.
Still and this is very much more about my understanding, If Templot is creating the DXF block (but no library)
and then reusing it, as many times as required. Is it creating a new repeat of the same DXF block each time? Or does it somehow know how to add or maybe even subtract part made DXF blocks to create the finished chair? If the latter Is that not an indication some sort of block manipulation is possible within Delphi? (am not saying your using that concept. Or you even want to go down that path, I am only asking as a lay person how it all work.)

I have to say that is all somewhat academic, if Templot is generating SLT files directly. I had assumed it seems wrongly, the process was first to create a DXF file, and then convert that into STL file format. Or have I misunderstood that part of your post as well?

I must admit I had overlooked you start by using full size math equations for the detail dimensions etc, then divide by whatever scale is set within Templot. Which is also the obvious explanation as to why gauge setting first is so important.
@Phil G @James Walters

Hi Phil,

I'm sorry that I haven't really answered this and your other posts properly, and I know you and others are keen to help me if you can.

The problem is that I don't know how to answer it. I can't find a common frame of reference between what you are saying and the way Templot works.

In order to help me you would need to design a chair jaw as a collection of horizontal sections with a series of dimensioned nodes along the periphery of each section. Then write a long chunk of program code which looks something like this. This is the code which generates a DXF block for the outer jaw on an S1 chair. I can't post it inline because it exceeds the maximum post length -- you may need to zoom your browser to read it:

https://85a.uk/odds/s1_outer_pas.txt

Clearly that would need a lot of explaining before most folks could do much to help. And it's all this never-ending explaining of Templot which is driving me nuts. I'm not sure that I can go on doing it much longer. I'm sorry.

This is the actual DXF output which that program code generates:

https://85a.uk/odds/s1_outer_dxf_block.txt

It's quite possible that someone could write a completely different chunk of code to create an identical output, or some completely different DXF output which renders as the same jaw part. Maybe they will be able to do those things when I have open-sourced all the code. I hope so, because that would take Templot forward to a new level and leave me free to wander off into the hills. :)

cheers,

Martin.
 
_______________
message ref: 10705
@Terry Downes

Hi Terry,

Looking good. The chair detail is excellent -- the screw heads are obviously square, which is great to see in 4mm scale. :)

The chair colour is maybe a bit too red on my monitor. Is that painted, or coloured resin? I have obtained some brown colourant for mixing with the resin, but I haven't tried using it yet. Generally chairs are a grey/brown colour -- a mixture of rust, brake dust and general gunge:


index.php



Soleplates tend to be oily grey/black. I think a soleplate would only look rusty brown in disused track. Even in sidings the slide chairs generally get a slosh of black oil once a year, which strays into the timbers and along the sole plate:


index.php


index.php



cheers,

Martin.
Thanks for the feedback and photos. This is just what I was looking for. My photo is showing grey resin chairs painted with a light air brush of red brown but, this is obviously far too dark so, I will play around with other colours today. Rather than apply colour to the resin chairs on the raft I think it maybe better to slide the chairs onto the rail, position chairs correctly for dropping into timbers and then paint chairs and rail. I'll post results later...
 
_______________
message ref: 10706
@Phil G @James Walters

Hi Phil,

I'm sorry that I haven't really answered this and your other posts properly, and I know you and others are keen to help me if you can.

The problem is that I don't know how to answer it. I can't find a common frame of reference between what you are saying and the way Templot works.

In order to help me you would need to design a chair jaw as a collection of horizontal sections with a series of dimensioned nodes along the periphery of each section. Then write a long chunk of program code which looks something like this. This is the code which generates a DXF block for the outer jaw on an S1 chair. I can't post it inline because it exceeds the maximum post length -- you may need to zoom your browser to read it:

https://85a.uk/odds/s1_outer_pas.txt

Clearly that would need a lot of explaining before most folks could do much to help. And it's all this never-ending explaining of Templot which is driving me nuts. I'm not sure that I can go on doing it much longer. I'm sorry.

This is the actual DXF output which that program code generates:

https://85a.uk/odds/s1_outer_dxf_block.txt

It's quite possible that someone could write a completely different chunk of code to create an identical output, or some completely different DXF output which renders as the same jaw part. Maybe they will be able to do those things when I have open-sourced all the code. I hope so, because that would take Templot forward to a new level and leave me free to wander off into the hills. :)

cheers,

Martin.
Hi Martin, just an idea which 'may' help provide an interim solution for non-Templot generated plug chairs and alleviate some of the pressure which seems to be bearing down on You.
I'm wondering if it's possible to provide a generic round/square hole/socket in timbers for all of the currently unavailable chairs? This would be positioned at the intersection of the timber centre and the rail centres. This would then enable anyone to design custom/bespoke chairs which would fit into the generic holes. Users could then design and share chair files (stl & dxf) in a forum based library for 3D printing etc.
 
_______________
message ref: 10707
Hi Martin, just an idea which 'may' help provide an interim solution for non-Templot generated plug chairs and alleviate some of the pressure which seems to be bearing down on You.
I'm wondering if it's possible to provide a generic round/square hole/socket in timbers for all of the currently unavailable chairs? This would be positioned at the intersection of the timber centre and the rail centres. This would then enable anyone to design custom/bespoke chairs which would fit into the generic holes. Users could then design and share chair files (stl & dxf) in a forum based library for 3D printing etc.
@Terry Downes @James Walters

Hi Terry,

This will be possible in 244a when I get it released soon.

index.php


Set any existing chair location as an SC chair. You will then be able to enter the dimensions from the gauge-edge for a rectangular socket aligned to the rail. What you put in the socket will be up to you. The socket will be a scale 1 inch smaller all round than the entered chair base dimensions. All entered dimensions above will be in prototype sizes in inches.

In 244a the SC chair base and jaws will be fixed as a single fictional REA chair. But you don't have to print them or use those chairs. You can put whatever you like in the socket instead.

You can leave the SC sockets all the same size if you wish, but that probably won't be convenient for some chair sizes.

Alternatively you can omit the chair at those locations. You will then get a plain timber top (no socket) to which injection-moulded or home-brewed flat-underside chairs could be glued. You can do that now in 243a.

Alternatively you can omit the jaws and rail seat from the SC chair to create a plain chair base of the required size. You can then glue on whatever rail seats and jaws you wish, but not yet create such customized jaws in 244a:


no_jaws_chair_base.png



You can already do the above for any chair in 243a, but not adjust the size of it. You might find one of the existing chairs is a suitable size for what you want, and edit a socket for it in your laser-cutting software.

I seem to have explained all this several times over. I'm feeling exhausted with endless explanations.

cheers,

Martin.
 
_______________
message ref: 10708
@Terry Downes @James Walters

Hi Terry,

This will be possible in 244a when I get it released soon.

index.php


Set any existing chair location as an SC chair. You will then be able to enter the dimensions from the gauge-edge for a rectangular socket aligned to the rail. What you put in the socket will be up to you. The socket will be a scale 1 inch smaller all round than the entered chair base dimensions. All entered dimensions above will be in prototype sizes in inches.

In 244a the SC chair base and jaws will be fixed as a single fictional REA chair. But you don't have to print them or use those chairs. You can put whatever you like in the socket instead.

You can leave the SC sockets all the same size if you wish, but that probably won't be convenient for some chair sizes.

Alternatively you can omit the chair at those locations. You will then get a plain timber top (no socket) to which injection-moulded or home-brewed flat-underside chairs could be glued. You can do that now in 243a.

Alternatively you can omit the jaws and rail seat from the SC chair to create a plain chair base of the required size. You can then glue on whatever rail seats and jaws you wish, but not yet create such customized jaws in 244a:


View attachment 8894


You can already do the above for any chair in 243a, but not adjust the size of it. You might find one of the existing chairs is a suitable size for what you want, and edit a socket for it in your laser-cutting software.

I seem to have explained all this several times over. I'm feeling exhausted with endless explanations.

cheers,

Martin.
WOW!, that all looks brilliant and should satisfy most, if not all of the plug track advocates. I will try and resist posting so as not to distract you too much from 433a completion etc.
 
_______________
message ref: 10709
@Phil G @James Walters

Another day, another menu option: :)


temp_wrong_k_chairs.png



This is a temporary kludge in 244a.

At present in 243a the K-crossing timbers are without sockets, so that until I have done the proper chairs you can glue on injection-moulded chairs, or whatever, as a temporary solution.

Ticking the above menu option puts some WRONG chairs on them. These are unmodified SC chairs. These can be edited to the required longer size. Either simply to create sockets for some other chairs. Or a lengthened SC chair could have the jaws omitted in the jaw options so that you could build up a custom chair on the chair base:


temp_wrong_k_chairs1.png



Just to repeat -- I know these chairs are wrong. I don't need someone to write and tell me. Which is what happened when I allowed default S1 chairs to flow through the V-crossings before I had done the proper crossing chairs. This experiment isn't finished. :)

cheers,

Martin.
 
_______________
message ref: 10710
@Phil G @James Walters

Hi Phil,

I'm sorry that I haven't really answered this and your other posts properly, and I know you and others are keen to help me if you can.

The problem is that I don't know how to answer it. I can't find a common frame of reference between what you are saying and the way Templot works.

In order to help me you would need to design a chair jaw as a collection of horizontal sections with a series of dimensioned nodes along the periphery of each section. Then write a long chunk of program code which looks something like this. This is the code which generates a DXF block for the outer jaw on an S1 chair. I can't post it inline because it exceeds the maximum post length -- you may need to zoom your browser to read it:

https://85a.uk/odds/s1_outer_pas.txt

Clearly that would need a lot of explaining before most folks could do much to help. And it's all this never-ending explaining of Templot which is driving me nuts. I'm not sure that I can go on doing it much longer. I'm sorry.

This is the actual DXF output which that program code generates:

https://85a.uk/odds/s1_outer_dxf_block.txt

It's quite possible that someone could write a completely different chunk of code to create an identical output, or some completely different DXF output which renders as the same jaw part. Maybe they will be able to do those things when I have open-sourced all the code. I hope so, because that would take Templot forward to a new level and leave me free to wander off into the hills. :)

cheers,

Martin.
Hi Martin,
Thanks for posting this it is very interesting, I agree there is little benefit if you spend a huge amount of your free time trying to explain it, nor should you.
I will spend a few days getting my head around what the code is doing, its certainly looking quite similar to the sort of thing I was expecting.

In order to make any sense of it, I do need to ask you a series of qualifying questions, hopefully the answers are a simple yes or no.
and will not take up much of your time.
1, Templot is essentially a vector type program. IE its using geometric and mathematical commands?
2, when you start Templot and get the initial BH-T55 REA semi-curved B+V-6 LH. it is more than just a visual start point. its also allows Templot to understand what it has started with, and exactly where its sits in terms of x, y starting vector points (origins) if I am reading your code correctly then the z origin is the top of the rail head.
3, The scale is important as mathematically Templot is using full size values to create all object shapes in the first place.
4, Equally as the operators changes what he/she sees on the screen and adjusts it to represent what they want. Templot is actually tracking these vector changes relative to what it had in the first place.

5, when experimental chairing is switch on, conceptually it does the same thing.
6, in its most basic form it knows where S1 chairs are, again in relation to its true origin points for example. also because there is only the option of REA currently it also knows the chair type needs to be REA. It also knows as the size of the turnout increases so the relative position and type of chairs to use are know by Templot.

The thing that I seem to be missing in the code for S1 chair is, some of the actual values IE it calls for an external rad for example, but I can't see where any dimensional values are attributed to the rad. Are these values stored in another location within the code?

Although all that may sound quite simple its far from simple and the code driving all this is truly impressive.

Just for clarity, I don't ever see me rewriting your code, what maybe possible as an example, would be to take your code, firstly fully understand it and then for example, make modifications which would take the values for an S1 type chair and turn it into the values for say an LNWR or GWR S1 equivalent chair. The code would then need, at some other location to understand what type of entity (chair) it needed to allow to do the math too. This is clearly no 5 minute task, but overtime it maybe possible. As long as your happy to go down that path.
cheers
Phil,
 
_______________
message ref: 10711
Hi Martin,
Just to add to the above questions I missed a rather obvious one, once you hit store key, you automatically allow Templot to start on another template by using exactly the same starting coordinates, which is why the new Templot always appears directly over the last stored. Its also the trigger to allow experiment chairing to be done. I.e. until an object is stored in the box file it is not avaible for experimental chairing is that correct?
cheers
Phil,
 
_______________
message ref: 10712
@Phil G @James Walters

Hi Phil,

I can't answer your questions with simple yes/no answers. All I can do is explain yet again how Templot works. Briefly, because otherwise it will take me several hours to write all this stuff again.

A track plan is made up of individual templates. From 1 to maybe 100s. Each one is listed in the storage box, and from there can be saved in a BOX file.

Each template has 3 component parts:

1. a specification -- the gauge, scale, crossing angle, curving radius, width of timbers, etc. This part is mandatory, you can't have a template without a specification. Most of the data is recorded as its full prototype size.

2. several optional build lists. They are created by the generator as lists of X,Y co-ordinates for everything which makes up a template -- each corner of a timber, each step along a rail-edge, etc. In the build process full-size prototype dimensions are scaled to the model size. The build is optional -- unused and library templates do not have build lists while stored in the storage box. Templates for which build lists have been generated are called background templates. The build lists are not included in a BOX file, they are generated fresh when a BOX file is loaded into the storage box.

3. an optional output. This is the drawing created on the screen, on a paper printer, in a PDF file, on the sketchboard function, or in a DXF 2D file. The output is created by drawing lines between the X,Y co-ordinates in the build lists. You can't have any output without a build list.



The control template is a separate from the above and does not appear in the storage box. Its specification exists in computer memory only while Templot is running. There can be only one control template. For convenience it is copied into a BOX file and restored on reloading. It can't be included in DXF/STL exports.



For the plug track, everything is divided into 2D data (for laser-cutters, etc.) and 3D data (for 3D printers, etc.)

Most of the 2D data is template-specific just as it is for other outputs -- i.e. each template can have a different setting. For example one template could have wider timbers than another one in the same DXF output file.

The 3D data is not template-specific -- it is global across all templates in an output file. The thickness of the timbers for example. Again most of the 3D data is recorded at the prototype size and scaled by the DXF/STL output as it is created in the file. Some non-prototypical model data is recorded as a nominal prototype size -- the rail section data for example.

That's enough explaining. Please read again these companion pages about how Templot works and how to use it:

https://85a.uk/templot/companion/origins_intent.php

https://85a.uk/templot/companion/basic_working_methods.php

cheers,

Martin.
 
_______________
message ref: 10719
Hi Martin,
Thanks for taking the time to write this, I was not so much interested in a track plan, as that is clearly a series of pre defined templates which have been move to a memory shortage area. It was more of an understanding the mechanics of how Templot formed a template.
or in your parlance how "the control template" is working from a programming perspective.
The explanation of the 2D and the 3D is valuable info.

Re the links and the general overview, I had read all of this and more or less got my head around how the code is likely to be being implemented. The good news its everything you have written is as per my expectation, of how it would have to be.

we are clearly as cross purposes here, with what I was asking you, which is a basic rundown of how Templot is functioning as a program.
For example the information of origin points. Templot has to be working in a similar manor to how cad programs implement vector type programs. As they all have to have an origin point when the program is started, even if its not obvious to the user.

I will await the realease of your open source code, including the plug track elements. Assuming you do decided to do this and then have a look at that. Unfortunately that will also mean, I will have to put on hold any short term plans to offer you some direct assistance.
Cheers
Phil,
 
_______________
message ref: 10721
For example the information of origin points. Templot has to be working in a similar manor to how cad programs implement vector type programs. As they all have to have an origin point when the program is started, even if its not obvious to the user.
@Phil G

Hi Phil,

Sorry, I don't know what you mean there. The only origin I know about is the grid origin 0,0 at the bottom left of the trackpad screen.

cheers,

Martin.
 
_______________
message ref: 10722
.
Testing a new screenshot tool.

test_snipsvg.png
 

Attachments

  • test_snipsvg.svg
    317.7 KB · Views: 94
_______________
message ref: 10730
.
SnipSVG

This is a new 100% free screenshot tool from Alexander Halser in Austria:

https://www.helpandmanual.com/snipsvg

The advantage over my trusty old screenshot tool which I'm still using from Windows95 days is that all the callouts and annotations can be saved separately, and edited later to create a new image if necessary. Natively it creates an SVG image, but those are not directly embeddable in posts here (or on most other forums), so it's necessary in addition to save the image in PNG format each time you edit the SVG. But it could still be very useful. There are other graphics editors which can do the same, but this one is 100% free.

Alexander is using it as a sales aid for his main Help&Manual software (which I use for the Companion pages). But there are no nag screens or internet connections or email details needed. Just download and install as a free stand-alone program. The Free Trial button on the web page refers to Help&Manual, not SnipSVG.

I didn't get on too well with his HelpXplain infographic generator, see:

https://85a.uk/templot/companion/catch_points.php

but this looks more promising.

I will move these posts somewhere else later, or delete them.

cheers,

Martin.
 
_______________
message ref: 10731
Hi Martin,
How did you create the red highlight spiral?
Steve
In Cold & Misty Brighton
@Steve_Cornford

Hi Steve,

I'm still learning:

snipsvg_shapes.png



A bit brighter here today, but not the sunny afternoon the forecast promised.

cheers,

Martin.
 
_______________
message ref: 10733
.
I'm hoping to get 244a released this weekend.

So can we provisionally say Tuesday evening for a ZOOM meeting to talk about it?

26th March. 8pm UK time.

cheers,

Martin.
 
_______________
message ref: 10734
@James Walters

Hi all,

Program update 244a is now on the server.

Your copy of Templot should update automatically if you restart it and follow the instructions. There is no need to uninstall your existing copy of Templot.

Getting the chair heaving to a usable state has been a bit of a battle. Not all of it is yet working, and I'm aware of some quirks which will need further attention. But I have released it in its present state because I know some folks have been waiting for it for a long time.

A brief list of some of the 244a changes, which I will explain in more detail later (or I have explained previously):

2D exports:

modified snibs
soleplate detail
indented socket ends
kerf lines can be drawn directly in the background shapes

3D exports:

chair heaving
temporary wrong chairs on K-crossings (editable in the chair heaving)
multiple switch drive slider ribs
parallel-wing changes
default timber thickness changed to 10.08" (3.36mm in 4mm scale)

general:

changes to inherited brick/marker colours



244b is the next work in progress. :)

cheers,

Martin.
 
_______________
message ref: 10747
Martin - sorry - I am sure that you have told me countless times but from memory Chair Heaving used to be under Real - I cannot find it now.....has it moved or am I not looking hard enough.
Hi Michael, chair heaving is available via real / shove timbers / select a timber (e.g. T3) / click heave chairs on T3 button / heave chairs dialogue box opens. Good luck.
1711305922903.png

1711306288596.png
 
_______________
message ref: 10750
Chair heaving - basics
@Michael Woods

Hi Michael,

Chair heaving is part of the shove timbers function. That's at real > shove timbers or just press the comma key.

Click on the timber number, and then click the heave chairs button:


heaving_button.png


A new dialog appears on which you can heave (i.e. change) or omit any of the chairs on that timber.

If you click the customize... button you can change the jaw options for the one specific chair.

If you change it to an SC chair (bottom of the list) you can also click the SC size... button to change its outline dimensions.

n.b. you are changing the control template. It will need to be stored before you can do the 3D exports.

The dialog is rather large but it can be dragged around out of the way using the top bar. I will try to shrink it down a bit when I have finished adding things to it.

edit: posts crossed. :)

cheers,

Martin.
 
_______________
message ref: 10752
Hi Martin,
Thanks for the update, Seamless integration as always. There are lots of little goodies to get my head around here for sure.
Just had a quick play with chair heaving took me a whist to realise you don't need to accept the change it just happens smoothly in the background.
I have not figured out how to get the second slider visible just yet, but I think I will get there.
cheers
Phil,
 
_______________
message ref: 10755
_______________
message ref: 10756
Back
Top