summaryrefslogtreecommitdiffstats
path: root/ds9/parsers
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2018-07-27 17:34:25 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2018-07-27 17:34:25 (GMT)
commit88340b6c53f5d9f9c7cc721c1911657964462504 (patch)
tree5ce33ed27a93329ddd66f8b2e7ef1e940d2df483 /ds9/parsers
parentf363b34387596b75f0b3e1bc9f213498cf2a9f63 (diff)
downloadblt-88340b6c53f5d9f9c7cc721c1911657964462504.zip
blt-88340b6c53f5d9f9c7cc721c1911657964462504.tar.gz
blt-88340b6c53f5d9f9c7cc721c1911657964462504.tar.bz2
update ds9 region parser
Diffstat (limited to 'ds9/parsers')
-rw-r--r--ds9/parsers/regionlex.fcl4
-rw-r--r--ds9/parsers/regionparser.tac58
2 files changed, 34 insertions, 28 deletions
diff --git a/ds9/parsers/regionlex.fcl b/ds9/parsers/regionlex.fcl
index c82d9b1..36e77d3 100644
--- a/ds9/parsers/regionlex.fcl
+++ b/ds9/parsers/regionlex.fcl
@@ -7,7 +7,6 @@
%%
-
all {return $ALL_}
at {return $AT_}
auto {return $AUTO_}
@@ -53,6 +52,7 @@ radius {return $RADIUS_}
rotate {return $ROTATE_}
save {return $SAVE_}
savetemplate {return $SAVETEMPLATE_}
+segment {return $SEGMENT_}
select {return $SELECT_}
selectall {return $SELECTALL_}
selectnone {return $SELECTNONE_}
@@ -89,6 +89,8 @@ ruler {return $RULER_}
compass {return $COMPASS_}
projection {return $PROJECTION_}
annulus {return $ANNULUS_}
+ellipseannulus {return $ELLIPSEANNULUS_}
+boxannulus {return $BOXANNULUS_}
panda {return $PANDA_}
epanda {return $EPANDA_}
bpanda {return $BPANDA_}
diff --git a/ds9/parsers/regionparser.tac b/ds9/parsers/regionparser.tac
index 5663bb0..e28c898 100644
--- a/ds9/parsers/regionparser.tac
+++ b/ds9/parsers/regionparser.tac
@@ -57,6 +57,7 @@
%token ROTATE_
%token SAVE_
%token SAVETEMPLATE_
+%token SEGMENT_
%token SELECT_
%token SELECTALL_
%token SELECTNONE_
@@ -93,6 +94,8 @@
%token COMPASS_
%token PROJECTION_
%token ANNULUS_
+%token ELLIPSEANNULUS_
+%token BOXANNULUS_
%token PANDA_
%token EPANDA_
%token BPANDA_
@@ -236,35 +239,36 @@ format : DS9_ {set _ ds9}
| XY_ {set _ xy}
;
-shape : CIRCLE_
- | ELLIPSE_
- | BOX_
- | POLYGON_
- | point POINT_
- | LINE_
- | VECTOR_
- | TEXT_
- | RULER_
- | COMPASS_
- | PROJECTION_
- | ANNULUS_
- | ELLIPSE_ ANNULUS_
- | BOX_ ANNULUS_
- | PANDA_
- | EPANDA_
- | BPANDA_
- | COMPOSITE_
+shape : CIRCLE_ {set _ circle}
+ | ELLIPSE_ {set _ ellipse}
+ | BOX_ {set _ box}
+ | POLYGON_ {set _ polygon}
+ | LINE_ {set _ line}
+ | VECTOR_ {set _ vector}
+ | PROJECTION_ {set _ projection}
+ | SEGMENT_ {set _ segment}
+ | TEXT_ {set _ text}
+ | point POINT_ {set _ "$1 point"}
+ | RULER_ {set _ ruler}
+ | COMPASS_ {set _ compass}
+ | ANNULUS_ {set _ annulus}
+ | ELLIPSEANNULUS_ {set _ ellipseannulus}
+ | BOXANNULUS_ {set _ boxannulus}
+ | PANDA_ {set _ panda}
+ | EPANDA_ {set _ epanda}
+ | BPANDA_ {set _ bpanda}
+ | COMPOSITE_ {set _ composite}
;
-point :
- | CIRCLE_
- | BOX_
- | DIAMOND_
- | CROSS_
- | 'X'
- | 'x'
- | ARROW_
- | BOXCIRCLE_
+point : {set _ ""}
+ | CIRCLE_ {set _ circle}
+ | BOX_ {set _ box}
+ | DIAMOND_ {set _ diamond}
+ | CROSS_ {set _ cross}
+ | 'X' {set _ x}
+ | 'x' {set _ x}
+ | ARROW_ {set _ arrow}
+ | BOXCIRCLE_ {set _ boxcircle}
;
delim : NL_ {set _ 0}