Problem when trying to style negative values in Geoserver via SLD

I have a PostGIS table that holds (numeric) values from -1 to +1. I would like to style these values in Geoserver so I created an SLD file in QGIS which looks like this:               ---snip---     <?xml version="1.0" encoding="UTF-8"?>     <StyledLayerDescriptor xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema- instance" version="1.1.0" xmlns:xlink="http://www.w3.org/1999/xlink"   xsi:schemaLocation="http://www.opengis.net/sld   http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd"   xmlns:se="http://www.opengis.net/se">      <NamedLayer>     <se:Name>trnsfrm_meta_outputmap</se:Name>     <UserStyle>       <se:Name>trnsfrm_meta_outputmap</se:Name>       <se:FeatureTypeStyle>         <se:Rule>           <se:Name>-0.8290 - -0.4632</se:Name>           <se:Description>             <se:Title>-0.8290 - -0.4632</se:Title>           </se:Description>           <ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">             <ogc:And>               <ogc:PropertyIsGreaterThan>                 <ogc:PropertyName>percentage_change</ogc:PropertyName>                 <ogc:Literal>-<ogc:Literal>0.828977</ogc:Literal>                 </ogc:Literal>               </ogc:PropertyIsGreaterThan>               <ogc:PropertyIsLessThanOrEqualTo>                 <ogc:PropertyName>percentage_change</ogc:PropertyName>                 <ogc:Literal>-<ogc:Literal>0.463182</ogc:Literal>                 </ogc:Literal>               </ogc:PropertyIsLessThanOrEqualTo>             </ogc:And>           </ogc:Filter>           <se:PolygonSymbolizer>             <se:Fill>               <se:SvgParameter name="fill">#0000ff</se:SvgParameter>             </se:Fill>             <se:Stroke>               <se:SvgParameter name="stroke">#000000</se:SvgParameter>               <se:SvgParameter name="stroke-width">0.26</se:SvgParameter>               <se:SvgParameter name="stroke-linejoin">bevel</se:SvgParameter>             </se:Stroke>           </se:PolygonSymbolizer>         </se:Rule>       ---snip---      When I publish this layer in Geoserver and try to load it in OpenLayers, the server responds with:                  03 Sep 18:44:13 ERROR [geotools.rendering] - java.io.IOException      java.lang.RuntimeException: java.io.IOException         at org.geotools.data.store.ContentFeatureCollection.features(ContentFeatureCollection.java:168)         at org.geotools.data.store.ContentFeatureCollection.features(ContentFeatureCollection.java:59)         at org.geotools.renderer.lite.StreamingRenderer.drawPlain(StreamingRenderer.java:2475)         at org.geotools.renderer.lite.StreamingRenderer.processStylers(StreamingRenderer.java:2045)         at org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:829)         at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:481)         at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:251)         at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:123)         at org.geoserver.wms.GetMap.executeInternal(GetMap.java:521)         at org.geoserver.wms.GetMap.run(GetMap.java:253)         at org.geoserver.wms.GetMap.run(GetMap.java:124)         at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:328)         at sun.reflect.GeneratedMethodAccessor985.invoke(Unknown Source)         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)         at java.lang.reflect.Method.invoke(Method.java:606)         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318)         at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)         at org.geoserver.kml.WebMapServiceKmlInterceptor.invoke(WebMapServiceKmlInterceptor.java:34)         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)         at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:61)         at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:35)         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)         at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:79)         at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:54)         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)         at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:32)         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)         at com.sun.proxy.$Proxy764.getMap(Unknown Source)         at sun.reflect.GeneratedMethodAccessor944.invoke(Unknown Source)         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)         at java.lang.reflect.Method.invoke(Method.java:606)         at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:774)         at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:272)         at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)         at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)         at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)         at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)         at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)         at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)         at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)         at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:27)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74)         at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)         at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)         at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)         at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)         at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)         at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)         at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)         at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)         at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:82)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)         at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)         at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)         at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)         at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:134)         at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)         at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:75)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:47)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:43)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)         at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)         at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)         at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)         at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)         at java.lang.Thread.run(Thread.java:724)      Caused by: java.io.IOException         at org.geotools.jdbc.JDBCFeatureSource.getReaderInternal(JDBCFeatureSource.java:610)         at org.geotools.jdbc.JDBCFeatureStore.getReaderInternal(JDBCFeatureStore.java:225)         at org.geotools.data.store.ContentFeatureSource.getReader(ContentFeatureSource.java:563)         at org.geotools.data.store.ContentFeatureCollection.features(ContentFeatureCollection.java:165)         ... 115 more      Caused by: org.postgresql.util.PSQLException: ERROR: invalid input syntax for type numeric: "-"         Position: 406         at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2062)         at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1795)         at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)         at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:479)         at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:353)         at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:252)         at org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement.java:208)         at org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement.java:208)         at org.geotools.jdbc.JDBCFeatureReader.<init>(JDBCFeatureReader.java:140)         at org.geotools.jdbc.JDBCFeatureSource.getReaderInternal(JDBCFeatureSource.java:580)         ... 118 more      03 Sep 18:44:13 ERROR [geoserver.ows] -      org.geoserver.platform.ServiceException: Rendering process failed         at       org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:507)         at      org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:251)         at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:123)         at org.geoserver.wms.GetMap.executeInternal(GetMap.java:521)         at org.geoserver.wms.GetMap.run(GetMap.java:253)         at org.geoserver.wms.GetMap.run(GetMap.java:124)         at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:328)         at sun.reflect.GeneratedMethodAccessor985.invoke(Unknown Source)         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)         at java.lang.reflect.Method.invoke(Method.java:606)         at      org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318)         at      org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)         at      org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)         at org.geoserver.kml.WebMapServiceKmlInterceptor.invoke(WebMapServiceKmlInterceptor.java:34)         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)         at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:61)         at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:35)         at      org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)         at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:79)         at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:54)         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)         at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:32)         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)         at      org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)         at com.sun.proxy.$Proxy764.getMap(Unknown Source)         at sun.reflect.GeneratedMethodAccessor944.invoke(Unknown Source)         at      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)         at java.lang.reflect.Method.invoke(Method.java:606)         at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:774)         at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:272)         at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)         at     org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)         at      org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)         at      org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)         at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)         at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)         at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)         at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:27)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74)         at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)         at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)         at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)         at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)         at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)         at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)         at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)         at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)         at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:82)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)         at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)         at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)         at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)         at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)         at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)         at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)         at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:134)         at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)         at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:75)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:47)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:43)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)         at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)         at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)         at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)         at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)         at java.lang.Thread.run(Thread.java:724)      Caused by: java.lang.RuntimeException: java.io.IOException         at org.geotools.data.store.ContentFeatureCollection.features(ContentFeatureCollection.java:168)         at org.geotools.data.store.ContentFeatureCollection.features(ContentFeatureCollection.java:59)         at org.geotools.renderer.lite.StreamingRenderer.drawPlain(StreamingRenderer.java:2475)         at org.geotools.renderer.lite.StreamingRenderer.processStylers(StreamingRenderer.java:2045)         at org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:829)         at org.geoserver.wms.map.RenderedImageMapOutputFormat.produceMap(RenderedImageMapOutputFormat.java:481)         ... 110 more      Caused by: java.io.IOException         at org.geotools.jdbc.JDBCFeatureSource.getReaderInternal(JDBCFeatureSource.java:610)         at org.geotools.jdbc.JDBCFeatureStore.getReaderInternal(JDBCFeatureStore.java:225)         at org.geotools.data.store.ContentFeatureSource.getReader(ContentFeatureSource.java:563)         at org.geotools.data.store.ContentFeatureCollection.features(ContentFeatureCollection.java:165)         ... 115 more      so I suspect that there is a problem with the syntax of the SLD:                <ogc:Literal>-<ogc:Literal>0.463182</ogc:Literal>      Do you think this might be the cause? Is this the right way of styling negative values? I am thankful for any suggestions.


Calculating the fastest routes and some points on the same time

I have two drivers and each driver has a set of about 15 locations where they need to drive to on a single day. Calculating the shortest route for both drivers is not the problem (using a matrix routing api). The drivers can have the same location in their route. And if they are the same, then they both need to be there at the same time. So I need to make software that calculates the fastest route but sometimes the drivers need to be at the same location at the same time. My question: How can I make this software, and are there any libraries I can use?


Saving of multipolygon shape file into a individual polygon shape files

How to seperate a multi polygon shape file into individual polygons(as seperate shape files)? i had huge data... I know the traditional process like export data... Please help me.. Thanks in Advance


Get random point within a multipolygon

Can somebody help me in getting a random point which lies inside multipolygon,i.e I have a multipolygon, then i want to get a random point which lies inside that multipolygon


How to create a 4 band image from an RGB and a grey scale image?

I have an RGB image and a Gray scale image. I would like to merge them in a 4 bands image. How can I do that? Is there a simple way to do it from QGIS or I have to modify the image before to load them in QGIS.Thanks a lot!


Transform regular lat/lon to rotated lat/lon

I am currently working with climate data projected in a rotated lat/lon grid and came across this excellent 'cookbook' by mkadunc on how to manually transform rotated lat/lon to regular lat/lon: gis.stackexchange.com/questions/10808/lon-lat-transformation I’ve implemented the solution for transforming a rotated grid to a regular grid; however, I’m also interested in doing the opposite. My first thought was to just change the operational sign of ϑ and φ, so that the transformation will go ‘the other way around the clock’, but this doesn’t seem to work leaving me a bit stuck here. I’ve spend some hours now trying to read up on my trigonometry, but still haven’t been able to ‘reverse’ the function. Hope you can help me out here.


Keeping unchanged observed values after kriging interpolation

Is there a way to force kriging to keep unchanged measured values of observation points? For example: if the observed value of a location is 1, after the interpolation it could be 0.9 or even 0.5, depending on the other locations' values. I'd like to have 1 for that observed location after the prediction too. I know that, considering the kriging formula, this is a stretch but predicting values where it is actually known seems to me a stretch as well. I found that the only prediction method that preserves observation points' values is IDW but this is not the best method to predict values for the other prediction locations. I'm using R and the package "intamap". I decided to improove the question because the reply is too long. Thank you all guys for the replies! @whuber you are right, I'm using the "automatic" method provided by "intamap" package. I need to use it for two reasons: the first is for the very strong skewness of my data and the second reason is that kriging interpolation is the final step of method I'm developing that is devoted to be user friendly for inexpert persons. "Intamap" package claims to meet these two needs. The reason why I need to keep original data unchanged is that observation points represent the probability values of a phenomenon to occur. Pay attention, I'm not talking about indicator kriging, because observed values are just probabilities. So I need to provide inexpert users the geographical distribution of different degree of probabilities. If I have two observation points with 1 and 0.5 probability values, I need these values to be unchanged and that kriging interpolates the values in the prediction locations between them. I hope to have been clear in my explanation. How can I proceed now? Thanks.


Postgis 2.0 upgrade problem with postgres data [SOLVED]

I have a serious problem: on Wednesday, April 2 OpenSUSE 12.1 is updated, and the package was to update the PostGIS-a version 1.5.3 to 2.0.0. After this operation, Postgres does not display records. In pgAdmin count the records, but seeing them in a table view, and by SELECT is a problem. I can not do dump: pg_dump-h 127.0.0.1-p 5432-U postgres-Fc-b-v-f "/ home / admin / olddb.backup" Tomice I get the message: pg_dump: SQL command failed pg_dump: Communication error with server :: ERROR: can not access the file "$ libdir/postgis-1.5 ': No such file or directory pg_dump: Your command: COPY public.armatura (gid, type, sub_typ, description, wys_g, wys_d, operator, the_geom) TO stdout; pg_dump: _*_ stopped because of an error In view of the tables in PgAdminie my tables, I have a good number of records, but when you call the data is still the same. I noticed that almost all functions have the following address: "$ libdir/postgis-1.5" that during the upgrade-u has been replaced by / PostGIS-2.0. I could perhaps remove the column geometry, but at the base of my ... I attach screenshots of pgAdmin. Command did not help, sql for good-sounded names: postgis_upgrade_2.0.sql etc. .. Suddenly all the repositories of RPMs flown for PostGIS 1.5.3, and I can not go back to the old version ... At stake is 1 working day to 15 people. If anyone has any idea - I'll be bound. I have no idea to solve this problem. Regards, and urge to back-up databases before upgrading PostGIS Tom


Is there any information in Sky Plot that is not in DOPs chart in terms of predicting accuracy in the field? (GPS data collection planning)

Joe only looks at DOPs chart and weather report for mission planning. Moe looks at both DOPs chart and Sky Plot and weather report. Is Joe missing out on something relative to Moe in terms of predicting accuracy in the field? http://www.trimble.com/GNSSPlanningOnline/#/Settings Note that there is a function to add obstructions or change cut-off elevation value in Settings, which affect both charts equally. ![enter image description here](http://i.stack.imgur.com/fQQCy.png) ![enter image description here](http://i.stack.imgur.com/KmQjV.png) ![enter image description here](http://i.stack.imgur.com/floUM.png)


How to run PostgreSQL stored procedures from QGIS?

I'm trying to figure out if it's possible to run a stored procedure in a Postgres database from QGIS, more specifically I would like to do this from within a python plugin. In this case I'm trying to perform analytical and data management functions as opposed to viewing layers of data.


How to convert MapXtreme workspace to GeoServer?

I need to convert a MapXtreme workspace into one for GeoServer. Suggestions for tools/process would be appreciated. Thanks!


How to store and serve data and its progress over time in GeoServer?

I recently started working with GeoServer and stored some shape files. I successfully can retrieve the data as JSON. The data I want to maintain in the database changes over time. I do **not want to update the values** but **add a new revision with a time stamp** of the very same data. Further, in the query reply I would like to see **all revisions of one feature being returned**. **Question:** How can I store and serve various revisions of the same data with GeoServer? * * * **Update:** I am also interested in **other software** that fulfills the requirement to serve geospatial data with the versioning feature.


Reclass all values < 0 to -9999 in PostGIS

I have a tiled raster in a PostGIS table and I would like to change the value of all pixels which have values less than 0 to -9999. How should I do this? I suspect it involves ST_SetValue and possibly a SQL sub-statement, but I'm not sure how to put these together.


How to get started with map overlays and tiles

I have put quite some time into doing my own research and know in theory what i want to do and some of the steps involved in doing it but I wanted to put this question out to ensure i'm not going in completely the wrong direction and in the hope that some who have trodden this path before might be able to help me avoid some pitfalls. Target. I have a need to create a website with an interactive map that will display a base layer of google or OSM (i already have that created) i then need to overlay a layer that i will create (this is where i need help) and finally server up markers that can be touched (planned to use Mysql and php to build the marker list) I have a source of Geo TiFFs that i need to stitch together to form a layer and I then need to create tiles from that layer and server it up. I also have a database of markers I have several tools GDAL , tilemill, (tried tile map didn't work), QGIS, OpenGEO. Questions.   1. Does this sound like the right approach to tackling the problem.   2. How do i get over the knowledge gap of processing the tiffs into a layer   3. Should i serve the layer as a sequence of html folders or from a database and if so what does it need to be a GIS.


Why does QGIS Simplify Geometries delete entire polygons?

I am reducing the size of a world timezone shapefile, http://efele.net/maps/tz/world/tz_world_mp.zip But at a 0.01 tolerance, entire countries disappear Anybody know a way round this? QGIS shows the same error simplifying naturalearthdatamaps also; simplify with 0.01 tolerance and Italy disappears


Convert a mask image to polygon shape file using GRASS

I used image classification technique in GRASS GIS v7 and generated the image mask below in which white area has NULL value and red area contains 1. ![enter image description here](http://i.stack.imgur.com/oI7bK.jpg) I am going to clip those red color areas in a LiDAR file so I need to convert those to a polygon shape file. I know that I need to use a combination of image analysis techniques to achieve this but don't know whether GRASS has similar functionality to generate polygon shape file from a mask.


Help with intersections in QGIS

I have a shapefile which defines for me the area of each oil field in the North Sea (~300 fields). I also have a shapefile which defines the location of every well that has been drilled (~13000) wells. I am looking for a way to associate the wells to the fields. I have managed to do this for a single field by splitting the oil fields shapefile into a shapefile for each oil field, then taking the intersection with the wells shapefile, and copy-pasting the attributes table out. It will take me a very long time to do this for 300 fields! Is there a better way? Thanks.


How to install QGIS 1.8 plugin Georeferencer?

My question is about qgis 1.8 georeferencer plugin. I installed the new version qgis 1.8 but I don't have the georeferencer plugins, how do I install it? I used the georeferencing plugin with QGIS 1.6 and now that I've upgraded to 1.8 I'd like to do it again. it's not available! Am I doing something wrong? i've activate in the menu, Plugins > Manage Plugins. i've search the Georeferencer to activate, but there was no


merging 2 polygon adjacent to each other using R

I have several shp files which are the components (or tiles) of a map, I have joint all these tiles together to have a large shp file. Then I realized some of the polygon is now splitted into 2 halves, as the upper part belngs to a tile, while the lower part belongs to another tile. This output disturb me a lot as I need to fill some polygon, but not part of the "splitted polygon", so I need to find a way to merge these splitted polygon back to one (preferrably mechanical way, as I have 10000+ polygons, not knowing which are splitted, which are not). I need to know if the two or more polygons orginate from the larger polygon. And I think I can some how use union and spRbind to create an algorithm for this task. But I doubt if I am really the first one who encounter this problem, so I wonder if there is any existing tool in R that can solve this problem. Thanks.


QSpatiaLite query syntax

Using the QSpatiaLite plugin in QGIS I composed the following query SELECT 'AddressPoint_2'.'buildingNu', 'AddressPoint_2'.'postCode' WHERE 'AddressPoint_2'.'postCode' = 'NR13 3AA' FROM 'AddressPoint_2' This returns an error: "The SQL query seems to be invalid near "FROM":syntax error." A previous query: SELECT 'AddressPoint_2'.'buildingNu', 'AddressPoint_2'.'postCode' FROM 'AddressPoint_2' runs OK. I cannot see why the slightly more complicated query is failing on the same use of FROM Any pointers please?


Interpolated map using pca axes

I have done between group pca in R. I want to make an interpolated map using the eigen values of the first three pc axes. I want to produce a map using each of the three pc axes and finally combine the three maps to produce a final interpolated map. Any idea would be really appreciated. Tnx!


Spline interpolation - 3D analysis

From the help document, spline interpolation is supposed to produce a surface runnin through the exact input point. i have about 100 point and run spline interpolation. i also extract the interpolated value from the spline surface at the 100 input points location and compared with the original value. i found that there are some siginificant difference between the interpolated value and original value. Did anybody came across this before? Why the spline surface does not run through the input points. P.S. i used tension spline with 15 as weight and 12 as searching points, cellsize 20m of 3D analyst of ArcGIS10.


Using the buffer tool in ArcGIS 10

I have a map that has a 12 mile buffer round it already. I have created a buffer inside the original 12 mile line (using a negative value of 9). Is it possible however to stipulate that the new buffer does not overlap the original map polygon? Hope this is clear?


Enable feature access editing in Arcgis Server

I had published a WFS/Feature Access service via ArcMap. But I can't edit layers (change geometry or data fields). Such settings in properties window are disabled (see an image). How to enable editing these layers? ![Service Editor](http://i.stack.imgur.com/E5upJ.jpg) ![start_editing](http://i.stack.imgur.com/Calem.jpg)


Find nearest distinct features to a point

I am trying to select a single distinct features closest to an XY point in PostGIS. So I can find a single record for each distinct code by using:               Select Distinct ON (code) * FROM table;      Which returns 100 records, out of 1mill, one for each distinct code. I can then use the PostGIS `<->` operator to find the closest feature:               SELECT name, gid     FROM geonames     ORDER BY geom <-> st_setsrid(st_makepoint(-90,40),4326)     LIMIT 1;      So I need to use both of these queries together to find a feature of each distinct code but the closest one to the point. How can I use both queries together? I have tried:               SELECT 1 FROM table WHERE EXISTS      (SELECT DISTINCT ON (code) * FROM table) ORDER BY geom <-> st_setsrid(st_makepoint(-90,40),4326)     LIMIT 1;      Also this fails:               SELECT * FROM table WHERE code IN     (SELECT DISTINCT ON (code) * FROM table) ORDER BY geom <-> st_setsrid(st_makepoint(-90,40),4326)     LIMIT 1;      None of which works.


creating Polygon from LineString and a width

I have to create a Polygon from a lineString and a width. Ex: Given a street as a lineString (Or a list of points) and a width, create the polygon (the road). I am using Geotools, but I couldn't find anything helpful in the API. The math for doing this manually is requiring to much work. Is there a simpler solution for this kind of problem? Thanks.


The button icons in the Measure dialog box disappear!

My development environmnet is vs2008 c# + AE 9.3. I use the follow codes to implement the **measure** tool:                       ICommand cmdMeasure;             cmdMeasure = new ControlsMapMeasureToolClass();             cmdMeasure.OnCreate(MapControl.Object);             MapControl.CurrentTool = cmdMeasure as ITool;      But When the Measure dialog box shows,the button icons is disappear.As shows in the picture.I can't solve this problem. Please help me, please!! ![enter image description here](http://i.stack.imgur.com/EK3zl.png)


Alternative to Spatial Query on large data

I have around 110000 points data spread around the world. the shapefile size is 116 Mb. I want to select points which are inside asia. I have been using qgis but this time qgis is not being able to process it (It gives a not responding message, and even after waiting for 10 min, it does not respond). I have tried it with qgis version 1.8 and 2.2. Is there a method to perform this kind of large operation successfully?


Using address locator with data tables

I have been struggling for some time to find a way to search the asset tables using the FIND tool; I "discovered" address locators. Is this going to be my solution? The problem:   * I have polygons for buildings, polygons for electrical distribution points (locations of transformers or generators), and symbols for electrical components (i.e. panels).   * Asset or location ID is assigned to each feature (such as an asset number or pad number) which is unique.   * All of the data related to the building such as contract and maintenance data and electrical distribution ID is in a separate table. There is also a separate table each of HVAC units, plumbing assets, and other assets all referenced to the buildings unique ID   * A table of electrical assets reference the panel asset number, the building ID and the electrical source ID.   * Joins will not work in that the relationships are 1-many, and the data is being replicated.   * The tables are updated daily from an excel spreadhseet   * System is ArcGIS 10.1 on SQL Express SDE geodatabase replicated one-way to three child servers   * Users are searching for assets through the ArcGIS program and are trades people with little computer experience.  Searching individual tables and then having to run a link to activate relationships is ridiculous! The FIND tool just seems the logical answer but the basic tool will only search features in the TOC, not the tables. I want to be able to search the entire database, run identify, and see everything that is connected.   Example: find an HVAC unit by asset number (found in database table), zoom/pan/identify asset and can see with no further hoops to jump through the facility it's in, the electrical panel that feeds it, the generator that powers the panel, and the other electrical assets attached to the same system. I have something that will do that now, but it was something forced and edits do not replicate. I created feature classes and loaded the data from the spreadsheets but the records have no geometry, therefore edits to the feature classes do not replicate, but I do have full search function for any string; which the users love. I need to create the system properly so it fully functions in searching, editing, and replication. I created an address locator with the asset number as the single field but if I type in only the digit part of the "address" it will not find it, even dumbing down the confidence to 1. It will find it if I type in the full name ABCXZ12345 instead of 12345. It also does not give me the option to identify, drats! Back to my question - will a composite address locator solve most of my problem? Is there a way to configure it for partial string search?   Long explanation but I hope it conveys what I am trying to do.


Schema for offline map editing and pass to production environment

I'm working with QuantumGIs and PostgreSQL/Postgis. So when I edit the layers, the changes are reflected on the DB. The thing is I want to do some "offline" editing before committing the changes to the DB, as the DB is in production and serves Geoserver for displaying the maps on a website. Anyone know a good schema to accomplish this? Thanks.


How to change Leaflet Map panes layering order (z-index)?

Leaflet maintains that the Map panes elements contain all layers added to the map. The difference between many of the Map panes is strictly the z-index order of layering. I would like to use a combination of lvector.CartoDB layers, which are essentially `overlayPane` layers, with TileLayer, such as GeoIQ Acetate-bg and labels. This is the ordering of the elements as they are added the map:               tileLayer1 = new L.TileLayer();     map.add(tileLayer1);  // add first layer to map          cartoDBLayer1 = new lvector.CartoDB();     cartoDBLayer.setMap(map); // add second layer to map          tileLayer2 = new L.TileLayer();     map.add(tileLayer2);  // add third layer to map      What returns is a map with layers in this order:               tileLayer1,tileLayer2,cartoDBLayer1      `tileLayer1` and `tileLayer2` are situated in the `HTMLElement: TilePane` and `cartoDBLayer1` is in `HTMLElement: overlayPane`. Is there any way to force `cartoDBLayer1` to render in the TilePane, such that it falls in order of the z-index that it is added to the map in... i.e.               z-index[0]:tileLayer1     z-index[1]:cartoDBLayer1     z-index[2]:tileLayer2


Can I get time & distance from OSM2PO without loading data into PostgreSQL?

Can I get time and distance from OSM2PO routing without loading the data into PostgreSQL? I've seen the answer regarding matching IDs with the DB, but I need to do this using only the OSM2PO service.


network coverage for mobile phones - europe

I am looking for GIS data with the network coverage (mobile phones). Something like the layer shown in the cell mapper website where I can select different countries and all the providers to export a GIS layer with the towers heatmap would be great. Although a nice raster with coverage given by all the providers would be perfect, I am guessing that maybe something like this is not public, I can also manage to work with presence/absence of network coverage by administrative regions in Europe. Any help is appreciated, it is the first time I am trying to find & use this type of data, so I might have failed to find any obvious websites, or what I am looking for is not possible to obtain. ![enter image description here](http://i.stack.imgur.com/J3fEh.png)


Is Cloudmade still updating OSM data downloads?

I sent this question to Cloudmade but unfortunately they never responded. Hopefully someone here knows something about how they work. They provide an OSM download for the Americas which I am using in a project. Although their site states that downloads are updated roughly every month it looks like nothing has changed since December 2011. Although there are many country and continent-specific downloads available for OSM data online it seems like this is the only place I can get something for all of the Americas. Any input on Cloudmade's update strategy or alternate sources for Americas data (without setting up my own planet-wide PostGIS) would be very much appreciated.


Can I create a reusable text annotation style in QGIS?

I want to create a fairly simple map with a few locations emphasized using annotations. I don't like the default annotation formatting:      ![qGIS default text annotation](http://i.stack.imgur.com/6d8iX.png) So, I've reformatted the annotation background color, border color, fonts, font sizes, marker size, etc. to something that I prefer: ![Re-formatted text annotation](http://i.stack.imgur.com/9dBHI.png) How do I re-use this same formatting on several other annotations without having to re-set each of the text annotations' formatting by hand? I cannot copy and paste one annotation (that would be nice). I believe the html annotation might be a solution, but I cannot find any good documentation describing how to use it. An even better solution would be to automatically label each feature using this format, and pulling the content of the label from fields within the feature layer. Hmm, perhaps I should investigate labels instead of annotation?


Can I use GeoServer 2.1.3 with proxy extension?

Can i use GeoServer 2.1.3 with proxy extension, provided here: http://geoserver.org/display/GEOS/GeoServer+Proxy+Extension ? When add it to geoserver and go to "Proxy Admin Page" - it shows error ( _HTTP Status 500 -_ ). If the versions are incompatible - where to find new proxy extension? **Part of tomcat access log:** `"GET /geoserver/web/?wicket:bookmarkablePage=:org.geoserver.web.proxy.ProxyAdminPage HTTP/1.1" 500 12031` **Part of tomcat log:**               Mar 07, 2012 2:09:36 PM org.apache.catalina.core.StandardWrapperValve invoke     SEVERE: Servlet.service() for servlet [dispatcher] in context with path [geoserver] threw exception [Handler processing failed; nested exception is     java.lang.VerifyError: class org.geoserver.web.proxy.HostnameProvider overrides final method model.(Ljava/lang/Object;)Lorg/apache/wicket/model/IModel;] with root cause     java.lang.VerifyError: class org.geoserver.web.proxy.HostnameProvider overrides final method model.(Ljava/lang/Object;)Lorg/apache/wicket/model/IModel;     at java.lang.ClassLoader.defineClass1(Native Method)     at java.lang.ClassLoader.defineClass(ClassLoader.java:791)     at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)     at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2823)     at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160)     at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1655)     at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1533)     at java.lang.Class.getDeclaredConstructors0(Native Method)     at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)     at java.lang.Class.getConstructor0(Class.java:2714)     at java.lang.Class.getConstructor(Class.java:1674)     at org.apache.wicket.session.DefaultPageFactory.constructor(DefaultPageFactory.java:119)     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:53)     at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.newPage(BookmarkablePageRequestTarget.java:298)     at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.getPage(BookmarkablePageRequestTarget.java:320)     at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.processEvents(BookmarkablePageRequestTarget.java:234)     at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)     at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)     at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)     at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)     at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)     at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:484)     at org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:138)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)     at org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:158)     at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)     at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)     at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)     at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)     at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)     at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:23)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74)     at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:394)     at org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)     at org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)     at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)     at org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101)     at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)     at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)     at org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105)     at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)     at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)     at org.springframework.security.ui.rememberme.RememberMeProcessingFilter.doFilterHttp(RememberMeProcessingFilter.java:116)     at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)     at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)     at org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91)     at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)     at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)     at org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:278)     at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)     at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)     at org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89)     at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)     at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)     at org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235)     at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)     at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)     at org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:185)     at org.springframework.security.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:99)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:71)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46)     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)     at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928)     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)     at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)     at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539)     at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:298)     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)     at java.lang.Thread.run(Thread.java:722)`


If-Then Statement in Field Calculator

Scenario: I have four fields: A, B, C and D Field A is text-based and contains values from '000' up to some number 'xxx' Field B contains a set of values (also text, but represented by numbers) Field C contains a set of values (also text, but represented by numbers) Field D is empty and waiting to be populated I would like to construct an if-then statement in Field Calculator that does something like this: If Field A = 000 then Field D = Field B, If Field A =/= 000 then Field D = Field C I have spent the better part of my day trying to find the proper 'language' to ask Field Calculator, but I'm stuck. I have 0 programming experience also. Could anybody show me how this should be set up either in VB Script or Python? I'm using ArcGIS 10.0.


How to make offsetting points perpendicular to a line (without ET GeoWizards)?

So I'm trying to create offsetting points perpendicular from a line and have run into a roadblock in Arc 10.1. I have the ability to use the ET GeoWizards tool 'Points Along Polylines' but the tool only functions correctly in the ET GeoWizards window (not in toolbox, ModelBuilder or Python which is where I want to run it from). Essentially, I would like to have the same results has the ET GeoWizards tool 'Points Along Polylines'. I had tried experimenting with creating a set buffer around my Polyline features and using the several different tools to try to snap a line to the extent of the buffer...but some of my line features have drastic angles which creates a buffer overlap and doesn't produce the results I want. The final product is within a Python script, so outside of the box thinking is appreciated!


Strange gdaldem hillshade artifacts

I've downloaded 9 chunks of 1 arc-second NED in IMG format from the National Map. I'm trying to create a hillshade from them. I'm using:               GDAL 1.10.0, released 2013/04/24      First, I combine them and change the projection:               gdalwarp -t_srs EPSG:900913 n40w111/imgn40w111_1.img n40w112/imgn40w112_1.img \     n40w113/imgn40w113_1.img n41w111/imgn41w111_1.img n41w112/imgn41w112_1.img \     n41w113/imgn41w113_1.img n42w111/imgn42w111_1.img n42w112/imgn42w112_1.img \     n42w113/imgn42w113_1.img uinta-projected.tif      Then I create a hillshade from uinta-projected.tif:               gdaldem hillshade -compute_edges -co compress=lzw uinta-projected.tif uinta-hillshade.tif      However, when I take a look at my shiny new hillshade, it looks like this: ![ugly hillshade](http://i.stack.imgur.com/LEi7D.png) Does anybody have any ideas what might be causing this grid artifact? I've tried using gdal_merge.py instead of gdalwarp and I end up with the same result. gdalinfo uinta-projected.tif:               Driver: GTiff/GeoTIFF     Files: uinta-projected.tif     Size is 9253, 12173     Coordinate System is:     PROJCS["Google Maps Global Mercator",         GEOGCS["WGS 84",             DATUM["WGS_1984",                 SPHEROID["WGS 84",6378137,298.257223563,                     AUTHORITY["EPSG","7030"]],                 AUTHORITY["EPSG","6326"]],             PRIMEM["Greenwich",0],             UNIT["degree",0.0174532925199433],             AUTHORITY["EPSG","4326"]],         PROJECTION["Mercator_1SP"],         PARAMETER["central_meridian",0],         PARAMETER["scale_factor",1],         PARAMETER["false_easting",0],         PARAMETER["false_northing",0],         UNIT["metre",1,             AUTHORITY["EPSG","9001"]]]     Origin = (-12579287.992128284648061,5161229.105774102732539)     Pixel Size = (36.130094040215752,-36.130094040215752)     Metadata:       AREA_OR_POINT=Area     Image Structure Metadata:       INTERLEAVE=BAND     Corner Coordinates:     Upper Left  (-12579287.992, 5161229.106) (113d 0' 6.00"W, 42d11'34.83"N)     Lower Left  (-12579287.992, 4721417.471) (113d 0' 6.00"W, 39d11'11.36"N)     Upper Right (-12244976.232, 5161229.106) (109d59'54.57"W, 42d11'34.83"N)     Lower Right (-12244976.232, 4721417.471) (109d59'54.57"W, 39d11'11.36"N)     Center      (-12412132.112, 4941323.288) (111d30' 0.29"W, 40d42'24.63"N)     Band 1 Block=9253x1 Type=Float32, ColorInterp=Gray


Overlaying layers with different projections on Android

Hello, I'm trying to show a map on Android. I'm using two map providers and am having trouble when converting geo point(lat/lon) to point in my viewport(x/y in pixels). 1) the first map provider used wgs84 -> EPSG:3395 projection   2) the second map provider used EPSG:4326(wgs84) -> EPSG:3395 projection In the first case I can place any lat/lon correctly.   In the second case I have a discrepancy. I'm not sure about 2 km or more. Why do I get this discrepancy if the projection of the providers is the same? Please help me understand this. **UPD:** This is the java code                         double              d = lon * Math.PI / 180,              m = lat * Math.PI / 180,             l = 6378137,             k = 0.0818191908426,// somebody explain what this constant means?             f = k * Math.sin(m);                  double              h = Math.tan(Math.PI / 4 + m / 2),             j = Math.pow(Math.tan(Math.PI / 4 + Math.asin(f) / 2), k),              i = h / j;                  double[] res = {l * d, l * Math.log(i)};             return res;      This code works for wgs84 -> EPSG:3395. I know thsi is the wrong approach but I just changed constant `k = 0.0818191908426` to my constant and it should work for some geographic region, but I think on the pole it will be wrong.


Best solution for printing Google Maps?

What is the best solution so far for printing Google Maps as a base layer of Vector layers in Geoserver/OpenLayers application ? I used to print WMS layers using GeoExt print page example, but when I tried it with Google Maps, I got a blank file !


Design question: what's the role of WFS-T in this kind of webapp?

I have more experience in "traditional" (Java EE) webapp development, and I am trying to figure out a decent design for a mapping web application. My application has a map, and users can see and edit some features on the map. Let's say they can add and modify simple rectangular areas on the map, and edit some data fields for each area. Map will most likely be implemented using OpenLayers. I will have a relational database that will store non-map-related data. Let's say the area on the map is a "school district" with direct fields such as "number of students". Then there's another page where you can input information about teachers for that area. How do these options compare?: A. WFS-T is not used. All the data is stored in the traditional relational DB. When user uses the map, the base map images are read from the map server but the data about the user editable features is read from the DB. I read the coordinates for each area from my backend and draw the areas using OpenLayers tools for drawing e.g. vectors on the map. All my modifiable data (map-related or otherwise) is in the same relational DB. TABLE SCHOOL_DISTRICT (ID AREA_X1 AREA_Y1 AREA_X2 AREA_Y2 NAME NUMBER_OF_STUDENTS); TABLE TEACHER( ID FIRST_NAME LAST_NAME SCHOOL_DISTRICT_ID); B. Use WFS-T for storing feature data. When user uses the map, both the base map images and the editable areas are read from the map server. Now it becomes a question about where to draw the line between the mapserver/WFS-T and the traditional relational db. All the data is not suitable for storing in the map server. The "school district" data may be linked to a complex graph of tables which need to be e.g. reported on. Should I store just the geometry data (coordinates of the areas) in mapserver/WFS-T and everything else in traditional db tables? Or should the immediate data about school districts be stored in mapserver/WFS-T and rest in traditional db tables? How do these two combine? Or, can mapsers/WFS-T utilise the same tables/schema as the traditional side of the application...? GEO_TABLE_IN_GEOSERVER SCHOOL_DISTRICT_AREA (ID AREA_GEOMETRY); TABLE SCHOOL_DISTRICT_AREA (ID AREA_GEOMETRY_ID?? NAME NUMBER_OF_STUDENTS); TABLE TEACHER( ID FIRST_NAME LAST_NAME SCHOOL_DISTRICT_ID); EDIT: adding an image to hopefully illustrate what I am talking about ![enter image description here](http://i.stack.imgur.com/9pvTB.png) We have a web application that has both   * spatial data viewed and edited in an OpenLayers map interface (left side, for example geometries of "school districts")   * non-spatial data which is viewed and edited elsewhere in the application (right side, for example "teacher" data) Basically, spatial data is edited using WFS-T. The map server (GeoServer) offers WFS-T interface and ultimately talks with RDBMS using SQL. Non-spatial data is edited with means from "standard" web applications: forms, http requests, application server (such as JBoss etc) handles the requests and ultimately talks with RDBMS using SQL. Map server is not involved in this. Both spatial and non-spatial data can reside in the same RDBMS. What I am still unsure of is:   * What data should be updated using WFS-T? Is it just the pure geometry (shapes of "school districts") or also data directly associated with the geometries ("school district's number of students -property)? Or can we use WFS-T for all updates, also non-spatial data ("teacher" data - although this does not sound nice)   * If the stored geometries are simple (points in the map, or rectangular areas), is it smart to involve WFS-T and it's added complexity, or would it be sensible alternative to persist those geometries using the right side of the diagram? You would just have simple X1,Y1,X2,Y2 fields in a non-spatial table "school district", and handle storing that data in your regular web application just like you store all other data.


How to iterate throught fields names in a table and change row values?

I got table like that one (Example). I need to change 0 to 1 and -1 to 0 in each field except first and second. The problem is that every time i have different number of fields and field name is changed too, but i can use wildcard "FID_" to select a field name. I read some stuff about, should be like that:                def test(field.name):       fieldList = ListFields(%path%)       for field in fieldList:         if (field.name)==0:           EQ=1         else:           EQ=0         return EQ      %path% should be the value taken from model-builder (if that is possilbe).


QGIS 2 runtime error message on Windows 8:new install

I am getting the following error message: > Run Time Error Program:C:\PROGRA~1\bin\qgis-bin.exe R6034 An application > made an attempt to load C runtime library incorrectly Contact application > suppliers" My operating system is Windows 8 2012. I have a 64 bit operating system QGIS version Desktop 2.0.1, Browser 2.0.1. This is following download when I try to open the Desktop I am not hugely computer operating system literate so please can the answers avoid too much jargon!!


QGIS 2.0 error when starting on Windows 8

I just installed the new QGIS 2.0 64bits on a Windows 8 pc and I receive the following error message when starting it: ![error message](http://i.stack.imgur.com/vWKBt.png) After clicking ok on the error dialog QGIS start correctly... Any idea what can be the cause of this?


Installation extension functions to pgRouting

I'm trying to find sql source of functions `routing_dd.sql` and `routing_dd_wrappers.sql` I'm working on Windows 7 32bit. The only one link to that wrote by Underdark is empty: _Both are available through the **project repository at Github**. Get them and execute them in your pgRouting-enabled database. Now, you should be ready._ I need to create these functions in Postgres 9.2, Postgis 2.0 and pgRouting. When I use drivingDistance in pgRouting layer plugin in QGIS 2.0 - that mark all nodes on map only, without visible errors. Thanks for answer. Tom


quantile calculation in qgis

I have a simple question about the graduated classification in qgis (version 2.0.1). I can choose between several statistical methods to classify my data (standard deviation, quantile, natural breaks...) and for each method it is possible to choose the number of classes. But how can I choose the range limits for each class? In other words, choosing the quantile method, can I set each class border to be, for example, the 20th, 40th, 60th and 80th quantile rather than 25th, 50th, 75th and 95th? It seems that QGIS calculates automatically the class range limits but it is not possible to know the corresponding quantile. I hope I made myself clear. Thanks


How to indicate flow of a watershed feature?

While tracing and digitizing rivers, streams, rivulets, etc., is it possible to indicate the direction/flow in the shapefile on QGIS? I'd like to avoid using map labels. Ideally, when done tracing, I would like to change the symbology to a line pattern of tiny arrows showing the flow direction. Some similar questions I've found here deal with elevation and contours obtained from DEM materials. Although I am also working with DEM files, I would like to be able to work this without using the ASTER material and simply input it myself since I know the flow direction.


How to get status of a layer in geoserver using gsconfig?

I am getting all published layers from geoserver using gsconfig using following code:               from geoserver.catalog import Catalog       cat=Catalog("http:// localhost:8080/geoserver/rest")       myResource = cat.get_resources(store='storeName', workspace='workspaceName')       layers = cat.get_layers(myResource).      Now I want to get all layers which are not published stored (yet to be published) or status of a layer which means published or yet to be published . How can I?


Weighting Point Data whilst performing a Near analysis

I am struggling to work out how I can assign weights to my points (airports), So far I have carried out a Near fuction so that all of my raster (output areas ) are assigned a point with its distance being recorded. How do I now weight the different points, due to other airports being larger than others? Any Ideas?


What sources of granular wind data over the continental US are available?

I am looking for publicly or commercially available wind data at altitudes ranging from 0 feet to 40,000 feet over the continental United States. Which data sources should I look at? Which one is available at the finest resolution (both spatially and temporally) possible? How was this data measured or modeled?


A good tutorial for Openlayers

I need to create a web map showing many raster layers. I am using mapserver and want to use Openlayers, however I can't find any good tutorial about it. I see a couple of old questions (1 and 2) saying that there were no good documentation. Have the things changed recently? I would like to find a tutorial teaching from basics to rather complicated things with good explanations of the code and pictures/examples of the results. For now I managed to do only the simplest web map with my _.map_ file, but I need to customize it (add legends, group layers, add more controls, embedding, etc).


Re-Distributing Python Toolbox

After reading this Esri article on how to distribute Python Toolboxes, I'm wondering how redistribution works? I have a few toolboxes that are in constant development, but would be useful to my co-workers now. If I distribute them as the article suggests and they show up in the System Toolbox in ArcMap can I use the same process to update them? Or is there some extra code that will need to remove the previous version of toolboxes before I distribute the updated versions. I'm sure I just need to be pointed to a help file where it is all laid out, but I haven't found it yet. Thanks


Openlayers WFS events: click or hover functionality not registering

I've successfully gotten this to work before so I am confused as to why it's not working this time. Everything seems to be in place: no mapfile errors, no js errors in the console. Here's a gist of the js: https://gist.github.com/anonymous/7664194 Lines 177-217 being the ones of concern. Note: the points are displaying correctly, but I just can't get any events to register on the points, whether it be hover or click.               var wfs = new OpenLayers.Layer.Vector("SW Airports", {                 wrapDateLine: true,                 strategies: [new OpenLayers.Strategy.Fixed()],                 protocol: new OpenLayers.Protocol.WFS({                         srsName: "EPSG:3857",                         version: "1.0.0",                         url: "http://another_server/cgi-bin/mapserv.exe?map=/tmp/navhome/navcore/interactive/interactive_viewer.map&SERVICE=WFS&VERSION=1.1.0&srsName=EPSG:3857",                         featureType: "Airports"                 })         });     map.addLayer(wfs);          var selectControl = new OpenLayers.Control.SelectFeature(                 [wfs],                 {                         clickout: true, toggle: true,                         multiple: true, hover: true,                         toggleKey: "ctrlKey",                         multipleKey: "shiftKey"                 }         );              map.addControl(selectControl);         selectControl.activate();              wfs.events.on({         featureselected: function(event) {                 var feature = event.feature;                 feature.popup = new OpenLayers.Popup.FramedCloud("box",                         feature.geometry.getBounds().getCenterLonLat(),                         null,                         '
Airport: '+feature.attributes.name +'
 IATA: '+feature.attributes.iata+'
'+'
'+ 'Center on Location'+ '
'+'Center on Location and Zoom In',                         null,                         true                 );                 while( map.popups.length ) {                         map.removePopup( map.popups[0] );                 }                 map.addPopup(feature.popup);                 }         });       Any insight on the matter is appreciated.


Model Run from Python script

Ive broken a complex task down to a very simple excersise and still cant get it to work.... **I need to set up a Python Scpript to Run a Model**. > model: "SelectTest" > > toolbox: "INTEGRITY_TOOLS.tbx". > > location: c:\Work\INTEGRITY\INTEGRITY_TOOLS.tbx ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               import arcpy          arcpy.ImportToolbox (r"c:\Work\INTEGRITY\INTEGRITY_TOOLS.tbx", "SelectTest")          arcpy.SelectTest()      If anyone can help me get over this embarrassing hump, i'd appreciate it!


Table Relate Spatial and Tabular data in QGIS 2.0

I am self taught in GIS, so I apologize ahead of time for my noobness. In ArcGIS you have two options to associate data in a table to spatial data. Based upon my understanding, the first is Join which allows the join of 1:1 or many:1. Then there is Relate which allows 1:many. I downloaded soils data from Web Soils Survey. In this data there is a spatial data, a shape file named soilmu_a_ny071.shp. And there is tabular data named component in soildb_US_2003.mdb. I need to relate the spatial data to many attributes in the tabular data based upon the common field MUKEY. Is there a way to Relate in QGIS 2.0? I also have Postgresql and PostGIS installed, so is there a way to do it through there?


Geological/geographic dataset or query language?

I'm looking for a dataset that I can ask questions like "which points on the entire earth get the most fog in December and have the steepest terrain?" and "how many people living there speak English and have a college-level education?" Obviously it would be trivial to write some code to "glue together" many datasets to let me do composite queries. I'm first interested in just finding a dataset that's anything vaguely reminsicent of this so I can look further for something closer to what I need. But I am particularly interested in "fog" and "steepness of terrain" and have no idea where to look for that data.


How to extract shape of each segment?

osm2po library does a great job in creating the data required by pgRouting to calculate theshortest paths. But I need the shape (Geometry - LineString 4326) to be extracted when osm2po generates the sql file for postgresql out of the .osm file. Is there anyway to do this? Or maybe external library? I want the shape to be `Geometry(LineString,4326)` to fit into my database.


Using ArcObjects, how to convert an Access table into a proper geodatabase table?

I have inherited an ArcGIS application that creates a number of access database tables. I'd like to use ArcObjects to convert them to proper geodatabase tables, which I understand to mean simply adding on an ObjectID. I found an example showing how to do this with Python but couldn't locate one for C#. Could someone point me in that direction, or explain to me what needs to be done?


Looking for high resolution (1m or better) aerials for Turkey

Would prefer free but under a couple hundred dollars is also doable. It would be nice to have actual tif, sid, etc. files but a WMS would also work... using ArcGIS 10 Would also consider any of the free open source GIS as possible solution. The WMS (bing and esri) I have been able to locate have holes and poor resolution in many areas of our 24k scale Turkey project. aerial problem areas here Have attempted to use the trial versions of ArcBruTile and Global Mapper. Both of which don't provide what we need without spending too much on what looks like overpriced convoluted products. It seems there has to be some high resolution aerials for Turkey that are free/inexpensive and user friendly to download/use.


How can I identify oneways at pgrouting

I have set pgrouting and inserted my data with osm2pgrouting . I would like to know how can I find out which way is one way. Also I read that if I assign the reverse_cost of an one way to -1 only the this road is considered as one way, is it true?


CartoDB/Javascript - Layer Selection Buttons help

I'm trying to make my own layer selector (due to the CartoDB one not appearing on mobile devices) and I'm having issues, mainly due to my lack of experience with Javascript. The issue seems to be most of the tutorials use SQL to pull out data from a single layer, but I can't figure out how to to just pull out layers from a visualization. I'm basing my code off of http://jsbin.com/sihayino/4/edit , because it seems to work besides that. It produces buttons at the very least. There are two issues that confuse me, A) What does this block of code do?               var subLayerOptions = {     sql: "SELECT * FROM estest_all_3"     };      B) And how do I get this to turn into displaying layers in the visualization, rather than a               sublayers[0].setSQL("SELECT * FROM estest_all_3");      These are the only things in the file I can't figure out how to replace with my information. I can provide more code if needed.


importing wayoints from wpt files (Ozi)

I do not succeed in importing waypoints from Ozi files (extension .wpt). I tried both converting through GPS-Babel to XML (.gpx) and importing in QGIS with the GPS-tool. Both times set to WGS 84, as is the setting in Ozi. What should I do?


Temporal coverages dynamically reloaded from data store in GeoServer

I'm pretty new to GeoServer. I would like to serve results of a simulation that concerns geospatial data as a Web Coverage Service (it has to be OGC compliant). The individual steps of the simulation (similar to movie frames) should be uploaded to the server. Currently the results are simply series of files with some basic metadata. Client may want to ask for a specific period of time that should be returned (specific set of frames). I would like to write my **own data store format** (GeoServer extension) for reading simulation results that would be kept in some directory. However, I see 3 problems with doing this with the GeoServer:   1. There is only a 1-1 relation between data store and layer. That is I would have to create separate data stores for each simulation. Because each simulation is of the same kind it would be more reasonable to keep them in one store.   2. The layers do **not refresh** themselves at runtime. That is, if a new data appears in a data store then it is not visible by the layer. The layer needs to be recreated.   3. I am worried about the support of time-querying of coverages or multidimensional coverages. I read somewhere that those are not supported well by the GeoServer. Another approach is to create layers and data stores dynamically using REST interface when new simulation results are available. This doesn't look like a proper way, though. Am I right about above issues? Is there any convenient way for doing this with GeoServer? I am using GeoServer 2.2-beta. EDIT: We eventually ended up implementing our own simple WCS service that meets our needs. However, because the **ImageMosaic** plugin did work when it comes to series of time-related data (the problem was we still had to create new layers manually) I accept Andrea Aime's answer.


Spaces in postcodes preventing join

I have a shapefile British Columbia with postal codes. The attribute table gives the codes with no spaces, eg V6P2A8. I am trying to join a csv file by postal code (the key I am using). My csv file has postal codes with a consistent space, eg V6P 2A8. Naturally the join doesn't work because of that space. How can I either remove the space? Thanks Stephen


parsing a degree/minute/second field

I am working in a tabular set (.dbf) In ArcGIS 10.1 with an odd DMS format.The format is as follows: Lat: 45585400 Long: 89560600 I believe this is a strange notation for 45°58'54" and -89°56'06". My problem is I can't figure out how to parse the Degrees, Minutes and Seconds out into individual fields in the .dbf. Once I get that far I can easily convert the value to decimal degrees and create point data out of it. If anyone can help me with this I would really appreciate it.


What is causing sr.lock on tables after looping?

The following code puts an sr.lock on each table in my List. What’s causing my tables to lock up? I understand my script is reading or opening my tables temporarily to perform the “MakeRouteEventLayer_lr” Geoprocessing but since I’m not necessarily inserting a cursor I should not have to delete references to a table right? As a result of my tables locking up while running the “MakeRouteEventLayer_lr()”, I am not able to run the second Geoprocessing tool “arcpy.AddXY_management()”. Currently, in order to accomplish my task I have to run each of the Geoprocessing as a standalone process and even then the tables are locked once they finish processing. I would greatly appreciate it if someone can help me isolate this problem. By the way my source data is in a file geodatabase. I've ran the code below in pythonWin and ArcMap with the same results.               # First Geoprocessing          Table_List = arcpy.ListTables()     for t_list in Table_List:         arcpy.MakeRouteEventLayer_lr(PODS_ROUTEM, "ROUTE_CODE", t_list, "Route_Code POINT measure", t_list+'_EVENT', "", "NO_ERROR_FIELD", "NO_ANGLE_FIELD", "NORMAL", "ANGLE", "LEFT", "POINT")         arcpy.CopyFeatures_management(t_list+'_EVENT',t_list+'_EVENT')          # Second geoprocessing              fc_list = arcpy.ListFeatureClasses()     for fc in fc_list:              arcpy.AddXY_management(fc)         arcpy.CopyFeatures_management(fc,fc)


MapServer Mapfile and OpenLayers: using SIZEUNITS. Labels shrinking on 1x zoom and points disappearing upon zooming in

I am trying to set the symbol radius to 100 miles. This seems ok (note, not including the whole mapfile, just what's at hand here):               LAYER       NAME POIs        TOLERANCE 50         TOLERANCEUNITS miles        LABELITEM "name"        SIZEUNITS miles             CLASS         STYLE            SYMBOL 'Airport'            COLOR 61 245 0            SIZE 100            MINWIDTH 100            MAXWIDTH 100         END         LABEL           SIZE 9         END       END      I'd like to keep the label size at 9. If I am NOT using               SIZEUNITS miles      the label at size 9 looks fine. But using `SIZEUNITS miles` makes it much much smaller. After reading here: http://lists.osgeo.org/pipermail/mapserver- users/2012-February/071582.html it seems you can set a maxwidth and minwidth within your `STYLE` to accompany for having the symbol width in pixels but the radius in miles (correct me if I am wrong). Also: When I zoom in on a handful of points, certain points and labels start to disappear. I know I could set `FORCE ON` and `PARTIALS TRUE` but this doesn't look good. So what I would like to understand: 1) why are the labels becoming much smaller with `SIZEUNITS miles` on? and 2) why are certain points disappearing when zooming in (and some only showing up when zooming in, not initially present) when there seems to be ample room on the map for them to display without `FORCE ON`? ![See here for original zoom](http://i.imgur.com/jFqatfA.png). Right click image link into new tab to see better view.


How can I create contours of 0.1 or 0.2 instead of 1?

The default value is 1 and I have salinity values from 33 to 35 and therefore only contours 34 and 35 can be created with the contour interval 1... But I want it smaller so I can see contours 34.1, 34.2, .... 34.9, 35.0.....


Port an OpenLayers application to mobile devices

After making a duration/cost estimation, I'm about to start to start developing a desktop application using OpenLayers. I've never had experience on it before, but have the support of some coworkers who do. Now we have to estimate the time and effort it would take the same application to be viewable in mobile devices. I know the existence of `openlayers.mobile.js`, but nobody in my company has ever worked with it before. I know it has some advantages over the _normal_ OpenLayers library, such as pinching for zooming, and so. But, does it has any blocked capabilities? I mean, if I write code to draw a line on a layer in the desktop application, change the simbology of a layer, add a buffer arround a polyline, etc.. will it still work with the mobile library? Is there funcionality in the desktop version that is not in the mobile one? I'd need to know before estimating what can I offer in the mobile version, and how hard will it be to get so.


layer to KML conversion

I am using arcgis 10.1 and my concern is to convert a layer to KML. The size of the layer that I would like to convert is of 7KB. For some reason it is being converted all the time with errors. Any suggestions why is this happening?


Using Python in the Field Calculator, how do I refer to a field in another shapefile?

I want to compare the changes in geometry between two shapefiles (of election districts in NYC. One is from 2001 and the other 2005). I am attempting to calculate a new field in the 2005 shapefile that shows the change in AREA from the 2001 shapefile to the 2005 shapefile, using the districts common IDs. What I can't seem to figure out is how to refer to a field name in ANOTHER shapefile in my field calculator definition. Here's what I have so far: Pre-Logic Script Code:               def areaChg(shpOrig, areaOrig, shpNew, areaNew):         origRows = arcpy.SearchCursor(shpOrig)         for origRow in origRows:             newRows = arcpy.SearchCursor(shpNew)             for newRow in newRows:                 if origRow.ED == newRow.ED:                     return newRow.ED - origRow.ED                 else: pass      AreaChg =               areaChg("nyed_01bav", areaOrig, "nyed_05", !Area!)      It's the "areaOrig" in that last part of code, which is the place-holder for the field in the other shapefile, which I'm having a hard time with. How do I point to a field in another shapefile in field calculator? For the field in the shapefile from within which I'm doing the calculation, the correct format is "!Area!", but what about for a field from another shapefile? Thanks!


Creating contours with meaningful values from point data

I recently obtained a CSV containing the locations of all recorded bicycle accidents in Boston over the past few years. As an avid cyclist, I'd like to create a simple contour map that draws attention to the intersections with the greatest accident densities to share with friends, colleagues, and city officials. Using the Heatmap QGIS plugin and GDAL's contour tool, I created an aesthetically pleasing contour map, but my concern is that the numerical values are not easily digestible, largely because the heatmap plugin computes density using KDE, rather than point density. I'd like to create contours that reflect the number of crashes within 400m of a given point. (So for example, any point within the highest "elevation" contours is within 400m of at least 8 crashes, while any point within the lowest "elevation is within 400m of at least 1 crash.) Is this possible? Or is there another, better way to visualize point densities using contours? If it's any help, I generated my heatmap with a radius of 400m, a decay of 0, and X and Y values of 10 (so each cell is 10m x 10m). I converted the heatmap into contours using an elevation value of 1. I'd be grateful for any tips or solutions to my quandary. Thanks!


PostGIS 3D in Action

I was wondering if there is a website that showcases Openlayers and PostGIS 3D in Action


Making point selection tool using ArcObjects with VBA?

I want to make a selection tool that I can use to select a feature point in ArcGIS for Desktop so I can combine it with a form that I just made to display the form after the feature selected. I use VBA but, because I'm newbie, I don't really understand which interface that I should use.


Network Analyst: Grouping Points by Location

What I am trying to achieve is pictured below, but programmatically. I have a table of 400 locations from which I eyed out an equal amount of points and divided them into 3 routes with Zip Code Tabulation Areas as my zones. I was wondering if there are any toolsets that group points by location, but up until a certain number of records. In my example I have a ceiling of 140 locations per route. Any input would be invaluable, thank you! Edit: Using ArcMap 10.2 Desktop Advanced ![Routing Problem](http://i.stack.imgur.com/8IwoT.png)


.NET Components triggering ITools on ArcEngine/Objects

I'm building a simple map interface on a .net component that I need to redistribute around. Well, my initial thoughts was to create the tools just the way I'm used to do it in ArcMap, inheriting BaseTool and then set the MapControl.CurrentTool = tool in my onclick form events. What is the best way to accomplish this? This one? Also, how can I pass the hook to those tools? I'm using this class:               public class CommandPoolManager     {         public ICommandPool _CommandPool;              public ICommandPoolEdit GetCommandPoolEdit         {             get { return (ICommandPoolEdit)_CommandPool; }         }              public ICommandPool GetCommandPool         {             get { return this._CommandPool; }         }              public CommandPoolManager(object hook)         {             this._CommandPool = new CommandPoolClass();             ICommandPoolEdit commandPoolEdit = (ICommandPoolEdit)this._CommandPool;             commandPoolEdit.SetHook(hook);         }              public void AddCommandToPool(ICommand command)         {             ICommandPoolEdit commandPoolEdit = GetCommandPoolEdit;             commandPoolEdit.AddCommand(command,null);             commandPoolEdit.CallOnCreate(command);         }              public void AddCommandToPool(ICommand command,UID uid)         {             ICommandPoolEdit commandPoolEdit = GetCommandPoolEdit;             commandPoolEdit.AddCommand(command, uid);             commandPoolEdit.CallOnCreate(command);         }     }      Would that be the correct way to use CommandPool? I'm without options for testing this, since it's a component to be distributed. The real question is: Am I on the right track?