[mapserver-users] Angle Follow will accept only simple linestring don't MultiLinestring ?

Andrea Peri aperi2007 at gmail.com
Wed Aug 14 01:08:29 PDT 2013


Yes.

Is the OFFSET !

Yes Thomas when I remove the offset the angle follow will work without
error.

I have other informations:

he error trigger on spatialite but don't in a simpe FEATURE text definet
dataset.
Infact with this dataset:

LAYER
    NAME "line"
    TYPE LINE
    STATUS DEFAULT
    EXTENT  1662112.76 4858445.22 1666743.13 4860849.91
    FEATURE
    WKT "LINESTRING(1662112.755029 4859495.405004, 1662172.424828
4859710.216279, 1662357.401204 4859984.697353, 1662411.104022
4860175.640708, 1662345.467244 4860318.848225, 1662172.424828
4860473.989701, 1662178.391808 4860670.900037, 1662321.599324
4860796.206614, 1662619.948317 4860849.909432, 1662888.462411
4860837.975473, 1663174.877444 4860611.230238, 1663222.613283
4860384.485003, 1663145.042545 4860247.244467, 1662977.967109
4860056.301111, 1662769.122814 4859841.489836, 1662709.453015
4859680.38138, 1662810.891673 4859435.735206, 1663091.339726 4859250.75883,
1663371.78778 4859137.386213, 1663813.344289 4859143.353192, 1663992.353685
4859256.72581, 1664093.792343 4859513.305944, 1664028.155564
4859829.555876, 1663765.60845 4860038.400171, 1663664.169793
4860193.541648, 1663652.235833 4860390.451983, 1663771.57543
4860545.593459, 1664081.858383 4860599.296278, 1664410.042275
4860581.395339, 1664779.995027 4860402.385943, 1664988.839322
4860133.871849, 1665078.34402 4859919.060574, 1665114.145899
4859644.579501, 1665114.145899 4859423.801246, 1665132.046838
4859214.956951, 1664947.070463 4859077.716414, 1664947.070463
4858862.905139, 1665263.320395 4858725.664602, 1665615.372207
4858731.631582, 1665764.546703 4858916.607958, 1665830.183482
4859214.956951, 1665824.216502 4859567.008762, 1665728.744824
4859925.027554, 1665639.240126 4860223.376547, 1665633.273147 4860503.8246,
1665716.810865 4860670.900037, 1665961.457039 4860760.404734,
1666253.839052 4860760.404734, 1666492.518246 4860617.197218,
1666659.593682 4860408.352923, 1666743.1314 4860098.06997, 1666713.296501
4859811.654937, 1666635.725763 4859638.612521, 1666474.617307
4859519.272924, 1666295.607911 4859465.570105, 1666229.971132
4859435.735206, 1665979.357978 4859262.69279, 1666009.192878
4859065.782454, 1666301.574891 4858886.773058, 1666546.221065
4858862.905139, 1666623.791803 4858707.763663, 1666576.055964
4858516.820307, 1666176.268314 4858445.216549)"
    END #FEATURE
    LABELCACHE on
    CLASS
      STYLE
        COLOR 200 200 200
        OUTLINECOLOR 0 255 0
      END
    LABEL
     TEXT 'BLAH BLAH'
        COLOR 0 85 255
        OUTLINECOLOR 212 255 255
        OUTLINEWIDTH 1
        FONT "LiberationSans-Regular"
        #FONT "Calibri"
        TYPE truetype
        SIZE 9
        ANGLE FOLLOW
        OFFSET 15 99
        POSITION auto
        PRIORITY 10
        MAXOVERLAPANGLE 180.0
        BUFFER 1
        FORCE OFF
        PARTIALS FALSE
        MINDISTANCE 200
    END
    END #CLASS
  END


The error don't happen.

Instead if I transfer this exact dataset in a spatialite (4.1.1) and apply
an
angle follow
with an offset

the error trigger immediatly when the
box clip will create a multilinestring.

However removing the
OFFSET setting the error don't trigger.

please notice I'm using spatialite 4.1.1 and gdal 1.10.

Regards,

Andrea.



2013/8/14 thomas bonfort <thomas.bonfort at gmail.com>

> Andrea, can you confirm if you are having the error when you remove
> the label offset ?
>
> On 14 August 2013 09:37, Andrea Peri <aperi2007 at gmail.com> wrote:
> > Hi,
> >
> > My theory is not true.
> >
> > I was able to create a  featureset that like my image that will work when
> > the visible box clip it creating a multilinestring..
> >
> > sorry for noise,
> >
> > My quest still go on.
> >
> > Regards,
> >
> >
> >
> >
> > 2013/8/13 Andrea Peri <aperi2007 at gmail.com>
> >>
> >> Hi,
> >> Perhaps I found the explanation.
> >>
> >> The "angle follow" with OGR is using the
> >> BufferBuilder::bufferLineSingleSided
> >> That function seem don't work with a MultiLinestring . It necessary
> need a
> >> simple linestring.
> >>
> >> The question is that sometime the simple linestirng when is clipped from
> >> the visible bbox of the map to render, is transformed in a
> MultiLinestring.
> >> As showed in attached image.
> >>
> >> So a linestring geometry clipped by the visible bbox will become a
> >> multilinestring geometry and the bufferLineSingleSided will give error
> to
> >> put a "follow angle".
> >>
> >> Andrea.
> >>
> >> 2013/8/13 Andrea Peri <aperi2007 at gmail.com>
> >>>
> >>> ok, thx.
> >>> I change to multiple scale.
> >>>
> >>> However I do a rapid check removing a label component, but the problem
> is
> >>> still here.
> >>>
> >>> Now I rewrite a more exact mapfile using two classes.
> >>>
> >>> Andrea.
> >>>
> >>>
> >>>
> >>>
> >>> 2013/8/13 thomas bonfort <thomas.bonfort at gmail.com>
> >>>>
> >>>> yes, that's incompatible. use multiple scale-dependant classes for now
> >>>>
> >>>> On 13 August 2013 18:26, Andrea Peri <aperi2007 at gmail.com> wrote:
> >>>> > The two label are at different max/min scaledenominator.
> >>>> > The goal is to have little label size at low scales and bigger font
> >>>> > size at
> >>>> > bigger scales.
> >>>> >
> >>>> > However only one lable is active at one scale level.
> >>>> >
> >>>> > Is this incompatible with "follow" ?
> >>>> >
> >>>> >
> >>>> >
> >>>> > 2013/8/13 thomas bonfort <thomas.bonfort at gmail.com>
> >>>> >>
> >>>> >> why the double label? they seem to be the same, but in any case
> >>>> >> multiple labels are not supported for FOLLOW.
> >>>> >>
> >>>> >> On 13 August 2013 18:08, Andrea Peri <aperi2007 at gmail.com> wrote:
> >>>> >> > I'm using spatialite 4.1.1,
> >>>> >> > so use ogr to access the db.
> >>>> >> >
> >>>> >> >   LAYER
> >>>> >> >     NAME "rt_topogr.50k.etichette.topon_idro_50k"
> >>>> >> >     STATUS OFF
> >>>> >> >     EXTENT 1554750.74 4678325.52 1771722.76 4924791.90
> >>>> >> >     TYPE LINE
> >>>> >> >     CONNECTIONTYPE OGR
> >>>> >> >     CONNECTION "/path-to-spatialite/zz_topografica.sqlite"
> >>>> >> >     DATA "select PK_UID_2, TOPO_OK, GEOMETRY from topon_idro_50k"
> >>>> >> >     PROJECTION
> >>>> >> >       "+init=epsg:3003 +towgs84=0,0,0,0,0,0,0"
> >>>> >> >     END
> >>>> >> >     METADATA
> >>>> >> >       "wms_title" "topon_idro_50k"
> >>>> >> >       "wms_extent" "1554750.74 4678325.52 1771722.76 4924791.90"
> >>>> >> >     END
> >>>> >> >     LABELCACHE ON
> >>>> >> >     MAXSCALEDENOM 60100
> >>>> >> >     MINSCALEDENOM 1
> >>>> >> >     CLASS
> >>>> >> >       NAME ''
> >>>> >> >       MAXSCALEDENOM 60100
> >>>> >> >       MINSCALEDENOM 1
> >>>> >> >       LABEL
> >>>> >> >         TEXT '[TOPO_OK]'
> >>>> >> >         COLOR 0 85 255
> >>>> >> >         OUTLINECOLOR 212 255 255
> >>>> >> >         OUTLINEWIDTH 1
> >>>> >> >         MAXSCALEDENOM 60100
> >>>> >> >         MINSCALEDENOM 40100
> >>>> >> >         FONT "LiberationSans-Regular"
> >>>> >> >         TYPE truetype
> >>>> >> >         SIZE 7
> >>>> >> >         ANGLE FOLLOW
> >>>> >> >         OFFSET 15 99
> >>>> >> >         POSITION auto
> >>>> >> >         PRIORITY 10
> >>>> >> >         MAXOVERLAPANGLE 180.0
> >>>> >> >         BUFFER 1
> >>>> >> >         FORCE OFF
> >>>> >> >         PARTIALS FALSE
> >>>> >> >         MINDISTANCE 200
> >>>> >> >       END
> >>>> >> >       LABEL
> >>>> >> >         TEXT '[TOPO_OK]'
> >>>> >> >         COLOR 0 85 255
> >>>> >> >         OUTLINECOLOR 212 255 255
> >>>> >> >         OUTLINEWIDTH 1
> >>>> >> >         MAXSCALEDENOM 40100
> >>>> >> >         MINSCALEDENOM 1
> >>>> >> >         FONT "LiberationSans-Regular"
> >>>> >> >         TYPE truetype
> >>>> >> >         SIZE 9
> >>>> >> >         ANGLE FOLLOW
> >>>> >> >         OFFSET 15 99
> >>>> >> >         POSITION auto
> >>>> >> >         PRIORITY 10
> >>>> >> >         MAXOVERLAPANGLE 180.0
> >>>> >> >         BUFFER 1
> >>>> >> >         FORCE OFF
> >>>> >> >         PARTIALS FALSE
> >>>> >> >         MINDISTANCE 200
> >>>> >> >       END
> >>>> >> >     END
> >>>> >> >   END
> >>>> >> >
> >>>> >> >
> >>>> >> >
> >>>> >> >
> >>>> >> > 2013/8/13 thomas bonfort <thomas.bonfort at gmail.com>
> >>>> >> >>
> >>>> >> >> there's something strange in your error message... the
> >>>> >> >> singleSidedBuffer stuff is in GEOS, and should have nothing to
> do
> >>>> >> >> in
> >>>> >> >> msOGRFileNextShape. post your whole mapfile layer.
> >>>> >> >>
> >>>> >> >> On 13 August 2013 17:42, Andrea Peri <aperi2007 at gmail.com>
> wrote:
> >>>> >> >> > Hi,
> >>>> >> >> >
> >>>> >> >> > I tested trasforming the multilinestring dataset in a
> linestring
> >>>> >> >> > dataset
> >>>> >> >> > but
> >>>> >> >> > the error is still here.
> >>>> >> >> >
> >>>> >> >> > msDrawMap(): Image handling error. Failed to draw layer named
> >>>> >> >> > 'rt_topogr.50k.etichette.topon_idro_50k'.
> >>>> >> >> >
> >>>> >> >> > msOGRFileNextShape(): OGR error. IllegalArgumentException:
> >>>> >> >> > BufferBuilder::bufferLineSingleSided only accept linestrings
> >>>> >> >> >
> >>>> >> >> > So it is not really due to a multilinestring vs linestring
> >>>> >> >> > question.
> >>>> >> >> >
> >>>> >> >> > The quest carry on.
> >>>> >> >> >
> >>>> >> >> >
> >>>> >> >> >
> >>>> >> >> > 2013/8/13 Andrea Peri <aperi2007 at gmail.com>
> >>>> >> >> >>
> >>>> >> >> >> Hi,
> >>>> >> >> >>
> >>>> >> >> >> Try.ing to set a label on a MULTILINESTRING dataset.
> >>>> >> >> >>
> >>>> >> >> >> I set a label with Follow capability.
> >>>> >> >> >>
> >>>> >> >> >>         ANGLE FOLLOW
> >>>> >> >> >>
> >>>> >> >> >> But I'm having this error:
> >>>> >> >> >>
> >>>> >> >> >>  msOGRFileNextShape(): OGR error. IllegalArgumentException:
> >>>> >> >> >> BufferBuilder::bufferLineSingleSided only accept linestrings
> >>>> >> >> >>
> >>>> >> >> >> Is the Follow compatible with a MultiLinestring dataset or
> need
> >>>> >> >> >> only
> >>>> >> >> >> simple linestrings ?
> >>>> >> >> >>
> >>>> >> >> >> Thx,
> >>>> >> >> >>
> >>>> >> >> >> --
> >>>> >> >> >> -----------------
> >>>> >> >> >> Andrea Peri
> >>>> >> >> >> . . . . . . . . .
> >>>> >> >> >> qwerty àèìòù
> >>>> >> >> >> -----------------
> >>>> >> >> >
> >>>> >> >> >
> >>>> >> >> >
> >>>> >> >> >
> >>>> >> >> > --
> >>>> >> >> > -----------------
> >>>> >> >> > Andrea Peri
> >>>> >> >> > . . . . . . . . .
> >>>> >> >> > qwerty àèìòù
> >>>> >> >> > -----------------
> >>>> >> >> >
> >>>> >> >> > _______________________________________________
> >>>> >> >> > mapserver-users mailing list
> >>>> >> >> > mapserver-users at lists.osgeo.org
> >>>> >> >> > http://lists.osgeo.org/mailman/listinfo/mapserver-users
> >>>> >> >> >
> >>>> >> >
> >>>> >> >
> >>>> >> >
> >>>> >> >
> >>>> >> > --
> >>>> >> > -----------------
> >>>> >> > Andrea Peri
> >>>> >> > . . . . . . . . .
> >>>> >> > qwerty àèìòù
> >>>> >> > -----------------
> >>>> >
> >>>> >
> >>>> >
> >>>> >
> >>>> > --
> >>>> > -----------------
> >>>> > Andrea Peri
> >>>> > . . . . . . . . .
> >>>> > qwerty àèìòù
> >>>> > -----------------
> >>>
> >>>
> >>>
> >>>
> >>> --
> >>> -----------------
> >>> Andrea Peri
> >>> . . . . . . . . .
> >>> qwerty àèìòù
> >>> -----------------
> >>
> >>
> >>
> >>
> >> --
> >> -----------------
> >> Andrea Peri
> >> . . . . . . . . .
> >> qwerty àèìòù
> >> -----------------
> >
> >
> >
> >
> > --
> > -----------------
> > Andrea Peri
> > . . . . . . . . .
> > qwerty àèìòù
> > -----------------
>



-- 
-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20130814/a33c268c/attachment-0001.html>


More information about the mapserver-users mailing list