[mapserver-users] Drawing different lengths of arrows

Stephen Woodbridge woodbri at swoodbridge.com
Sun Oct 23 14:58:02 EDT 2011


On 10/23/2011 2:43 PM, knasia wrote:
> Hi,
> I have pointed on my map arrows which reprezent direction of the road. What
> I need to do now is to draw colour lines (retaining the geometry of the
> road) of the indicated length. I now along which part of the road it should
> be drawn (ex. 0.3; 0.5; max1).
> How can I indicate the length of the arrow?
>
> I attach a picture showing expected arrow.
>
>
> http://osgeo-org.1803224.n2.nabble.com/file/n6922584/arrow.png

Here are a couple of ideas of how you might be able to do this.

1. create a new line layer and shapefile with the segments you want to 
draw as arrows. This probably means writing some code in C, Perl, PHP, 
postGIS or something that can read the existing roads shapefile and 
generate a new shapefile with the extracted segments.

2. You could generate this data on the fly is you loaded the roads into 
a postgres/postgis table and generated the SQL to extract the segment on 
the fly.

It is all about the data! Once you have the data them rendering it is 
much easier. I do not think there is anyway to do this in mapserver 
today. You might check for tickets (search for geomprocessing) to see if 
this is already a requested feature, if not you might want to add it as 
an enhancement.

In general it is faster to render the data if you precompute these 
segments, than to compute them on the fly for every map draw request, so 
using 1. is the best option.

-Steve W


More information about the mapserver-users mailing list