chiark / gitweb /
abortive segment movpos-specific mapping arrangements (actually unneeded because...
[trains.git] / layout / informat.txt
index 5756cedea263619fdbd7bba71107babbc4d52bf5..0b71b89deae826b9e78b41ed50348fe8e85c90d9 100644 (file)
@@ -92,9 +92,12 @@ Commands
 
    S       D
    ----    ----
-   N       N'     remaps an entire segment including all features
-   N/M     M'     remaps a particular moveable feature; N is the
-                    unmapped name (if applicable)
+   N       N'         remaps an entire segment including all features
+   N/M     M'         remaps a particular moveable feature; N is the
+                        unmapped name (if applicable)
+   N/[MP]  N'/[M'P']  remaps a specific moveable feature position to a
+                        specific other moveable feature position;
+                       empty M and M' mean the fixed portions.
 
   The effect is that (sub)segments or features used in segment
   commands are translated when the segment command is read; the
@@ -194,6 +197,20 @@ Commands
   namespace as a new loc PL (unless PL already exists).  P may be `='
   to indicate an empty prefix (default is not to export locs).
 
+ segcmap S P...
+  Map segment S to colours using postscript commands P... (which
+  should be a postscript fragment to modify the graphics state,
+  typically `N setgray' or the like.  This is used for the drawing
+  element Q (see below).  S should be the bare segment (no movfeat or
+  `-').
+
+ segend L S
+  Notes that segment S (which should not specify a movfeat but may
+  specify `-') has an end at location L.  This is fed back from
+  extractgraph's run on a previous result of running layout, and used
+  to determine where to place the segment labels for E.  NOT YET
+  IMPLEMENTED
+
 Command-line options
 
  -D       turn on debug (level 1)  } currently only debug levels are
@@ -209,19 +226,22 @@ Command-line options
               in each direction.  xp is multiplied by 270mm; yp
               is multiplied by 190mm.
 
- -e<layersel>[ARSCcLlMNOm]...
+ -e<layersel>[ARSCcLlDdMNOm]...
           Turn on and off drawing of elements in groups.
           These are abbreviations for various -E... options.
-            track                                                 -E....
-              A  full track                                        ARScg
-              R  rails only                                        aRscg
-              S  rails and sleepers only                           aRScg
-              C  centrelines only                                  arsCg
-              c  swept area and ticks only                         Arscg
-              r  no lines drawn at all                             arcs
+            track                                                 -E.....
+              A  full track                                        ARScgd
+              R  rails only                                        aRscgD
+              S  rails and sleepers only                           aRScgd
+              C  centrelines only                                  arsCgd
+              c  swept area and ticks only                         Arscgd
+              r  no lines drawn at all                             arsc
             labels at locs
               L  label top-level locs (turns on bars for them too)  LMg
               l  do not label any locs                              l
+            label distances
+              D  label all distances                                D
+              d  do not label any distances
             bars at locs (thick lines perp to track dir'n)
               M  bars for top-level locs only                       Mnog
               N  bars for top-level locs and those in obj's         MNog
@@ -230,14 +250,17 @@ Command-line options
             subsegment encoding
               G  draw only subsegment encoding                 Garcslmno
 
- -E<layersel>[ARSCLMNOarsclmno]...
+ -E<layersel>[ARSCLDMNOarscldmno]...
           enable (capitals) or disable (lowercase) drawing of
           individual elements
               A  draw track swept area, with ticks
               R  draw track rails
+              Q  draw track segment fills according to segcmap
+             E  label track segments according to segend
               S  draw track sleepers
               C  draw track centrelines
               L  label locs
+              D  label distances along the track
               M  mark locs with a bar
               N  mark locs with a bar in objs
               O  mark locs with a bar in parts
@@ -294,13 +317,22 @@ Special comments in PostScript:
  %L bbox no locs, no bbox
        there were no locs, so there is no bounding box
        usu because input file was just obj defns and showlibrary
- %L segmentpart KL [-]S D X0 Y0 A0 X1 Y1 A1
+ %L segmentpart KL [-]S D X0 Y0 A0 X1 Y1 A1
        records that a piece of subsegment S is drawn in the subsegment
        encoding.  The piece is of length D, in layer KL (which may be
        the empty string, depending on layer configurations), and runs
-       from the loc X0,Y0,A0 to X1,Y1,A1.
+       from the loc X0,Y0,A0 to X1,Y1,A1.  I is a counter which starts
+       at 0 and is simply there to help cross-reference between
+       various programs and formats.
 
  Scope S is
    O!    when defining object or part O
    N:T   scope T but inside part (introduced with `part') N      } when
    O::T  scope T but inside obj (introduced with `obj[flip]') O  } placing
+
+
+See also:
+ layout-data.h for info regarding layout data deliverables for use by
+                 control and UI software
+ redactgraph.c, extractgraph for info regarding extraction and
+                  preparation of those deliverables