You should probably use the existion function `geometryType` in the SLD
rule.If you don't do that a polygon is visualised as a polygon and also point
(the centre of the polygon) for example.
The only thing is that there are multiple geometry-types that represent Point,
Polygon and Line.
Polygon:- Polygon
- MultiPolygon- MultiSurface- CurvePolygon- GeometryCollection (this is a
difficult one!)
Line:- LineString- CircularString- CompoundCurve-CompoundRing- CircularRing-
MultiCurve- MultiLineString
Point:- Point- Multipoint
It would be nice if there was a separate function "mainGeometryType" that just
returns Point, Polygon, Line or Collection
On Monday, 19 October 2020, 10:32:15 CEST, Florian Hoedt
<[email protected]> wrote:
Hi,
Sorry for interrupting into this conversation, but: Are you aware that SLD can
style different geometries out of the box? See attached SLD for the INSPIRE
theme Environmental Monitoring Facilities which does use survey area (Polygon)
and representative point (Point) as geometry. But maybe this is about something
different and you can ignore this.
yours, Florian
--
MSc Florian Hoedt
Head Geoinformatics | OpenData Representative
Thünen Institute, Centre for Information Management
Bundesallee 44
38116 Braunschweig
Tel: +49 531 596-1428
Mobil: +49 162 92 50 275
Fax: +49 531 596-1499
Mail: [email protected]
Web: www.thuenen.de
The Johann Heinrich von Thünen Institute, Federal Research Institute for Rural
Areas, Forestry and Fisheries – Thünen Institute in brief – consists of 14
specialized institutes that carry out research and provide policy advice in the
fields of economy, ecology and technology.
Von: "Jody Garnett" <[email protected]>
An: "groznykh" <[email protected]>
CC: "Geoserver USERS" <[email protected]>
Gesendet: Montag, 19. Oktober 2020 07:05:10
Betreff: Re: [Geoserver-users] How to apply different styles for different
geometry types in GeometryCollection?
I think it is a good idea, but have not had time/budget to work on this myself.
Indeed I have had this draft email replying to you open for a month or so. I
have been very focused on transitioning our build infrastructure, with some
small development implementing mapbox style expression support :)
Do you have any experience with Java? Or if there are any volunteers on this
list interested it should be a combination of:
1) https://docs.geotools.org/latest/userguide/tutorial/function.html
2) A method similar to:
public <T> T evaluate(Object object, Class<T> context) { Expression
pointExpression = parameters.get(0); Geometry geometry =
pointExpression.evaluate(object, Geometry.class); if( geometry == null)
return geometry;
Expression dimensionExpression = parameters.get(1); Integer
dimension = dimensionExpression.evaluate(object, Integer.class);
switch(dimension) { case 0: return toPuntal(geometry); case
1: return toLineal(geometry); case 2: return toPolygonal(geometry);
default: throw IllegalArgumentException("Dimension "+dimension+"
invalid (0,1 or 2 supported)"); } }
3) And then methods to collect each type, this could probably be done a bit
more neatly
return Geometry toPuntal(Geometry geometry){
if( geometry instanceof Puntal) return geometry; if( geometry
instanceof GeometryCollection){ GeometryCollection collection =
(GeometryCollection) geometry; ArrayList<Point> points = new
ArrayList<>(); for (int i; i<collection.getNumGeometries(); i++){
Geometry g = collection.getGeometryN(geometry,i);
Geometry = toPuntal(g); if( g instanceof Point)
points.add( (Point) g ); else if( g instanceof
MultiPoint) { MultiPoint pts = (MultiPoint) g;
for (int j; j<pts.getNumGeometries(); j++){
points.add( (Point) pts.getGeometryN(j); }
} } return
geometryFactory().createMultiPoint(points.toArray(new Point[points.size()]);
} return geometryFactory().createMultiPoint(); }
On Wed, 23 Sep 2020 at 03:51, groznykh <[email protected]> wrote:
Hi Jody
Is there a possibility that such functions would be realized?
--
Sent from: http://osgeo-org.1560.x6.nabble.com/GeoServer-User-f3786390.html
_______________________________________________
Geoserver-users mailing list
Please make sure you read the following two resources before posting to this
list:
- Earning your support instead of buying it, but Ian Turton:
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines:
http://geoserver.org/comm/userlist-guidelines.html
If you want to request a feature or an improvement, also see this:
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users
_______________________________________________
Geoserver-users mailing list
Please make sure you read the following two resources before posting to this
list:
- Earning your support instead of buying it, but Ian Turton:
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines:
http://geoserver.org/comm/userlist-guidelines.html
If you want to request a feature or an improvement, also see this:
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users
_______________________________________________
Geoserver-users mailing list
Please make sure you read the following two resources before posting to this
list:
- Earning your support instead of buying it, but Ian Turton:
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines:
http://geoserver.org/comm/userlist-guidelines.html
If you want to request a feature or an improvement, also see this:
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users
_______________________________________________
Geoserver-users mailing list
Please make sure you read the following two resources before posting to this
list:
- Earning your support instead of buying it, but Ian Turton:
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines:
http://geoserver.org/comm/userlist-guidelines.html
If you want to request a feature or an improvement, also see this:
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users