Johan,

Your wording would be better and maybe Jeff can address this and some of the other comments in this thread to improve the documentation.

Jeff,

Another common misunderstanding that people seem to have is that the order of the classes controls the order of the drawing of features in the layer. This is NOT the case. Features are always draw in the order they are return from the data source. If users WANT features drawn in some particular order then they need to pre-order the features. I good example of this is when drawing roads, one might want to draw all minor roads first then the major roads over them to control how intersection look on the map. This would require sorting the shapefile so minor roads are before the major roads. This can also be problematic if you are using tile indexes. In that case you need to separate minor and major roads into two separate layers.

-Steve

Johan Forsman wrote:
Hmm, at the substantial risk of sounding obtuse I must confess that
when I read that sentence I see "all features", not "all features
except the ones that have a defined class membership" or "all
remaining features".

If MapServer excludes any defined class memberships from the default
class and dumps any remaining features into the default class, then
perhaps the documentation can be rephrased to indicate that more
clearly?

My 1.5 cents, and thanks for all the help. /Johan.

-----Original Message----- From:
[email protected] [mailto:mapserver-users- [email protected]] On Behalf Of Lime, Steve D (DNR) Sent:
Friday, July 23, 2010 11:50 AM To: Jeff McKenna;
[email protected] Subject: RE: [mapserver-users] RE:
CLASS EXPRESSION regex help?

From the class.html file under the EXPRESSION property:

"Four types of expressions are now supported to define class
membership. String comparisons, regular expressions, simple logical
expressions, and string functions. If no expression is given, then
all features are said to belong to this class."

Perhaps not the best explanation but the last sentence is pretty
clear.

Steve

-----Original Message----- From:
[email protected] [mailto:mapserver-users- [email protected]] On Behalf Of Jeff McKenna Sent: Friday,
July 23, 2010 11:43 AM To: [email protected] Subject:
Re: [mapserver-users] RE: CLASS EXPRESSION regex help?

Are all of these tricks discussed here documented somewhere?

-jeff



-- Jeff McKenna MapServer Consulting and Training Services http://www.gatewaygeomatics.com/




Lime, Steve D (DNR) wrote:
If all of your classes have expressions then there is no default
and
some features will not be drawn. You kinda get the best of both
worlds with this approach...
Steve

-----Original Message----- From:
[email protected] [mailto:mapserver-users-
[email protected]] On Behalf Of Johan Forsman
Sent: Friday, July 23, 2010 10:39 AM To:
[email protected] Subject: [mapserver-users] RE:
CLASS EXPRESSION regex help?

Thanks Steve, that appears to work!

I did not realize MapServer would on its own accord exclude the
already
CLASSified records from the second CLASS unless I explicitly
instructed it what to exclude. I presumed it would just draw them
again together with the rest. Nice!
Thanks!

Now back to monitoring the brewing storm in the Gulf.

-----Original Message----- From: Lime, Steve D (DNR)
[mailto:[email protected]] Sent: Friday, July 23, 2010
10:01 AM To: Johan Forsman; [email protected] Subject: RE: CLASS EXPRESSION regex help?

Hi Johan: Are you looking for just two classes, one for records
that
start
with "LADE" and another for everything else? If so you can just
omit
the
expression from the second class and it will function as a
default
class
so everything that doesn't match the first will be assigned the
second. It's faster to execute than trying to expressly define
a second regex. Doesn't solve the regex error but then again
you may not need to.

Steve

-----Original Message----- From:
[email protected]
[mailto:mapserver-users- [email protected]] On Behalf Of
Johan Forsman Sent: Friday, July 23, 2010 9:20 AM To:
[email protected] Subject: [mapserver-users]
CLASS EXPRESSION regex help?

All:

Regex neophyte, using MS 5.4.2 in FGS on Ubuntu Server 9.10, I
wish to render two classes based on content in a PostGIS field.


For the first CLASS I want all records that start with "LADE",
and
using
NAME "LADE" EXPRESSION /^LADE.*/

appears to return the expected records.

However, for the second CLASS I want all records that DO NOT
start with "LADE", but using

NAME "Other" EXPRESSION /^(?!LADE).*/

does not return any records and the log contains

msEvalExpression() error: Regular expression error. Invalid
regular expression.

Examples out in the ether all indicate that this "negative
lookahead"
is
supposed to do exactly what I want.

What am I doing wrong in this instance?

Thanks! /Johan.

---------------------- Johan Forsman Geologist Safe Drinking
Water Program Louisiana Department of Health and Hospitals Office of Public Health Telephone: 225.342.7309 Telefax:
225.342.7303


_______________________________________________ mapserver-users
mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapserver-users _______________________________________________ mapserver-users mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapserver-users
_______________________________________________ mapserver-users
mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapserver-users

_______________________________________________
mapserver-users mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/mapserver-users

Reply via email to