Both sides previous revision Previous revision | |
breakingextend [2020/07/08 18:11] – Typo tarquinwj | breakingextend [2020/07/08 18:31] (current) – Breaking on last station images tarquinwj |
---|
===Breaking at the last station of a loop=== | ===Breaking at the last station of a loop=== |
| |
Breaking at the last station of the loop - the point where the two branches of the loop rejoin - is much harder. With a single statement, it is not currently possible (Therion 5.4.4) to make the extended elevation break at the end station of a loop's shorter branch (station 7 on the 2-10-9-8-7 branch). "Extend ignore" can only be used to add breaks when legs lead away from a station (in whichever order Therion is progressing around a loop). Therefore while "extend ignore 2 10" can cause a break at station 2, and "extend ignore 8 7" can cause a break at station 8, there is no equivalent way to make a break at station 7. "Extend ignore 7 6" and "extend ignore 7" will cause Therion to put a break at station 7 on the 1-2-3-4-5-6-7 branch instead, and "extend ignore 7 11" will cause Therion to ignore the statement since a break is not needed for that leg, and then revert to its default break point within the loop. | Breaking at the last station of the loop - the point where the two branches of the loop rejoin - is much harder. With a single statement, it is not currently possible (Therion 5.4.4) to make the extended elevation break at the end station of a loop's shorter branch (station 7 on the 2-10-9-8-7 branch). "Extend ignore" can only be used to add breaks when legs lead away from a station (in whichever order Therion is progressing around a loop). Therefore while "extend ignore 2 10" can cause a break at station 2, and "extend ignore 8 7" or "extend ignore 8" can cause a break at station 8, there is no equivalent way to make a break at station 7. "Extend ignore 7 6" and "extend ignore 7" will cause Therion to put a break at station 7 on the 1-2-3-4-5-6-7 branch instead: |
| |
| {{::extendignore7.png|}} |
| |
| "Extend ignore 7 11" will cause Therion to ignore the statement since a break is not needed for that leg, and then revert to its default break point within the loop. |
| |
However, a quirk of the way that Therion processes "ignore" commands can be used to make it happen. By default, Therion progresses through the shorter side of the loop; 1-2-10-9-8-7-11, treating 7-6-5-4-3-2 as a separate branch. | However, a quirk of the way that Therion processes "ignore" commands can be used to make it happen. By default, Therion progresses through the shorter side of the loop; 1-2-10-9-8-7-11, treating 7-6-5-4-3-2 as a separate branch. |
| |
First, you tell it to "extend ignore 8 7". This causes it to break at station 8. It now proceeds through the longer branch of the loop instead; 1-2-3-4-5-6-7-11, treating 2-10-9-8 as one branch, and 7-8 as another branch. | First, you tell it to "extend ignore 8" or "extend ignore 8 7". This causes it to break at station 8. It now proceeds through the longer branch of the loop instead; 1-2-3-4-5-6-7-11, treating 2-10-9-8 as one branch, and 7-8 as another branch: |
| |
| {{::extendignore8.png|}} |
| |
Then you tell it to "extend ignore 7 8". This causes it to break at station 7 on the 7-8 branch, which is the place where you want the break to be. The 7-8 branch is now floating, not attached to anything. Therion helpfully connects it back onto the 2-10-9-8 branch at station 8. The end result is the desired rendering. | Then you tell it to "extend ignore 7 8". This causes it to break at station 7 on the 7-8 branch, which is the place where you want the break to be. The 7-8 branch is now floating, not attached to anything. Therion helpfully connects it back onto the 2-10-9-8 branch at station 8. The end result is the desired rendering. |
| |
extend start 1 | extend start 1 |
extend ignore 8 7 | extend ignore 8 # or extend ignore 8 7 |
extend ignore 7 8 | extend ignore 7 8 |
| |
| {{::extendignorelast.png|}} |
| |
Note that this is not tested in multiple different configurations, and it is possible that unexpected behaviours could appear. However, it does seem to work in this demonstration at least. | Note that this is not tested in multiple different configurations, and it is possible that unexpected behaviours could appear. However, it does seem to work in this demonstration at least. |