Skip to content
Snippets Groups Projects
Commit a7b4f059 authored by Michael Leuschel's avatar Michael Leuschel
Browse files

first version of train example to show SVG external functions

parent d8d19306
No related branches found
No related tags found
No related merge requests found
MACHINE TrainTrack
// A small example to show how one can use LibrarySVG to flexibliy visualise
// train track zones,...
SETS
TTDS = {ttd1,ttd2,ttd3}
CONSTANTS
TrackElementNumber, TRACK, TTD_TrackElements
PROPERTIES
TrackElementNumber : NATURAL1
& TRACK = 1..TrackElementNumber
& TTD_TrackElements : TTDS --> FIN1(TRACK)
& TrackElementNumber = 30
& TTD_TrackElements = {ttd1 |-> 1..10 , ttd2 |-> 11..25 , ttd3 |-> 26..30}
DEFINITIONS
"LibrarySVG.def" // enable to use the external functions in the VisB json file
END
\ No newline at end of file
{
"svg":"Track.svg",
"items":[
{
"id":"track_polyline",
"attr":"points",
"value":"svg_axis(TRACK,100.0/real(TrackElementNumber),1.0,100.0,1.0)",
"comment":"show ticks for Track units"
},
{
"id":"ttd_polyline",
"attr":"points",
"value":"svg_set_polygon(ran(%tt.(tt:TTDS|max(TTD_TrackElements(tt)))),100.0/real(TrackElementNumber),1.0,100.0,2.0)",
"comment":"show ticks for TTD Limits"
},
{
"id":"occupied_ttd_polygon",
"attr":"points",
"value":"svg_axis(union(ran(%tt.(tt:{ttd1}|TTD_TrackElements(tt)))),100.0/real(TrackElementNumber),1.0,100.0,2.0)",
"comment":"show ticks for TTD Limits"
},
{
"id":"cleared_ttd_polygon",
"attr":"points",
"value":"svg_set_polygon(union(ran(%tt.(tt:{ttd2,ttd3}|TTD_TrackElements(tt)))),100.0/real(TrackElementNumber),1.0,100.0,2.0)",
"comment":"show ticks for TTD Limits"
}
],
"events":[ ]
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns="http://www.w3.org/2000/svg"
width="750"
height="300"
viewBox="0 5 150 65"
version="1.1"
id="svg5154">
<polygon id = "track_polyline"
points="0,0 100,0"
style="stroke-width: 0.3"
stroke="red" fill="none"
transform="translate(10,20.5)" />
<polygon id = "ttd_polyline"
points="0,0 100,0"
style="stroke-width: 0.3"
stroke="red" fill="none"
transform="translate(10,22.5)" />
<rect id = "ttd_rect"
style="stroke-width: 0.1"
width="100" height="2" x="0" y="0"
stroke="black" fill="none"
transform="translate(10,23)" />
<polygon id = "occupied_ttd_polygon"
points="0,0 0,2 10,2 10,0 70,0 70,1 90,1 90,0"
stroke="none" fill="red"
opacity="0.70"
style="stroke-width: 0.2"
transform="translate(10,23)" />
<polygon id = "cleared_ttd_polygon"
points="0,0 10,2 20,2 20,0 90,0 90,1 100,1 100,0"
stroke="none" fill="blue"
opacity="0.70"
style="stroke-width: 0.2"
transform="translate(10,23)" />
<text text-align="left" x="5" y="41"
font-size ="2" fill="gray" font-family="sans-serif">
<tspan x="15" dy = "0.6em" id="visb_debug_messages">.TXT</tspan>
</text>
</svg>
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment