I'd like to symbolise a point dataset with a square (or circle) using two colours. This is useful for displaying values collected on both sides of a road (for example).
I created two symbols, a left side and right side of the square as shown below:
SYMBOL NAME 'SQUARE_L' TYPE vector FILLED true POINTS 0 0 0 1 0.5 1 0.5 0 0 0 END END SYMBOL NAME 'SQUARE_R' TYPE vector FILLED true POINTS 0.5 0 1 0 1 1 0.5 1 0.5 0 END END
Then in my LAYER I can create a CLASS using the two different STYLES:
CLASS STYLE SYMBOL "SQUARE_L" COLOR [LEFT_CLR] SIZE 10 END STYLE SYMBOL "SQUARE_R" COLOR [RIGHT_CLR] SIZE 10 END END
However the features do not display correctly - they are not aligned correctly and are not of equal size (due to an overlap?). I thought I had resolved it by setting a "bounding box" in the symbol to make sure they were equal size:
SYMBOL NAME 'SQUARE_L' TYPE vector FILLED true POINTS 0 0 0 1 0.5 1 0.5 0 0 0 -99 -99 # increase bounding box so shape is correct size 0 0 1 0 1 1 0 1 0 0 END END
However I then noticed that the sides of the square were displayed with the wrong values. The MapServer symbol collection at http://github.com/mapserver/mapserver/wiki/SymbologyExchangeVector has some nice examples but none of which describe how to do this. Any ideas on how to achieve this in MapServer?