[mapserver-users] Rendering Challenges

Brent Fraser bfraser at geoanalytic.com
Tue May 10 14:32:48 EDT 2011


Steve,

So I've done

C:\>svn -r 11667 co https://svn.osgeo.org/mapserver/trunk/mapserver 
mapserver-6.0.0-r11667

C:\ mapserver-6.0.0-r11667> patch < difference.patch
   patching file mapparser.y
   patching file mapserver.h
   patching file maplexer.l

C:\ mapserver-6.0.0-r11667> flex  -Pmsyy -i -omaplexer.c maplexer.l

but my make results in:

    Creating library mapserver_i.lib and object mapserver_i.exp
mapfile.obj : error LNK2019: unresolved external symbol _msyylex_destroy 
referenced in function _msUpdateLabelFromString
maputil.obj : error LNK2001: unresolved external symbol _msyylex_destroy

Did I miss a step?

Best Regards,
Brent Fraser


On 5/10/2011 9:32 AM, Lime, Steve D (DNR) wrote:
> I've attached a patch against trunk that adds the difference function. It's untested, give it a whirl and
> let me know how it goes... You'll have to re-build the lexer and parser.
>
> Steve
>
> -----Original Message-----
> From: Brent Fraser [mailto:bfraser at geoanalytic.com]
> Sent: Tuesday, May 10, 2011 9:42 AM
> To: Lime, Steve D (DNR)
> Cc: mapserver-users at lists.osgeo.org
> Subject: Re: [mapserver-users] Rendering Challenges
>
> I think it would be very valuable....
>
> Best Regards,
> Brent Fraser
>
>
> On 5/10/2011 8:25 AM, Lime, Steve D (DNR) wrote:
>> I don't have a difference operator implemented. Wouldn't take much though...
>>
>> -----Original Message-----
>> From: Brent Fraser [mailto:bfraser at geoanalytic.com]
>> Sent: Tuesday, May 10, 2011 9:07 AM
>> To: Lime, Steve D (DNR)
>> Cc: mapserver-users at lists.osgeo.org
>> Subject: Re: [mapserver-users] Rendering Challenges
>>
>> Using
>>
>>          STYLE
>>            GEOMTRANSFORM "difference([shape],buffer([shape], -5))"
>>            COLOR        255 211 127
>>          END
>>
>> results in the entire original polygon being filled.
>>
>> Using
>>            GEOMTRANSFORM (difference([shape],buffer([shape], -5)))
>> results in no fill.
>>
>> Best Regards,
>> Brent Fraser
>>
>>
>> On 5/9/2011 4:20 PM, Lime, Steve D (DNR) wrote:
>>> That's were a difference operator might come in handy since you're looking for more of a fill-type effect:
>>>
>>>      GEOMTRANSFORM (difference([shape], buffer([shape], -2)))
>>>
>>> or something like that.
>>>
>>> Steve
>>>
>>> -----Original Message-----
>>> From: Brent Fraser [mailto:bfraser at geoanalytic.com]
>>> Sent: Monday, May 09, 2011 5:18 PM
>>> To: Lime, Steve D (DNR)
>>> Cc: mapserver-users at lists.osgeo.org
>>> Subject: Re: [mapserver-users] Rendering Challenges
>>>
>>> Steve L.,
>>>
>>>       Good point;  I couldn't do any of this in pre-6.0 either!
>>>
>>>       I tried the buffer and it worked great (but we might have to work on
>>> the end-cap types in PDF output)! See http://i52.tinypic.com/2qjc9yv.jpg
>>>
>>> Best Regards,
>>> Brent Fraser
>>>
>>>
>>> On 5/9/2011 2:36 PM, Lime, Steve D (DNR) wrote:
>>>> These aren't specific to 6.0 though- more of a wish list...
>>>>
>>>> Item 1 might be doable in 6.0 as it sits. In 6.0 a style GEOMTRANSFORM is really an expression and I exposed
>>>> the GEOS buffer operator as a proof-of-concept. For example:
>>>>
>>>> STYLE
>>>>       GEOMTRANSFORM (buffer([shape], -2))
>>>>       OUTLINECOLOR 255 0 0
>>>> END
>>>>
>>>> Should generate a single pixel red line on the inside of a polygon shape. You can render it however you'd like.
>>>> Note that a GEOMTRANSFORM is performed AFTER a shape is converted from map to image coordinates so it's effective
>>>> for rendering effects only.
>>>>
>>>> If we exposed a few others you'd be able to do some other interesting things (like fills just inside a line...).
>>>>
>>>> The rest of the ideas are interesting and worthy of discussion.
>>>>
>>>> Steve
>>>>
>>>> -----Original Message-----
>>>> From: mapserver-users-bounces at lists.osgeo.org [mailto:mapserver-users-bounces at lists.osgeo.org] On Behalf Of Brent Fraser
>>>> Sent: Monday, May 09, 2011 2:52 PM
>>>> To: mapserver-users at lists.osgeo.org
>>>> Subject: [mapserver-users] Rendering Challenges
>>>>
>>>>        While testing v6, I can up with the following list of things I
>>>> couldn't do (see http://i56.tinypic.com/8vvprn.png for a graphic):
>>>>
>>>> 1. Render lines inside polygon boundary (with or without opacity)
>>>> 2. Place polygon annotation on/inside boundary line
>>>> (http://trac.osgeo.org/mapserver/ticket/1592 point 8.)
>>>> 3. Rotate anno if required to fit inside a polygon
>>>> 4. Place polygon annotation outside polygon if anno doesn't fit inside
>>>> 5. Place line anno above (or below) when using ANGLE FOLLOW
>>>> 6. Rotate vector symbols to follow lines (a font might work but is a
>>>> pain to create)
>>>> 7. User specified character spacing
>>>> 8. Erase lines (but not other objects) under annotation
>>>>
>>>>        My goal was to use the published shp files
>>>> (http://ftp2.cits.rncan.gc.ca/pub/canvec/50k_shp/092/h/canvec_092h06_shp.zip)
>>>> without modification and see how close I could get to the published PDF
>>>> (http://ftp2.cits.rncan.gc.ca/pub/cantopo/50k_geopdf/092/h/cantopo_092h06_geopdf.zip).
>>>>
>>>>
>>>>        Any suggested rendering techniques are appreciated.  I'll file
>>>> tickets for those problems deemed worthy.
>>>>
>>>
>>
>>
>



More information about the mapserver-users mailing list