title: How to access Esri ArcPy modules from Enthought Canopy?

text: I have ArcGIS 10.1 running on my windows system and I have also installed the new 32-bit Canopy Express Enthought Python Distribution. Is it possible to load and use the Esri ArcPy modules from Canopy?


title: How to delete an edge in QGIS

text: I have used the Lines to polygons tool to turn a city boundary linestring feature into a polygon. However, the tool has connected some nodes more than one time, resulting in multiple edges ![city boundary with multiple edges](http://i.stack.imgur.com/Cj2aA.png). I would like to remove some edges but not the nodes, therefore I cannot use the Node tool. Is there any way to do this (or to keep the tool from connecting node more than one time)? Thanks


title: Reduce processing time in Erase function using Arcpy in IDLE

text: I am processing 18,000 feature classes (saved in a file GDB), each with ~500 records (polygon features) in ocean areas, and I am running a script to remove area overlapping with the coast, using the Erase function. The script is running successfully, but literally taking days to complete. Some files take seconds to process (I'm assuming this is due to the fact, which I've verified, that they are not overlapping with coastline) while some feature classes take over an hour to process. I am working locally on my machine, running the script in IDLE, with ArcGIS 10.1 (all licenses) on a 32-bit Windows 7, 3.33GHz Intel DuoCore, 4GB RAM computer. I'm learning the ropes with Python and would really appreciate tips on my script if there are steps I can take to speed up processing time. Thank you!               # Import modules     import arcpy     import sys     import os     from arcpy import env          arcpy.env.overwriteOutput = True     print arcpy.env.overwriteOutput          #Erase coastline from selected buffers.     workspace = "C:\\DIR\\points_buff\\"     arcpy.env.workspace = workspace     erase_output = workspace+"erased.gdb\\"     erasedirectorypath = "C:\\DIR\\points_buff\\selectedbuff.gdb"     fileList = []          for dirpath, dirnames, erases in arcpy.da.Walk(erasedirectorypath,                                                   datatype="FeatureClass",                                                   type="Polygon"):         for erase in erases:             fileList.append(os.path.join(dirpath, erase))             filenameparts = erase.split('_')             if int(filenameparts[1]) > int(1967):                      try:             #Set variables for Erase tool                     in_features = erasedirectorypath+"\\"+erase                     coastline_feat = "C:\\DIR\\Basic_NE.gdb\\Coastline_Eastern_US"                     out_erase_feat = erase_output+erase[:-4]+"_er"                     arcpy.Erase_analysis(in_features, coastline_feat, out_erase_feat, '')                     print arcpy.GetMessages()                     print "Coastline has been erased from " + erase + " and saved to " + erase_output                      except:                     print arcpy.GetMessages()


title: Select / Deselect and Identify Features in QGIS

text: Sorry if this is all a bit 101, but I'm new to QGIS. I basically have a large Arc project that I can access in QGIS for reference, so will only really be using it to identify features. For example to check the classification of a road line (which may be correct even if a lozenge on a map is incorrect, for example.) I have my project open, but am unable to select any features from layers that are checked. I only have the option to Deselect Features from All Layers. However, when I try to do that, nothing seems to happen. So I am unable to select any features I want to identify. This must be something pretty simple, but some help would be much appreciated for a newbie! Thank you.


title: Increase max zoom level in OpenLayers

text: I'm developing a map in an Android WebView, using OpenLayers and a WMS Service. I can only zoom a certain amount of times (which I would like to increase). My code is:               map = new OpenLayers.Map({div:"map"});     baseLayer = new OpenLayers.Layer.WMS("WMS", link, {layers:"basic"});     map.addLayer(baseLayer);      I've tried from the page Setting Zoom Levels               var options = { numZoomLevels: 25 };     map = new OpenLayers.Map( {div:"map"} , options);       but then the map doesn't even show. And this:               map = new OpenLayers.Map({div:"map"});     baseLayer = new OpenLayers.Layer.WMS("WMS", link, {layers:"basic", numZoomLevels: 25});     map.addLayer(baseLayer);      but in this case, nothing changes (I can only zoom in 16 times, as before). Where is my mistake?


title: How to toggle Fusion Tables layer on/off based on map scale?

text: In the Google Maps API v3 I'm displaying points derived from a Fusion Table by specifying a FusionTablesLayer Is it possible to set a minimum/maximum scale on this layer, so it turns off when zooming out? EDIT: I'm presuming that I'll need to listen to the map's zoom_changed event, and handle the visibility manually. **But how can I change the visibility of a Fusion Tables layer?** A **marker** has the boolean property Visible and the method SetVisible() but I can't see an equivalent for a layer. An **overlay** can have show/hide methods - do I need to build my Fusion Tables layer as an overlay? (I'm a Google Maps novice so I don't know much about overlays vs layers) Thanks


title: Retrieve speed and number of Lanes in Google Maps API, OSM data or any other stream?

text: Is it possible to return the posted speed and number of lanes of a highway segment using Google Maps API, OSM data, or any other stream (paid for or free)?


title: Publish ArcSDE FeatureService for Versioned Editing

text: **Scenario** : I need to Publish a data (from ORACLE ArcSDE) for versioned editing. Each user should be able to connect to his version and edit the data throu web application (Silverlight/JAVA/Flex API). **Question** : Do I need to create a FeatureService for each user (with ArcMap document containing data from version)? Or is there a simpler way to do it? I would prefer if I have to make only one ArcSDE connection in ArcMap and publish that resource as a featureservice.


title: Problem with editing representation

text: How we can edit the representation of a layer programmatically in DotNet ? ''Representations allow you to customize the appearance of features by storing symbol information with the feature geometry inside feature classes. This additional control can help you meet stringent cartographic specifications or simply improve the display.''


title: How can I track/graph arcserver usage statistics?

text: I’m currently using the ArcGIS Server Properties dialog in ArcCatalog to periodically check the usage statistics for our services. I’d like to be able to chart those to get a big picture view of what’s going on. Does anyone know the location on an ArcServer machine where a file with these statistics is being written, ideally something that could be pulled into a spreadsheet? Thanks for any help. ![enter image description here](http://i.stack.imgur.com/8xQZ7.jpg)


title: Finding TOC Layers Type (layer,grouplayer,..) and layerindex of a layer

text: How can i find the type of the layers in TOC ? these types are very important to me : 1.layer (that has a valid datasource) 2.layer (that lose its datasource because of changing the address of its datasource ) 3.GroupLayer And i want to know about the index of the layer that we have with ILayer. A function like this : Public Function GetLayerIndex(mLayer as ILayer) as long


title: Renaming Columns in Geotools FeatureType

text: I am attempting to build a simple java program that loads shapefiles into a Postgis 2.0 database. Everything is working out great except that I would like to be able to modify the FeatureType in the following ways: 1) change the geometry column name from "the_geom" to "geom" 2) set all columns to be lower case. 3) change the primary key from serial to bigserial. The following is my current code which basically is just transferring the shpSchema to the pgSchema. I am fairly certain that what I am trying to do is fairly simple and common, but I can find no obvious way to do it or any documentation --or even any examples of someone trying to do this.                   Map shpConnectParams = new HashMap();         shpConnectParams.put("url", shapefile.toURI().toURL());              DataStore shpStore = DataStoreFinder.getDataStore(shpConnectParams);              String shpTypeName = shpStore.getTypeNames()[0];         FeatureSource shpFS = shpStore.getFeatureSource(shpTypeName);              SimpleFeatureType shpSchema = (SimpleFeatureType) shpFS.getSchema();         CoordinateReferenceSystem crs = shpSchema.getCoordinateReferenceSystem();         Map pgParams = new HashMap();         out.println(shpSchema.getGeometryDescriptor().getType());         for (AttributeDescriptor attrDesc : shpSchema.getAttributeDescriptors()) {                  out.println(attrDesc.getName());         }              pgParams.put("dbtype", "postgis");                   //must be postgis         pgParams.put("host", "localhost");      //the name or ip address of the machine running PostGIS         pgParams.put("port", new Integer(5432));             //the port that PostGIS is running on (generally 5432)         pgParams.put("database", "test");              //the name of the database to connect to.         pgParams.put("user", "postgres");                    //the user to connect with         pgParams.put("passwd", "test!");                 //the password of the user.         pgParams.put("schema", "scratch");   //the schema of the database         pgParams.put("create spatial index", Boolean.TRUE);                        SimpleFeatureTypeBuilder builder = new SimpleFeatureTypeBuilder();              builder.addAll(shpSchema.getAttributeDescriptors());         builder.setCRS(crs);         builder.setName(shpTypeName);              DataStore pgDatastore = DataStoreFinder.getDataStore(pgParams);         pgDatastore.createSchema(builder.buildFeatureType());              SimpleFeatureSource pgFS = pgDatastore.getFeatureSource(shpTypeName);              SimpleFeatureType pgSchema = pgFS.getSchema();                   Transaction transaction = new DefaultTransaction("create");                   if (pgFS instanceof SimpleFeatureStore) {             SimpleFeatureStore pgFeatureStore = (SimpleFeatureStore) pgFS;                                      SimpleFeatureCollection features = (SimpleFeatureCollection) shpFS.getFeatures();             pgFeatureStore.setTransaction(transaction);             try {                 pgFeatureStore.addFeatures(features);                 transaction.commit();                  } catch (Exception problem) {                 problem.printStackTrace();                 transaction.rollback();                  } finally {                 transaction.close();             }             System.exit(0); // success!         } else {             System.out.println(shpTypeName + " does not support read/write access");             System.exit(1);         }              pgDatastore.dispose();


title: How to use CropCoverage Render Transformation in Geoserver SLD (WPS)?

text: I have yet to find an example on the web (or in code) of anyone using the "Crop Coverage" Render Transformation from a Geoserver SLD. Does anyone have an example or at least be able to point me to the syntax of using an existing Geoserver hosted layer as a the "crop geometry?" **gs:CropCoverage** is one of the WPS Processes used to crop raster layers. It is also possible to chain more WPS processes in a SLD but I cannot find an example of how to use gs:CropCoverage in a SLD. At the moment I am using Geoserver 2.4.3 on Tomcat 6.


title: Is it possible to see polyline as route or track data on GPS?

text: I would like to see polyline on GPS. First, I try to convert polyline to GPX. I uploaded GPX on GPS. SO far, I could not see the line on GPS. First of all,is it possible to see polyline as route or track data on GPS?


title: Overview of statistical maps/charts types

text: I know of a few ways to visualize statistical information on a map, like choropleth maps, prism maps or simply displaying little bar-charts or pie- charts near locations on a map. But there must be a lot more different ways to display statistical information on a map. I can only find lists with specific subsets, but no clear overview of all commonly used methods. Does an overview exist of all commonly used ways to map data to geographic location?


title: Getting geometry of drawing in ArcGIS Server JavaScript API

text: To me, ArcGIS Help and Online Resources is always full of unneccessay information and missing some important points. For example there are lots of samples for drawing but I couldn't find any thing for steps post drawing like saving on Database or Map! By the way, I am trying to Save some user inputs (Points or Multipoints) on the Map to MySQL database. I have a Table in database as :               create table Points (      name VARCHAR(20) PRIMARY KEY,      location Point NOT NULL,      description VARCHAR(200),      SPATIAL INDEX(location)      );       Now, I would like to save Geometry of the drawing point(s) in to this table. Can you please point me to an sample, tutorial or give me an idea how to get this information from the drawing classes?


title: Demographic Information of U.S. Census Blocks

text: I am struggling to find the blockwise (not blockgroup or tract) data like employment status, household income, commuting distance, list of place of interest, industry information. By using American Factfinder I get easily the updated data of these factors by tract and 2010 version of blockgroup. ACS Employment Status Data by Block Group, 2006-2010 is given here. Any help is appreciated.


title: Issue with recently cached ArcGIS services

text: ArcGIS for Server 10.0 SP5 Virtual Windows Server 2008 R2 Enterprise 16.0 GB RAM, 4 Processors (2.00 GHz each) Hello All, I am having issues with two services that I have cached as basemaps for my web applications. Here's a little back story - These services have been in use for a couple years, and every so often (about 6 months) these caches are rebuilt to address changes in basemap items (i.e. street centerline changes). We use a variety of different basemaps in our web map applications, and this weekend I recently updated the cache on two of them since it takes so long to do them in our current setup (one machine environment). These services worked just fine, then after recaching them they appear to be fine, until a user spends a little more than 2 minutes on an application using the service. Then the basemap tiles begin to lag and not load. Network debugging shows the pending processes, and SOMETIMES the tiles do load after about 1-2 minutes. MOST times they do not load for at least 4 minutes. Remaining times they just stop loading, and process stay pending until they timeout with a 500 server error. I have an open ticket with Esri, but they have yet to pinpoint the issue. Some changes we have tried include:   * Editing the impersonation for the rest and services config files from true to false   * Running post installation   * Changing services to low isolation and increasing instances to 8 Results for each change are as follows respectively:   * Caused Bad 404 errors for REST page.   * This was done in to try and fix above 404 error, it did not. Impersonate values changed back to true to fix 404 error.   * No changes seen with services. Same lag issues as before. In addition to the above, the ArcGISServiceAppPool process periodically will cause the CPU on the server to peg out at 100%. I have seen the KB articles (w3wp.exe, although it is for 9.x versions, and lsass.exe) related to this issue. Implementing the suggested fixes are what caused the 404 issue. I read through this post and it relates to some of the issues I am also experiencing. I have checked the log and do not see anything that helps identify the issue at hand. If anyone has experienced a similar situation and can provide any assistance, I would greatly appreciate it. Please let me know if you need additional details. Thanks in advance! EDIT - question is also posted to ArcGIS forum. User asked if service caches were being created on demand. Answer: They are not, however both with and without this option have been tested and the results are similar. UPDATE - I believe I may have found why the issue is occurring only at some levels. It appears that some tiles are missing at these levels. Since some tiles are missing, users still pan/zoom which then become network processes that never complete. If enough of these add up, it bogs the server down (since most other requests are fulfilled, it's hard to monitor performance). I think from here I am going to recache the map at the last three levels, then copy the updated levels to the original cache and see if this fixes the issue.


title: landsat with C# or Java

text: I have imaged data about landsat8 satellite. These are raster data, i want to process to take out the temperature of each region (geometry). I can do this in postgresql, but i don't want to store the raster data because they are too enormous. I can use c # or java to process that problem or not? From images of landsat8 through java software, can i collect vector data corresponding to each zone in database and then import postgrerql? I want to use 2 languages, but if they are impossible, are there any languages supporting for that? Thank you very much


title: Buffer along a route

text: I'm using Googlemaps service to plot some marker on the map. All markers are stored in a postgresql table, named "locations" and that has a location column (data type to geometry).   When the user clicks on the markers a route is created between them. My question is: how can I generate a buffer (with a limit of 10km along route) and select all my locations inside the buffer. I`m really new in postgis. P.S. This link inspired me but without success   Thanks!


title: Which function for creating a POINT in PostGIS?

text: When defining a Point in PostGIS, when do you decide to use which of the following?   * `ST_SetSRID(ST_MakePoint(lon,lat),4326)`   * `ST_SetSRID(ST_Point(long,lat),4326)`   * `ST_SetSRID(ST_GeomFromText('POINT(lon lat)',4326)`   * `ST_GeomFromEWKT('SRID=4326;POINT(lon lat)')` If its essentially a difference in performance, which will be the fastest?


title: How to manage the osmosis filters?

text: I am a complete beginner in OSM and osmosis, and I am trying to build a stripped down version of a local map, in order to add nodes of public lights that would be used for maintenance. I have used the following command line in order to keep only streets and roads, but there are still plenty of one way signs (arrows) cluttering the narrow streets in the center of the village, and I would like to get rid of them. I could not find any way to eliminate them (or to make them invisible in the output) I am also trying to get rid of the names of the streets, since most tend to consume too much space in some areas where I will need to add nodes. Any comment would be appreciated as well in order to refine or correct the command.               osmosis --read-xml file="Source-Map.osm.xml" --tag-filter accept-ways highway=* --tag-filter reject-ways highway=track --tag-filter reject-nodes highway=bus_stop --tag-filter reject-nodes highway=one_way --tag-filter reject-nodes barrier=* --tag-filter reject-nodes highway=untagged --tag-filter reject-relations --used-node --write-xml file="FilteredMap.osm"


title: Restricting base map on specific extent in ArcGIS JSAPI 3.3/3.4

text: Currently I am using ArcGIS JS API ver 3.3/3.5 in my application. I want to restrict the basemap for US only .For example one can use default navigation features like zoom in, zoom out for the US Country only. Trying following things: 1.I have set the US extent code in my application but when I zoom out then I can see the whole world map I want to restrict it to certain extent only 2.Going through this question Restrict pan and zoom in ArcGIS Javascript API? 3.Restricting the streets base map using this question but unable to restricting the map How do I use my own basemap with Javascript API? 4.I am using this sample map in my application. Any help regarding this will be great!!! Thanks in advance !!!


title: GeoTIFF without projection?

text: I have encountered a GeoTIFF raster files with EPSG:4326 (WGS84), i.e. no projection defined! Is this normal? I would expect raster to be in Projected Coordinate System. Raster is a grid of pixels so I expected this would be defined in the plane.


title: Rf-Classification seems to work but gives an error 15 seconds later

text: This is my code. It classifies an imagery-stack(xvars) and reads a shapefile with training-points. If I run single rows they work. Even if I run them all, they work and start to predict but after 15s it stops working and gives an error. As far as I understand, the classification doesn't need the raster-names because they are read automatically. My training-shapefile (sw_trainshape.shp) inherits a table with columns               FID    Shape    Class      ObjectID       x              y      1     Point     bush         1      481791,2429   5626286,6397      2      ...       ...        ...            ...      My tif-files are named _band1_ , _band2_ , _band3_ and so on. I have 6 bands. Yet I'm not experienced enough, so I could use some help as to why my code doesn't classifies. ERROR: > "Loading required package: tcltk > > Error in predict.randomForest(model, blockvals, ...) : variables in the > training data missing in newdata" Code:               setwd("D:/BA-Workspace/DOP_10/orthophotos_abcd/R/test_run_R/test_other")               library(sp)     library(rgdal)     library(raster)     library(randomForest)          # create list of rasters     rlist=list.files(getwd(), pattern="tif$", full.names=TRUE)           # CREATE RASTER STACK     xvars <- stack(rlist)                # READ Raster TRAINING DATA     sdata <- readOGR(dsn=getwd(), layer="sw_trainshape")          # ASSIGN RASTER VALUES TO TRAINING DATA     v <- as.data.frame(extract(xvars, sdata))     sdata@data = data.frame(sdata@data, v[match(rownames(sdata@data), rownames(v)),])          # RUN RF MODEL     rf.mdl <- randomForest(x=sdata@data[,3:ncol(sdata@data)],     y=as.factor(sdata@data[,"Class"]),                        ntree=501, importance=TRUE)          # CHECK ERROR CONVERGENCE     #plot(rf.mdl)          # PLOT mean decrease in accuracy VARIABLE IMPORTANCE     #varImpPlot(rf.mdl, type=1)          # PREDICT MODEL     predict(xvars, rf.mdl, filename="RfClassPred.img", type="response",          index=1, na.rm=TRUE, progress="window", overwrite=TRUE)      ![added sdata@data](http://i.stack.imgur.com/3IOgB.jpg) Console:               > setwd("D:/BA-Workspace/DOP_10/orthophotos_abcd/R/test_run_R/test_other")     >      >      > library(sp)     > library(rgdal)     > library(raster)     > library(randomForest)     >      >      > # CREATE LIST OF RASTERS     > rlist=list.files(getwd(), pattern="tif$", full.names=TRUE)      >      > # CREATE RASTER STACK     > xvars <- stack(rlist)           >      > # READ Raster TRAINING DATA     > sdata <- readOGR(dsn=getwd(), layer="sw_trainshape")     OGR data source with driver: ESRI Shapefile      Source: "D:/BA-Workspace/DOP_10/orthophotos_abcd/R/test_run_R/test_other", layer:     "sw_trainshape"     with 256 features and 10 fields     Feature type: wkbPoint with 2 dimensions     >      > # ASSIGN RASTER VALUES TO TRAINING DATA     > v <- as.data.frame(extract(xvars, sdata))     > sdata@data = data.frame(sdata@data, v[match(rownames(sdata@data), rownames(v)),])     >      > # RUN RF MODEL     > rf.mdl <- randomForest(x=sdata@data[,3:ncol(sdata@data)],     y=as.factor(sdata@data[,"Class"]),     +                        ntree=501, importance=TRUE)     >      > # CHECK ERROR CONVERGENCE     > #plot(rf.mdl)     >      > # PLOT mean decrease in accuracy VARIABLE IMPORTANCE     > #varImpPlot(rf.mdl, type=1)     > #setOldClass(SpatialPointsDataFrame)     > # PREDICT MODEL     > predict(xvars, rf.mdl, filename="RfClassPred.img", type="response",      +         index=1, na.rm=TRUE, progress="window", overwrite=TRUE)     Error in predict.randomForest(model, blockvals, ...) :        variables in the training data missing in newdata      ![enter image description here](http://i.stack.imgur.com/ozm81.jpg) Solution, thanks to TimSalabim:               setwd("D:/BA-Workspace/sw_west_aug/reduced_size/")               library(sp)     library(rgdal)     library(raster)     library(randomForest)               # CREATE LIST OF RASTERS     rlist=list.files(getwd(), pattern="tif$", full.names=TRUE)           # CREATE RASTER STACK     xvars <- stack(rlist)            # CREATE RASTER STACK     xvars <- stack(rlist)       x <- coordinates(xvars)[, 1]     y <- coordinates(xvars)[, 2]          x_rst <- y_rst <- xvars[[1]]     x_rst[] <- x     y_rst[] <- y          xvars <- stack(x_rst, y_rst, xvars)     names(xvars) <- c("X", "Y", "focal_1", "focal_2", "focal_3")     # READ Raster TRAINING DATA     sdata <- readOGR(dsn=getwd(), layer="training_west")          # ASSIGN RASTER VALUES TO TRAINING DATA     v <- as.data.frame(extract(xvars, sdata))     sdata@data = data.frame(sdata@data, v[match(rownames(sdata@data), rownames(v)),])          sdata@data  <- sdata@data[-c(5,6)]           # RUN RF MODEL     rf.mdl <- randomForest(x=sdata@data[,3:ncol(sdata@data)],   y=as.factor(sdata@data[,"class"]),                        ntree=501, importance=TRUE)          # CHECK ERROR CONVERGENCE     #plot(rf.mdl)     #sdata@data           # PLOT mean decrease in accuracy VARIABLE IMPORTANCE     #varImpPlot(rf.mdl, type=1)     #setOldClass(SpatialPointsDataFrame)     # PREDICT MODEL     predict(xvars, rf.mdl, filename="RfClassPred.img", type="response",          index=1, na.rm=TRUE, progress="window", overwrite=TRUE)


title: Using Spatial Analyst Classification in ArcGIS Engine?

text: I tend to use ML classification of Spatial Analyst ToolBox in ArcGIS Engine, I wrote this sample code:                       ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.Desktop);             IAoInitialize aoInit = new AoInitialize();             esriLicenseStatus licStat = aoInit.Initialize(esriLicenseProductCode.esriLicenseProductCodeEngine);             licStat = aoInit.CheckOutExtension(esriLicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst);                       Geoprocessor gp = new Geoprocessor();                  gp.AddToolbox(@"C:\Program Files (x86)\ArcGIS\Desktop10.1\ArcToolbox\Toolboxes\Spatial Analyst Tools.tbx");                  //--------------------------------------ENVI                  IVariantArray parameters = new VarArrayClass();             parameters.Add(inputtxt.Text);             parameters.Add(sigtxt.Text);                  parameters.Add(outputtxt.Text);                  IGeoProcessorResult result;             result = (IGeoProcessorResult)gp.Execute("MLClassify ", parameters, null);      but unfortunately the code stop with this error: Error HRESULT E_FAIL has been returned from a call to a COM component. I do not know how to handle it?


title: How to handle sensitive geographic data?

text: You use sensitive geographic data every day. What are your strategies to protect them in your geographical information systems? What kind of architecture do you use? What encryption method do you use? What do you do for users who export sensitive data from your databases? Thank you very much.


title: Do any geodatabase schema and data migration libraries for .NET exist?

text: I'm performing code refactoring and database normalization in my project and looking for any .NET library for geodatabase schema and data migrations. Does any solution exist for ArcObjects? During revision of my geodatabase schema, it may be that I discover that two of my tables contain an identical bunch of columns and they should be extracted into a separate table. So, I change my test geodatabase and program logic to conform to the new schema. But there are many production deployments with the old one. When a new version of the program is deployed to the client, it should perform a database upgrade. And I`m looking for .NET libraries for AO that are designed to write geodatabase upgrades (migrations) with less code (like Migrator.NET).


title: Improve gdaldem hillshade output (lighten up flat parts)

text: I have a hill-shading that I made using `gdaldem hillshade` which is already pretty good. I used the option `-alt 60` to get nice contrast, but the problem is, that with lowering the light-source, also parts in the valley that are quite flat, are not really bright (white). How could I improve that? I've seen that `gdaldem hillshade` doesn't have many options. What other program could I use to improve that? I'd like to say for example: Everything below 20% incline should be a bit lighter.


title: How to Make my Legend Service for ArGIS Server 9.3 Map Service SSL?

text: I am developing an application using map services served by ArcGIS Server 9.3. The application must be completely https since it is shared through a secure Intranet. The application itself, all of the javascript libraries, and all of the map services I call are https. The browser I have to use is IE 11 and I am not able to upgrade to Server 10. The map services do not load because I receive the network error that: http://utility.arcgis.com/sharing/tools/legend?soapUrl=..... is not SSL enabled I've previously read the following, > "If the layers are version 10 or lower the legend is created using the > ArcGIS.com legend service. In order to use the ArcGIS.com legend service > your map service needs to be publicly accessible and your application must > be able to access ArcGIS.com." Is there any way around this? Also note - I do not actually need a legend - so even if there is a way to disable the legend service to be called, that would work!!


title: ArcGIS - Export - Security

text: We use an ArcSDE 10 database. We would like to **log all events to export data** (ArcObject) in ArcGIS Desktop 10. Do you have an idea? a sample (ArcObject)? Thank you


title: Can ArcPy collapse layer in current data frame?

text: Online ArcGIS resource help provides a list of layer properties which can be used as needed. I am not able to find a way to collapse a layer using ArcPy in it. Please suggest if there is a way to collapse a layer in current data frame.


title: problem with popup conclusion on pressing a marker

text:
I have markers on pressing to which popup has to be brought. how to make it? (coordinates of markers undertake from a DB)               var map;     var markers;               function ejecutar() {         init(3);         //loadMarkers();     }     function init(b,kor_1,kor_2) {         if (b == 3) {             map = new OpenLayers.Map("basicMap", {                 controls: [                     new OpenLayers.Control.Navigation(),                     new OpenLayers.Control.PanZoomBar(),                     new OpenLayers.Control.LayerSwitcher(),                     new OpenLayers.Control.Attribution()],                 maxExtent: new OpenLayers.Bounds(-20037508.34, -20037508.34, 20037508.34, 20037508.34),                 maxResolution: 156543.0399,                 numZoomLevels: 2,                 units: 'm',                 projection: new OpenLayers.Projection("EPSG:900913"),                 displayProjection: new OpenLayers.Projection("EPSG:4326")             });         }              layerMapnik = new OpenLayers.Layer.OSM.Mapnik("MapaCiudad");         map.addLayer(layerMapnik);         var lonLat = new OpenLayers.LonLat(50.5206298828125, 55.15881723298661).transform(new OpenLayers.Projection("EPSG:4326"), map.getProjectionObject());         //map.setCenter(new OpenLayers.LonLat(-3.862788677215576, 43.4669443349282) // Center of the map         map.zoomTo(9);         map.setCenter(lonLat, 19);                   //создаем дорогу              var lineLayer = new OpenLayers.Layer.Vector("Линии");          map.addLayer(lineLayer);                             map.addControl(new OpenLayers.Control.DrawFeature(lineLayer, OpenLayers.Handler.Path));              var points = new Array(            new OpenLayers.Geometry.Point(37.61556, 55.75222),            new OpenLayers.Geometry.Point(45, 33),            new OpenLayers.Geometry.Point(49, 35),            new OpenLayers.Geometry.Point(45, 56),            new OpenLayers.Geometry.Point(49, 87)         );              var line = new OpenLayers.Geometry.LineString(points);         line.transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913"));              var style = {              strokeColor: '#0000ff',              strokeOpacity: 0.5,             strokeWidth: 5         };              var lineFeature = new OpenLayers.Feature.Vector(line, null, style);         lineLayer.addFeatures([lineFeature]);                   var popup = new OpenLayers.Popup.FramedCloud(                  "popup",                  OpenLayers.LonLat.fromString(feature.geometry.toShortString()),                  null,                  '
'+feature.data.Name + '
test.url' + '
',                  null,                  true              );              //добавление на карту          map.addPopup(popup, true);                        //создаем маркер         markers = new OpenLayers.Layer.Markers("Marcadores");         map.addLayer(markers);              if (b == 2)          {                                 //=================  =========стили для маркеров и тут хранятся координаты                 var size = new OpenLayers.Size(30, 30);                 var offset = new OpenLayers.Pixel(-(size.w / 2), -size.h);                      var location = new OpenLayers.LonLat(kor_1, kor_2).transform(new OpenLayers.Projection("EPSG:4326"), map.getProjectionObject());                 var icon = new OpenLayers.Icon('http://icons.iconarchive.com/icons/icons-land/vista-map-markers/256/Map-Marker-Ball-Pink-icon.png', size, offset);                 markers.addMarker(new OpenLayers.Marker(location, icon.clone()));                                  }               }                        function add_metka()         {             function dobavit(koor1, koor2)             {                      init(2,koor1,koor2);             }                   @foreach (Дорожное_строительство.Models.koordinats_piket picket  in ViewBag.Data)         {         <text>             dobavit(@picket.Dolgota,@picket.Shirota);                </text>         }              }              setTimeout('add_metka()', 6000)     </script>


title: How to draw a line between markers in openlayers

text: how to draw the line between markers, coordinates of markers undertake from a DB. whether it is possible to draw in general lines between markers, I saw examples only with points.                   markers = new OpenLayers.Layer.Markers("Marcadores");         map.addLayer(markers);              if (b == 2)          {                                 //=================  =========                 var size = new OpenLayers.Size(30, 30);                 var offset = new OpenLayers.Pixel(-(size.w / 2), -size.h);                      var location = new OpenLayers.LonLat(kor_1,kor_2).transform(new OpenLayers.Projection("EPSG:4326"), map.getProjectionObject());                 var icon = new OpenLayers.Icon('http://icons.iconarchive.com/icons/icons-land/vista-map-markers/256/Map-Marker-Ball-Pink-icon.png', size, offset);                 markers.addMarker(new OpenLayers.Marker(location, icon.clone()));                 var line = new OpenLayers.Geometry.LineString([kor_1, kor_2]);             //================= ==============              }


title: How to model a geodesic grid in PostGIS?

text: ## Abstract I've decided to use PostGIS for a hobby game project. It requires a lot of units allocated on the surface of a planet. I'd like to model not only the units (simple points), but also their areas of effect (vision, firing range etc.) and the planet's terrain using spatial data and queries. ## The problem I'd like to have a few sampled layers for things like the plant density. I've done a few GIS exercises on my university and observed that raster representation was most commonly used for such data. ## The proposed solution and question The problem with regular raster data is that it's best suited for smaller areas, which are almost flat, whereas I need a full sphere. I've learned about Geodesic Grid technique, which seems to fit my needs perfectly. However, I am not sure how to approach its creation and use in PostGIS. I've found this question, but it doesn't answer all of my needs. In short, what I'd like to do is to create a model (with a chosen density) and define operations that would allow me to generate (fill in) the data in it, and then sample it back with some filtering. ## Remark #1 I can imagine that some sort of clustering (variable density) models could be much more efficient in my scenario (some regions being much more important than the others, and thus needing more data). Would creating such a thing be much more difficult? ## Remark #2 The Wikipedia article outlines the icosahedron tesselation procedure. I think I could implement it, but I am wondering if there are any caveats related.


title: Converting Points to Lines in ArcGIS AND retaining attributes of both start and end points

text: I have been searching and searching and I can't find a particular solution to what I need. I have a table with animal location points. I need to calculate movement distances between points from the same animal. So I thought I would create lines from the points, which are linked by an animal ID code, then calculate the line distance of each movement - simple right? Not so! I have a table structure similar to this: FID; AnimalID; Date; UID; Weight The AnimalID field links observations from the same animal, the date is the sequential ordering field, UID is a copy of the FID so that each record has a unique ID code and Weight is a measurement of the animal at the time. Some animals were only located once (these get excluded by the creation of lines so is usually not an issue and I don't want to delete all of the single observations from the dataset every time I run this). The remaining animals are located multiple times.Of note is that some location points are identical for different individuals. I am using ArcGIS 10.0 w/ spatial analyst extn. At the end I need to have the following fields in the attribute table (or something like it): AnimalID; Date 1; Date2; Weight1; Weight2; Distance So I have looked at ETGeowizards Points to Line tool and this is a really good toolset. I specify the ID field as the AnimalID, the order field as Date and it allows me to attach the attributes of the UID field of the start and end point. It is almost what I need. HOWEVER, it creates a single polyline for each animal and I need to have different segments. While I can convert it to multipart, I lose the important attribute information (date, weight) that I can't link back to the original data. I also tried the point to line tool in Geospatial Modelling Environment (GME) which is also almost suitable. This allows me to create multipart lines with the AnimalID transferred over. However, I can't include a UID field from each point, so I can't join the specific attributes of both points over. I tried to do a spatial join (one to one). However, as I have more than 2 points that overlap with some lines, this causes incorrect attributes to be transferred. A one-to-many spatial join causes replicates of the line (as there are two points to each line), plus the erroneous ones from overlapping points from other animals. It seems a nightmare to try and extract the correct ones from this. As far as I can see, the Point to Line tool in GME is most appropriate if I could get it to copy a From_UID and a TO_UID fields over. Then I could do a join of the line layer to the original point layer -> export to shapefile -> do another join of the exported line layer with the original point layer (to get the attributes for the second point) -> export shapefile. Then I add a field -> calculate geometry for the distance calculation. FYI this is what the GME Point to Line tool does: "The tool allows a user to select a field name from the points layer to group the line segments, a field name to sort the groups (optional), and the point layer fields to be copied to the line layer. Line segments are created from two points with the same attribute in the group field. The attributes for the line segment are taken from the first point. The points DO NOT have to be sorted by group attribute and order." I have no experience writing scripts. But hopefully someone can think of a work-around! Phew - sorry that is a lot of information! Thank you all in advance!! :) Edit: Thanks, I am used to an older version of ArcGIS, so I used ET Geowizard tools first. But yes, you can do this with the ArcGIS toolset Point to Lines tool. But still can't retain attributes or a to_ and from_ field. Any more suggestions??


title: Openlayers Animation Examples and Algorithms

text: i wonder for a long time if people in this community uses openlayers for animation needs. we have know this that animating on browser is a little bit exhausting for it but when a map meets with animation, I believe that good things will be out. Do you know some good websites or algorithms for animation compatible with openlayers? these are what I know about animation, some codes and examples. pls share your knowledge about animation with openlayers for people who needs this... # The basic javascript code for adding features on map with time delay..                time = 0;         for (var i = 0; i < 5; i++) {             time += 1000;             setTimeout(function(j) {                 return function() {                     console.log("var is now", j);                 }             }(i), time);         }      # i2maps is a geocomputing environment. It provides a flexible programming framework for knowledge discovery from spatio-temporal data and web-oriented visualisation. The Javascript library is used for building the interactive user-interface, and is built on top of OpenLayers. ![i2map](http://i.stack.imgur.com/jG9HO.png) # OpenLayers Timeline is a simple library to create a time related map with OpenLayers. It supports cluster strategy (OpenLayers.Strategy.Cluster) and time filtering. Currently it supports source data in GeoJSON or GeoRSS format. ![timelien](http://i.stack.imgur.com/um5dJ.png) # Timemap.js is a Javascript library to help use online maps, including Google, OpenLayers, and Bing, with a SIMILE timeline. The library allows you to load one or more datasets in JSON, KML, or GeoRSS onto both a map and a timeline simultaneously. By default, only items in the visible range of the timeline are displayed on the map. ![timemap](http://i.stack.imgur.com/JYbo3.png) # Bike Share Map Data is updated automatically every 2-20 minutes from the provider's website. Bike usage is simultaneous usage and includes cycle redistribution. Actual total usage across the day may be much higher. Distribution imbalance - the number of cycles that would need to be moved to a different stand, in order for all stands to be the same % full. Higher numbers indicate a more unbalanced distribution, e.g. many bikes in the centre, few on the edge. This website may be subject to interruption. Data: Provider's website. Map data: OpenStreetMap contributors, including OS Open Data. Hosting: UCL. Powered by Mapnik and OpenLayers. ![bikeshare](http://i.stack.imgur.com/da87g.png) # RaphaëlJS and OpenLayers Integration. RaphaëlJS is a small JavaScript library that should simplify your work with vector graphics on the web. If you want to create your own specific chart or image crop and rotate widget, for example, you can achieve it simply and easily with this library. ![raphael](http://i.stack.imgur.com/eey5t.png) # OpenLayers Filter Strategy This example uses a filter strategy to limit the features that are passed to a layer. Features bound for this layer have a when attribute with date values. A filter strategy is constructed with a between filter that limits the span of dates shown. A simple animation cycles through the domain of the when values, calling setFilter on the strategy with an updated filter. ![filter](http://i.stack.imgur.com/SABPw.png)


title: Openlayers and Geoserver fail to reproject while editing Vector with WFS-T

text: I can't get the Openlayers and Geoserver work with WFS-T editing a vector layer. I have a layer of points where the Native SRS is EPSG:32639. After trying a lot of combinations, I ended up with two not working solutions. 1) a. On the server I set 'Declared SRS' to EPSG:32639 and make SRS hadling 'Force declared'. b. In Openlayers i set projection: new OpenLayers.Projection("EPSG:32639") for the layer. it submits               <gml:Point xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:4326"<gml:coordinates decimal="." cs="," ts=" ">241602.05063766203,4958072.672210057</gml:coordinates>      and gets 'PointOutsideEnvelopeException: 241602.05063766203 outside of (-180.0,180.0)' 2) a. On the server I set 'Declared SRS' to EPSG:4326 and make SRS hadling 'Reproject native to declared'. b. In Openlayers i set projection: new OpenLayers.Projection("EPSG:4326") for the layer. it successfully commits my changes to the database, but the coordinates in the database are wrong - degrees as for 4326 instead of meters of 32639. The Firebug shows that it submits degrees. I have proj4js enabled on the client side. Any other combination including playing with 'displayProjection' of the map leads to not even displaying the points of my layer on the map. Seems like Openlayers tells projection 4326 all the time AND the geoserver is unable to reproject the coordinates when receiving them from the client. On the server, I tried unsetting Services / WFS / GML2 / Override GML Attributes checkbox with no success. I am in a dead end, please help. Some code snippets:                       Proj4js.defs["EPSG:32639"] = "+proj=utm +zone=39 +ellps=WGS84 +datum=WGS84 +units=m +no_defs";                           new OpenLayers.Layer.Vector('Wells', {                     isBaseLayer: false,                     defaultLabelField: 'NAME',                     strategies: [new OpenLayers.Strategy.BBOX(), config.saveStrategy],                     protocol: new OpenLayers.Protocol.WFS({                         url: config.vectorWfs,                         featureType: "Wells_PRS",                         featureNS: "http://gisxxxx",                         geometryName: "GEOM"                     }),                     schema: config.vectorWfs + "/DescribeFeatureType?version=1.1.0&typename=gisxxxx:Wells_PRS"                     //,projection: new OpenLayers.Projection("EPSG:4326")                     ,version: "1.1.0"                     ,projection: new OpenLayers.Projection("EPSG:32639")                 }),                                                     th.map = new OpenLayers.Map(th.body.dom.id, {                     controls: [                         new OpenLayers.Control.Navigation(),                         new OpenLayers.Control.PanZoom(),                         new OpenLayers.Control.LayerSwitcher(),                         new OpenLayers.Control.ArgParser(),                         new OpenLayers.Control.Attribution()                         ,                         new OpenLayers.Control.MousePosition(                             {div:document.getElementById("coordinates")})                      ],                     layers: layers                     //, displayProjection: new OpenLayers.Projection("EPSG:4326")                     //projection: new OpenLayers.Projection("EPSG:4326")                 });                      var editingBar = new OpenLayers.Control.EditingToolbar(layers[2]);                 var save = new OpenLayers.Control.Button({                     title: "Save Changes",                     trigger: function() {                         //if(edit.feature) {                         //    edit.selectControl.unselectAll();                         //}                         config.saveStrategy.save();                     // alert('saved');                     }//,                     //displayClass: "olControlSaveFeatures"                 });                 editingBar.addControls([                     save,                      new config.DeleteFeature(layers[2], {title: "Delete Feature"})                 ]);                 th.map.addControl(editingBar);      This all done reading this link: http://www.gistutor.com/openlayers/22-advanced-openlayers- tutorials/47-openlayers-wfs-t-using-a-geoserver-hosted-postgis-layer.html


title: Get a point on a polyline from end points given distance along poly line

text: I have start point and end point of a polyline. How can I get a point on that polyline from end points specified by the given distance. ![enter image description here](http://i.stack.imgur.com/z6UJN.png) How can I get this by using arcpy provided that this script should work on ArcView without importing any modules (Like this answer). I'm trying not to hard code values. Related Question:   * How to create a point along a line given distance   * How to interpolate points along a line in Python for ArcGIS 9.3?


title: Is there a faster way to get unique values for a given FeatureClass in ArcObject?

text: I'm trying to count rows by unique values for a given FeatureClass. I'm using DataStatistics to get the unique values for a specific column for a given FeatureClass. This seems to be (very) slow with big shapefiles (> 200k of features) - is there a faster way to determine unique values? The second step of the process (using QueryFilter in combination with FeatureClass.FeatureCount()) seems fast enough although I would be glad if im pointed to a better solution.               public static Dictionary<string, int> CountUniquesStatistic(ITable table, string fldName)     {         Dictionary<string, int> uniqueValuesDictionary = new Dictionary<string, int>(StringComparer.CurrentCultureIgnoreCase);              DataStatistics dataStatistics = new DataStatistics();         dataStatistics.Field = fldName;         dataStatistics.Cursor = table.Search(null, false);              IEnumerator uniqueValues = dataStatistics.UniqueValues;              while (uniqueValues.MoveNext())         {             object current = uniqueValues.Current;             uniqueValuesDictionary[current.ToString()] = 0;         }              foreach (string key in uniqueValuesDictionary.Keys.ToList())         {             IQueryFilter queryFilter = new QueryFilter();             queryFilter.WhereClause = string.Format("{0} = '{1}'", fldName, key);                  uniqueValuesDictionary[key] = table.RowCount(queryFilter);         }              return uniqueValuesDictionary;     }


title: GeoWebCache blank tiles

text: I´m new with GWC and I´m trying to cache this WMS server 1. I can see layer list from this server on "A list of all the layers and automatic demos" but whe I select one png from any layer I only see blank tiles. What I´m doing wrong? Thanks in advance.


title: Merging polygons at county level to state level

text: I have a shapefile that represents counties (admin 2) only, but I need to create a state level (admin 1) polygon file (I'm using QGIS). I will need to sum up (or average) the relevant data at each district level as well. There are far too many counties to do this manually, so does anyone know of an automated way to roll up to a higher administrative level like this? Kinda new to all of this, so any help would be greatly appreciated. Thanks!   -Sean


title: Moveable ESRI / ArcGIS Identify Popup Window (Dojo)

text: I'm trying to get a popup window that identifies a location to be moveable. My code is similar to the API example:               var popupOptions = {         fillSymbol: new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_SOLID,                     new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID,                     new dojo.Color([255, 0, 0]), 2),                     new dojo.Color([255, 255, 0, 0.25]))     }          var popup = new esri.dijit.Popup(popupOptions, dojo.create("div"));          map = new esri.Map("map", {         infoWindow:popup,         extent: initExtent     });      I can't seem to find anywhere that will allow me to make that popup infowindow moveable (was thinking of trying to implement dojo.dnd.moveable). I've tried, unsucessfully:               function makeMoveable(node){         var dnd = new dojo.dnd.Moveable(dojo.byId(node));     }     makeMoveable(popup);      Anyone have a suggestion?


title: Help me with this code from GeoExt and OpenLayers

text: I haven't gone entirely through GeoExt. But I am trying to understand the below code, but I am struck. The below code is about creating popups of feature information. But the layers added are WMS Layers, How can a WMS layer contain feature information. It is not a vector layer.                    <script>             OpenLayers.ImgPath = "../../resources/openlayers/img/";                  // the `panel` and `popup` variables are declared here for easy debugging             var panel, popup;                  Ext.onReady(function() {                      // queryable WMS layer                 var zoning = new OpenLayers.Layer.WMS(                     "Medford Zoning",                     "/geoserver/wms",                     {layers: "medford:zoning", format: "image/gif", transparent: "true"}                 );                      panel = new GeoExt.MapPanel({                     title: "MapPanel",                     renderTo: "map-id",                     height: 300,                     width: "100%",                     layers: [                         new OpenLayers.Layer.WMS(                             "Global Imagery",                             "http://maps.opengeo.org/geowebcache/service/wms",                             {layers: "openstreetmap", format: "image/png"}                         ),                         zoning                     ],                     center: [-122.87, 42.34],                     zoom: 13                 });                      // create a control to get feature info from queryable layers                 var control = new OpenLayers.Control.WMSGetFeatureInfo({                     url: "/geoserver/wms"                 });                 panel.map.addControl(control);                 control.activate();                      // register a listener for the getfeatureinfo event on the control                 control.events.on({                     getfeatureinfo: function(event) {                         // close existing popup                         if (popup) {                             popup.destroy();                         }                         popup = new GeoExt.Popup({                             title: "Popup",                             map: panel.map,                             lonlat: panel.map.getLonLatFromPixel(event.xy),                             width: 250,                             autoScroll: true,                             collapsible: true,                             bodyStyle: {padding: 5},                             html: event.text                         });                         popup.show();                     }                 });                  });              </script>      The map is like this : ![enter image description here](http://i.stack.imgur.com/Temfp.png) ## UPDATE I changed the zoning layer to some other WMS layer in GeoServer. Now I can load the layer and everything else except that when I click, popup button opens but feature information is not coming. I found in GeoServer documentation that there is GetFeature request availability for WMS layers. But there are some settings to be changed and I couldn't understand those. Please help changing those settings so that popup can show the feature information of the layer i.e., GetFeature request is accessible. ## UPDATE This is that GeoServer manual link where I read about WMS settings: http://docs.geoserver.org/stable/en/user/webadmin/data/layers.html ## UPDATE Found it! We should use proxy settings for features unlike normal layers. So I should replace the URL with protocol and formats.


title: How to add Oracle database connection to AnalyzeforMSD script?

text: I use this script right now:               import os, arcpy          directory = r"C:\Project"      for root, dirs, files in os.walk(directory):       for myFile in files:         fileExt = os.path.splitext(myFile)[1]         if (fileExt == ".mxd"):             fullPath = os.path.join(root, myFile)             print myFile                  myMap = arcpy.mapping.MapDocument(fullPath)             analysis = arcpy.mapping.AnalyzeForMSD(myMap)          for key in ('messages', 'warnings', 'errors'):     print "----" + key.upper() + "---"     vars = analysis[key]     for ((message, code), layerlist) in vars.iteritems():     print "    ", message, " (CODE %i)" % code     print "       applies to:",     for layer in layerlist:     print layer.name,     print      It runs on many project mxds. And every time it analyzes a mxd file I`m asked the connection dialogue and have to enter the connection details. Is there a way to open a database connection that is valid for all mxd? Thanks, Trashken


title: PostGIS error reads "Geometry has Z dimension but column does not"

text: I try to store a polygon in GeoJSON format into my PostGIS table. Both are using the CRS `EPSG:3857`. This is how the polygon is defined. Note that I put in some whitespace to make it more readable.               {         "type":"Polygon",         "coordinates":[             [-91.23046875,45.460130637921],             [-79.8046875,49.837982453085],             [-69.08203125,43.452918893555],             [-88.2421875,32.694865977875],             [-91.23046875,45.460130637921]         ],         "crs":{"type":"name","properties":{"name":"EPSG:3857"}}     }      To store that in my database I use the following SQL query.               INSERT INTO tablename (name, polygon)     VALUES ('name', ST_GeomFromGeoJSON('GeoJSON string comes here...'))      But for some reason the above query throws an error.               ERROR:  Geometry has Z dimension but column does not      What is wrong in my attempt?


title: Display Shapefile on website (Java or PHP)

text: i have to write an application where similar to Google Maps where i have to display a shapefile in a web application. My available technologies are Java (frontend framework: Apache Wicket) or PHP. It has to work under Firefox 4+ and IE8+ What are my options? I have found a JS library: http://badassjs.com/post/845509816/rendering- binary-shapefiles-with-javascript But it does not seem to work under IE8. I have read about Web Map Service (WMS). That seems to do the job but requires setting up another server. I could probably live with that. Are there any other options? What are the best options?


title: cut fill arcgis 10.1 doesn't works

text: hello i have a problem with arcgis 10.1 : i have tow TIN and i want to execute Cut Fill (3D Analyst) tool :   * Data : ![data ](http://i.stack.imgur.com/1uHOV.jpg)   * adding data to arc scene : ![enter image description here](http://i.stack.imgur.com/eatBH.jpg) ![enter image description here](http://i.stack.imgur.com/AJTeI.jpg)   * tool : ![enter image description here](http://i.stack.imgur.com/3o3vj.jpg)   * Result : Problem  ![enter image description here](http://i.stack.imgur.com/4uLyd.jpg)   * i did the same thing in arcgis 9.3 and it's works , i didn't know where is the problem can somebody help !!


title: Invert axis orientation in QGIS

text: I'm loading two WMS layers served from GeoServer with declared srs EPSG:4326 in QGIS 2.0 in EPSG:4326. The two layers displays correctly when I zoom in to Sweden. If I display the two layers in EPSG:3006 (SWEREF99 TM) the layers don't display corectly when I zoom in. If I check the "Invert axis orientation" checkbox and reload the layers they displays correctly when I zoom. In QGIS 1.8 (the checkbox doesn't exist) it works great in both cases. QGIS 2.0 and 1.8 use WMS version 1.3.0 as default in GetMap requests, as in this case. Why does it work lilke this in 2.0?


title: How to use the local macro to do ZonalStatisticsAsTable in batch

text: I have a series of files named as 'rawfile200101', 'rawfiles200102',...,'rawfile201104'. I want to do ZonalStatisticsAsTable for each of them with names corresponding to the time of the raw files, such as 'newfile200101', 'newfiles200102',...,'newfile201104'. I know how to script it for individal file, but I am trying to do it in batch. I wrote the following codes for four files, it is always shown error that "I:/rawfile%list%.tif" does not exist.               import arcpy     from arcpy import env     from arcpy.sa import *     arcpy.CheckOutExtension("Spatial")          yrmn = ['200101', '200102', '200103', '200104']          for list in yrmn:         outZSaT = ZonalStatisticsAsTable("I:/boundaries", "ID", "I:/rawfile%list%.tif", "I:/newfile%list%.dbf", "DATA", "SUM")


title: What free or open source cloud-based software is recommended by/for the GIS community?

text: _Note: This question is intended to complement anearlier question on installed, desktop software._ What GIS-related, or even non-GIS-specific, web- or cloud-based software/tools/services -- that are free -- do you find useful, whether for GIS development or application? For example, I'm finding that **Google Docs** (aka, Google Drive) increasingly useful for general productivity and **Google Maps** is always useful as an street atlas or as a globe. A specialized example is **Q-Cogo**, useful for coordinate geometry.


title: how to create grid to divide large map into smaller sections

text: This seems like it should be easy but I just can't find anything online that tells me how to do it. I have a map of small remnants of forest along creeks for an entire county in California. I need to divide the whole map into equal sections so I can print it so you can actually see the sections of forest. I'd like a map with a grid which I can look at, and then look at a zoomed in map of (for example) section A1. I've tried the Grids and Graticules wizard, which gives me a grid for the map, but when I zoom, the grid remains the same. I want the grid sections to be georeferenced with the map, so when I zoom in, the grid zooms also. I'm using Arcmap 10.1. Please help! Thank you!


title: Leader lines not rendering when converted to PDF

text: This is very puzzling, I have an annotation feature class stored in a geodatabase that contains labels with leader lines. The leader lines show up perfectly in the .mxd, it is only when I export to PDF that there is intermittent rendering of the leader lines. The puzzling part is that it works for some leader lines and not for others. The actually text of the annotation shows up in every single instance. A portion of the leader line stemming from the text shows up in every instance as well, it is only whether or not the leader line is completed that seems to be the symptom. Please let me know if you need anymore info to help diagnose the problem. Here is an example of the leader line on the left not being completed and the leader line on the right rendering correctly: ![enter image description here](http://i.stack.imgur.com/NFJOy.jpg)


title: How can I label each gridsquare in an MGRS grid individually?

text: I want to be able to generate an MGRS grid of arbitrary resolution (say, 1km or 100m) and have each grid square individually labeled with its full MGRS coordinate. This was easy enough to do with the 1km MGRS grid shapefiles available from NGA.mil, but I'm not sure how to do it in ArcMap itself. The MGRS data frame grids don't seem flexible enough, as they apparently only support axis or ladder labeling. I tried the Make Grids and Graticules toolbox with a custom XML from the Production Mapping extension but it didn't seem capable of doing it either. I can make a grid of Points at the desired resolution, but any Annotation I add under them is only capable of labeling north-south or east-west (so the same easting or northing will be repeated everywhere), so it seems this is only intended for ladder labeling.


title: Volume of Land Below Sea Level

text: How could one use a GIS (or other appropriate system) to calculate the change in mean ocean levels across the world if all the land below sea level were flooded (Death Valley, Caspian Depression, Afar Depression for example)?


title: Unable to connect to arcgis server local

text: I have ArcGIS Server 10.1 installed and running , and published the services its worked , and setup & Configuration Web Adaptor when i go the ArcGIS Web Applications for the Microsoft .NET Framework to create new web i cannot add arcgis server local when i type the host machine Name or "localhost" this message showing Error: Unable to connect to server what i can do please ![enter image description here](http://i.stack.imgur.com/BZnjM.png) ![enter image description here](http://i.stack.imgur.com/RSgKN.png) ![enter image description here](http://i.stack.imgur.com/KEUcu.png)


title: gdal2tiles doesn't use resampling method correct?

text: I'm using gdal2tiles to create tiles from MODIS satellite imagery (250 m resolution) and I have noticed that I get the same bad result if I use `-r near` or `-r bilinear` (or lanczos for that matter). See attached image. ![gdal2tiles generated tile](http://i.stack.imgur.com/gvXLp.jpg) If I do the same generating with Mapnik and generate_tiles.py the images looks so much better. ![Mapnik generated tile](http://i.stack.imgur.com/z2ZbL.jpg) The source file has a smaller resolution than the output tile, but I guess that's what the resampling bilinear (or lanczos) should "take care of"? Now it seems like gdal2tiles only scales the image without adding any resampling method? I've tried to generate the tiles from geotiffs and jpegs (with jgw) but it's all the same. The reason I want to use gdal2tiles rather than generate_tiles.py with Mapnik is that gdal2tiles are so much faster. Look here: The fastest way of generating tiles from raster?


title: Retaining Older Features with OpenLayers BBox Strategy

text: To limit the number of features requested, I have used OpenLayers BBox Strategy with ratio of 0.5. The problem is, when I pan the map a new set of features are displayed and the older features are removed. Is there any way to keep those older features when new features are requested?


title: CartoCSS: Don't show border between adjacent polygons

text: In OSM, riverbeds are created as multiple adjacent or even overlapping polygons. When styling these polygons in CartoCSS with a border, the overlapping can be seen: ![screenshot river with overlapping polygons](http://i.stack.imgur.com/OS0gu.png) I'd like to hide that line through the river. I guess that can be done either by merging the polygons, or by hiding the line between adjacent polygons. Is that possible with CartoCSS / TileMill?


title: adding non spatial attributes using geoserver

text: I am using Openlayers + geoext to perform transaction operations in postgis database using geoserver . i can insert spatial data into postgis but cannot insert other data like road name, road type in my road database. the openlayers generates this code during transaction               <wfs:Transaction xmlns:wfs="http://www.opengis.net/wfs"      service="WFS"      version="1.1.0"      xsi:schemaLocation="http://www.opengis.net/wfs      http://schemas.opengis.net/wfs/1.1.0/wfs.xsd"      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">       <wfs:Insert>     <feature:Complaint xmlns:feature="http://geoserver/postgis">       <feature:geom>         <gml:MultiCurve          xmlns:gml="http://www.opengis.net/gml"          srsName="EPSG:4326">           <gml:curveMember>             <gml:LineString>               <gml:posList>85.292019896027 27.722567213659 85.303131631935 27.72224973549 85.303290371019 27.72478956084               </gml:posList>             </gml:LineString>           </gml:curveMember>         </gml:MultiCurve>        </feature:geom>       </feature:Complaint>      </wfs:Insert>     </wfs:Transaction>      in geoserver demo i add fid and id so that it looks as               <wfs:Transaction xmlns:wfs="http://www.opengis.net/wfs"      service="WFS"      version="1.1.0"      xsi:schemaLocation="http://www.opengis.net/wfs      http://schemas.opengis.net/wfs/1.1.0/wfs.xsd"      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">       <wfs:Insert>     <feature:Complaint xmlns:feature="http://geoserver/postgis">       <feature:geom>         <gml:MultiCurve          xmlns:gml="http://www.opengis.net/gml"          srsName="EPSG:4326">           <gml:curveMember>             <gml:LineString>               <gml:posList>85.292019896027 27.722567213659 85.303131631935 27.72224973549 85.303290371019 27.72478956084               </gml:posList>             </gml:LineString>           </gml:curveMember>         </gml:MultiCurve>        </feature:geom>      **<id>650</id>           <fid>400</fid>**       </feature:Complaint>      </wfs:Insert>     </wfs:Transaction>      and i get what i want. my question is how can i post the 2nd request (with id and fid) instead of first using openlayers and/or geoext?


title: How to deal with direction in pgr_ksp (K shortest path)?

text: I am working on a android app for navigation with PostGIS and pgrouting. I have implemented pgr_dijkstra and its working fine. I am not considering direction in routing at this point and just want routes from my source to destination. I am facing a problem when I am implementing k-shortest path (pgr_ksp) for finding alternative paths from source to destination. I guess pgr_ksp always consider direction when calculating the route. So when I give it a particular source and target value in the query, its gives me nothing and the reason behind this is at some point on the route between that source and target, some road segments share starting or ending point, that is why it cant generate route. Kindly tell me if there is any possibility that direction not considered here just like dijkstra ![enter image description here](http://i.stack.imgur.com/k9SZx.png) In this picture A is my source, B is my destination. Ignoring the direction of travel, ksp should give me shortest path i.e. node 1, 2, 5, 6 But it is giving me 1, 2, 3, 4, 5, 6 which is not shortest path. startpoint and endpoint is also mentioned here with their road segment color Kindly suggest me a solution. Thanks in advance


title: Reducing a 100Km OS Map to usable size

text: I have downloaded a 100Km map from OS, but the problem is that it is far larger than I need and hence takes a long time to load every refresh in QGIS. Is there a way to cut down the size of the accompanying shape files to a more manageable size of, say, 10Km square?


title: How to use st_geometry functions inside query statements in ADO.net?

text: I have ArcSDE 10 and Oracle 11g installed on my Windows server 2003. And i am trying to query tables having st_geoemtry columns.and i have got the results when i am querying from SQL Developer, and queries are working fine. But when i am trying to access and filling into DataSet in c# using ADO.NET it is throwing exception like "Un supported data format" for st_geometry column. Actually my main objective is querying oracle (ArcSDE) using C#. If any body have any idea over this please share with me or at least some suggestions. Thanks and Regards SRI


title: Replacing PyQt4 with PySide with standalone QGIS

text: I would like to develop an application using the QGIS libraries and PySide instead of PyQt4 due to more flexible licencing, I wonder if this is possible. I downloaded PySide and replaced my references to PyQt4 in an existing program, and it throws this error immediately:               Traceback (most recent call last):       File "E:\me\myapp\myapp.py", line 8, in <module>         from qgis import core       File "C:\OSGeo4W64\apps\qgis\python\qgis\__init__.py", line 36, in <module>         from qgis.core import QgsFeature, QgsGeometry       File "C:\OSGeo4W64\apps\qgis\python\qgis\core\__init__.py", line 1, in <module>         from qgis._core import *     ImportError: DLL load failed: The specified procedure could not be found.      This error does not appear when I use PyQt4 instead of PySide. I'd like to know if I'm flogging a dead horse with this - I don't have the time or knowledge to contribute any changes to QGIS source code to accommodate PySide (if that's what it requires). I found the only other reference to this here but with no answers.


title: QgsMarkerSymbolLayerV2 not rendering

text: For the life of me I cannot get a custom vector layer symbol to render. Following is the code I am using, as fas as I can tell renderPoint is never called. Is there something I am missing here. The layer is added to the mapcanvas is another part of the program, if I make the layer symbol something standard it renders a normal marker. The intention is to render a little ship symbol that stays the correct size when you zoom in and out on the map. I know in the pat I have seen GPS tracking plugins that scale but cannot find them anymore.               class shipLayerC(object):     def __init__(self):         self.layer =  QgsVectorLayer("point", "ship" , "memory")         self.pr = self.layer.dataProvider()              # set the layer symbol         #rendererV2 = self.layer.rendererV2()         registry = QgsSymbolLayerV2Registry.instance()         registry.addSymbolLayerType(shipSymbolLayerMetadata())              layerSymbol = registry.symbolLayerMetadata("ShipMarker").createSymbolLayer({'width' : 100, 'length' : 100})         self.layer.rendererV2().symbols()[0].changeSymbolLayer(0, layerSymbol)              self.ship = QgsFeature()         self.ship.setGeometry(QgsGeometry.fromPoint(QgsPoint(152.092212561092,-23.5074821434718)))         (res, self.shipId) = self.pr.addFeatures([self.ship])              self.layer.commitChanges()         self.layer.updateExtents()              QgsMapLayerRegistry.instance().addMapLayer(self.layer)         self.layer.triggerRepaint()                    def position(self, lat, lon):         # change the position of the symbol         geom = QgsGeometry.fromPoint(QgsPoint(lat,lon))         self.pr.changeGeometryValues({ self.shipId[0] : geom })         self.layer.triggerRepaint()               def heading(self, h):         # change the heading of the symbol         print h      class shipSymbolLayer(QgsMarkerSymbolLayerV2):               def __init__(self, width, length):         QgsMarkerSymbolLayerV2.__init__(self)         self.color = QtGui.QColor(255,0,0)         self.width = width         self.length = length          def layerType(self):         return "ShipMarker"          def properties(self):         return { "width" : str(self.width), 'length' : str(self.length)}          def startRender(self, context):         print 'start render'         pass          def stopRender(self, context):         print 'stop render'         pass          def renderPoint(self, point, context):         color = self.color         p = context.renderContext().painter()         p.setPen(color)         p.drawEllipse(point, self.width, self.length)         print 'draw'          def clone(self):         return shipSymbolLayer(self.width, self.length)      class shipSymbolLayerMetadata(QgsSymbolLayerV2AbstractMetadata):               def __init__(self):         QgsSymbolLayerV2AbstractMetadata.__init__(self, "ShipMarker", "ShipMarker", QgsSymbolV2.Marker)          def createSymbolLayer(self, props):         width = float(props[QString("width")]) if QtCore.QString("width") in props else 10.0         length = float(props[QString("length")]) if QtCore.QString("length") in props else 30.0         return shipSymbolLayer(width, length)


title: How do I filter the layers that show for my input feature layer parameter for a custom tool?

text: When creating a custom tool using a Python script, is there a way to only show layers that, for example, contain a certain word? For the drop down of the input polygon feature, I only want layers to show that have the word boundary in them. Is this possible, or does it just automatically show all layers in the document? Here's a screenshot of what I'm talking about: ![enter image description here](http://i.stack.imgur.com/F0hkS.png) It's a bad example because it only shows one layer, but image lots, and lots of layers.


title: Is it possible to change the name of a Stamen basemap in OpenLayers?

text: I'm adding a Stamen basemap to OpenLayers using the syntax below. Is it possible to change the layer's name, so that it appears in the Layer Switcher using this name (rather than "toner")? The OpenLayers layer.setName method doesn't seem to work. Thanks                             <title>tile.stamen.com: OpenLayers</title>


title: Converting unknown type of coordinates to lat/lon

text: Our company is using Total Station (Surveying Machine using SOP) to calculate GPS coordinates and its results are something like this               Easting: 3250193.00, Northing: 1115573.00, Elevation: 656.00     Easting: 3249214.00, Northing: 1111220.00, Elevation: 735.00     ...      I want to convert these points to decimal based lat/lon (so that can map those points to google maps). Can someone help me out in converting these points? The above points are somewhere near to Muzaffarabad, Azad Kashmir. (Some where near to 34.3629, 73.4775)


title: How to make river lines intact between confluences in QGIS？

text: I got a river shapefile below, ![enter image description here](http://i.stack.imgur.com/ezHxw.png) and I found that there are many fragmental lines in this line shapefile, like, ![enter image description here](http://i.stack.imgur.com/erKfX.png) and, ![enter image description here](http://i.stack.imgur.com/Cjqdu.png) Most of these are located around the confluence(node), and how can I do to efficiently merge them into the nearby large line object, making whole shapefile containing only intact line segments between confluences(nodes)？


title: How to format street network data for network analysis?

text: How do I create a good street network for network analysis? How should I format the street data to import it into Network Analyst, including prefixes, directions, intersections, and geocoding addresses?


title: where to host private cartodb/leaflet web app

text: I am looking for opinions on where to host my cartodb/leaflet map site. It needs to be private with authorized users and have a document management system. So, I was thinking sharepoint online 2013 so I can use a sharepoint subsite to view the map and take advantage of the document management and sharing as well as their tasks and calendar parts. Or I could use google app engine to host the map site and google apps for business to handle the document management, email, calendar, tasks... Both of these paths are pretty pricey to share the map and docs with 15-60 users. Is putting this site in the cloud on google app engine or amazon cloud overkill for such a small app? will sharepoint online 2013 be able to handle this app with 15-60 users? is there a better option out there like website hosting from godaddy and huddle for doc management? Please let me know if you have any advice. Thanks


title: Getting length data from GPX files within QGIS

text: I just got a Garmin etrex and promptly took it for a hike. I can get the path and the trackpoints into QGIS with no issue. However, I cannot figure out how to get the distance between the trackpoints. I've played with the CRS and the file formats (converting to .shp for example). When I go into the attribute table and attempt to calculate a new field using $length, all I get are NULL values. Any ideas?


title: RGB Imagery Layer - Feature Extraction

text: I'm looking for information on Feature Extraction from the Ordnance Survey Mastermap Imagery Layer. This could be technical information, research papers or just sound advice from folks on this message board. I believe that the layer is just RGB. Is it possible to use IDRISI to extract features from such a layer via Segmentation, or similar? If not then can you recommend an alternative program?


title: Import DEM into PostGIS for QGIS

text: I'm a complete GIS newbie so sorry if I'm using the wrong terminology in searching for a solution to this... I'm trying to import a DEM into PostGIS and display it in QGIS. The data is from the EU-DEM and I imported into PostGIS with: `raster2pgsql -s 3035 -t 200x200 -I -d "$TIF_FILE" public.eudem | psql -d postgis` When I try to add this table to QGIS (Add PostGIS Layers...) it seems to have no geometry associated with it. The GeoTIFF file itself loads directly into QGIS fine, is georeferenced fine, and the CRS is detected correctly etc. PostGIS is set up correctly and connecting to QGIS correctly and I have vector data from shapefiles in it showing in QGIS successfully (and showing overlaid onto the raster DEM loaded when directly into QGIS). But I want to move the raster data into PostGIS. What am I missing? Thanks! **Edit:** sorry should have mentioned versions: QGIS 2.2.0-Valmiera, compiled with GDAL 1.11.0, and PostGIS 2.1.2 on Postgres 9.3.4, all built from source using homebrew on OS X.


title: Why image do not color match when many Landsat images are mosaicked in ERDAS?

text: When I try to mosaic Landsat images in ERDAS I get as result image with discordance in colors. I tried histogram matching but no success. The images were captured between March and May.


title: DN value from raster to vector tool (QGIS 2.0)

text: I am using QGIS 2.0 to convert a DEM to vectors, then create polygons of zones of slopes. However, I am unsure of in what units my new "DN" column is. It has lost of precision of z-values from my original XYZ points, and am not sure how it compares.


title: Moving a PostGIS Installation

text: I have a simple question: I have a postGIS installation running on an old computer that I'd like to move. I spent a bunch of time playing with pg_dump and pg_dumpall without success. It seems the normal dump procedures don't work with postGIS because file paths get hard coded in the output from pg_dump. Any suggestions on how to move PostGIS installation to a new installation of PostgreSQL? Thanks, SS


title: How to use drag feature in 2 layers?

text: I used the following code:               this.installDrag({layer:this.poiLayer,opt:'load',id:'poiLatlong'});     this.installDrag({layer:this.addNewPoiLayer,opt:'add',id:'poiLatlong'});      but drag is installing for only for the last layer I call. How can I apply installDrag to more than one layer?


title: Interpolation of contours (from one "main-contour-shapefile")

text: I calculated, that the best and smalest possible äquidistance (equidistant) for my map is 30m. After I generlized my DHM, I extracted contours of a intervall of 30m and smoothed them. Now I have my "main-contours". But I also want contours with 10m äquidistance (equidistant), and I need to interpolate it from my main-contours (because my DHM is not accurate enough to extract 10m-contours directly). EDIT: The 10m-contours are just for optical reasons (counting) and dont have to be accurate. The accuracy of the 30 m-contours is fine enough! Is that possible with Grass, Saga or Qgis? Thanks! Martin EDIT: The 30m-contours are accurate, (vertical error less then 15m), the 10m-contours have errors so I dont want them! :) ![enter image description here](http://i.stack.imgur.com/PDC9t.jpg)


title: Is there a standard for displaying US vs. State highways on map?

text: My question is whether anyone is aware of a standard for how State roads, US roads and interstates should be displayed on a map? Not the label, but standards for the color and width of the symbology used to display the road. Any pointers are appreciated.


title: Using shp2img and Remote Objects instead of WMS

text: I am a Flex developer that works with ESRI's REST Flex API most of the time, but have been exploring other options in the Flex world of web mapping. I have been using WebOrb's implementation of Remote Objects for other, non-spatial development and have been totally blown away by the performance gains I have seen compared with traditional web services (SOAP and even HTTP). And this has given birth to the following idea. Instead of setting up a traditional WMS with MapServer, I am toying with the idea of firing the shp2img directly via remote objects, and sending that image back to the client to be drawn on top of the map. The only drawback to this approach that I see is that it is not very interoperable, i.e., no one else can consume this data but I am not too concerned with that right now. I am comfortable with MapServer but far from a power user, so I am hoping to get some potentially valuable insights(i.e. warnings,ridicule...etc) from other MapServer experts. This idea is based on the assumption that shp2img will be faster at generating a tile than its equivalent WMS GetMap request. Any thoughts.


title: SAGA-GIS:Viewshed creation from SHP instead of interactively?

text: I am using Saga-GIS to calculate a viewshed from a single point. I can do this with the interactive module, (terrain analysis > Lighting > visibility (single point) interactive) but how do I do it from a shapefile? thanks for any tips, Robert


title: How to get the layer name?

text: I am using OpenLayers, Geoserver 2.1 CQL language. The problem is that I do not know how to address the layer. I am trying to call a function like this:                  var createWmsLayer = function(name, url, params, options) {             map.addLayer(new OpenLayers.Layer.WMS(name, url, params, options));                  };      I am creating the layer like this:               var ikke_listet = new  createWmsLayer("Ikke rødlistet",           "http://kart.naturkart.no/geoserver/wms",                     {layers: 'gbif_ns:ikke_listet',format: 'image/png',                      transparent: 'true'}, {singleTile: true, ratio: 1,                        isBaseLayer:false, visibility: false});       Then I am calling a function on the layer to redraw it with CQL params to GeoServer.               function CQLfilter(param){             filter_list = []              filter_list.append("collector LIKE '%H%' ")             ikke_listet.mergeNewParams({'CQL_FILTER': "collector LIKE '%H%' "})      But I get this error in Firebug:               ikke_listet is not defined      So my question is: **What is the name of my layer?** I am using the "name" part of my function to write out some styles for the layerlist (I use ExtJS) and put a padding and different icons in the layerlist to show what icons represent which layer. Is this a wrong way to do this styling? Any suggestions as to what I use in the function to add CQL call to the layer and redraw it? Aragon, I was able to get the layername from your suggestion of the layer array:               function CQLfilter(param){     var mLayers = map.layers;     mLayers[9].mergeNewParams({'CQL_FILTER': "collector LIKE '%H%' "})     // This gave me the names of the layers     // for(var a = 0; a < mLayers.length; a++ ){     //    alert(mLayers[a].name + '#' + a + '#')     //};      }      So I wonder if there is another way to style my layer list because now I get the layernames like this: `"<span class='lc'>Ikke rødlistet</span>"`. But of course I can still get to the layer by referencing the layer array position. I managed to run the function now and it filters correctly. I only had to ignore the first base 4 layers and I have to find out how to collect the values from the search form. But manually this code now works and I have much progress :-)               function CQLfilter(param){     var mLayers = map.layers;     // have to get the search by document.getElementById or jQuery I guess. Testing manually now     var search = "kingdom LIKE '%Plantae%' ";     for(var a = 4; a < (mLayers.length); a++ ){         alert(mLayers[a].name + '#' + a + '#')         mLayers[a].mergeNewParams({'CQL_FILTER': search})     };      }      Hi again, I am able to get the layer now. Works fine with this function on the CQL filter and the reset filter function at the end.               function CQLfilter(sok,cat){     var mLayers = map.layers;     switch (cat)     {     case 'SN':        param = "scientificname LIKE '%"+ sok + "%' ";       break;     case 'NNG':        param = "norsknavngruppe LIKE '%"+ sok + "%' ";       break;     case 'NNA':        param = "norsknavnart LIKE '%"+ sok + "%' ";       break;     case 'PROJ':        param2 = new Array()        param2.push("prosjektnummer LIKE '%" + sok + "%'")        param2.push("prosjektnavn LIKE '%" + sok + "%'")        param = param2.join(" OR ");       break;       default:        param2 = new Array()        param2.push("scientificname LIKE '%" + sok + "%'")        param2.push("norsknavngruppe LIKE '%" + sok + "%'")        param2.push("norsknavnart LIKE '%" + sok + "%'")        param2.push("collector LIKE '%" + sok + "%'")        param = param2.join(" OR ");       break;     }     for(var a = 4; a < (mLayers.length); a++ ){         mLayers[a].mergeNewParams({'CQL_FILTER': param});         mLayers[a].setVisibility(true);     }}     function resetCQLfilters() {         var mLayers = map.layers;         for(var a = 4; a < (mLayers.length); a++ ){         delete mLayers[a].params.CQL_FILTER;         mLayers[a].redraw();     }}


title: libnetcdf.so.4 error while installing qgis 1.6.0

text: I am trying to install Quantum GIS 1.6.0 from source on Ubuntu 10.10 64-bit OS. I have GRASS GIS 6.4.1svn installed on the machine. When I run 'make' I get the following error:               [ 34%] Built target qgis_analysis     Linking CXX executable qgis     /usr/bin/ld: warning: libnetcdf.so.4, needed by /usr/local/lib/libgdal.so, not found (try using -rpath or -rpath-link)     /usr/local/lib/libgdal.so: undefined reference to `nc_inq_vartype'     /usr/local/lib/libgdal.so: undefined reference to `nc_put_att_double'     /usr/local/lib/libgdal.so: undefined reference to `nc_strerror'     /usr/local/lib/libgdal.so: undefined reference to `nc_get_vara_uchar'     .     .     .     .     /usr/local/lib/libgdal.so: undefined reference to `nc_inq_varname'     /usr/local/lib/libgdal.so: undefined reference to `nc_open'     collect2: ld returned 1 exit status     make[2]: *** [src/app/qgis] Error 1     make[1]: *** [src/app/CMakeFiles/qgis.dir/all] Error 2     make: *** [all] Error 2      I am not able to solve it. Tried installing libnetcdf-dev and libnetcdf6 packages but it was of no help!


title: Compare two Digital Elevation Model (DEM)

text: I would like to know what's the best method(s) to compare two DEMs without using any GUI soft like QGIS or ArcGIS.   I'd like to do it in Python or C++, with GDAL or other similar lib.   Does calculating the RMSE (Root mean square error/deviation) is useful?   How to proceed to subtract DEM1 from DEM2? And I should find a flat result, right? Is their other ways?   Because reading for each coordinate the elevation `z` and compare it with the other DEM is a bit heavy I think. Thanks for help,   eo


title: Remove Points that Overlay

text: I have a pointlayer and some points overlay and i want to remove them, so that only one point remains. the points that overlay have the same coordinates


title: How to find the buildings (polygons) a user can see from a given location (point) and orientation (angle range)?

text: I would like to retrieve the set of buildings I can see from a given location (point -lat,lng) and orientation (interval of angles) + certainly with a given depth (e.g. 100 meters). Ideally I would like as output something like: from angle 1 to angle2 the user can see building 1, from angle 2 to angle3 we see building 2. **Data =** Polygons representing the buildings of a city in shapefile. **input:** a location and an orientation (angle range) to represent the visual perception of a person. **output** :   Version 1 - a list of {BuildingID}   Version 2 (better)- list of {BuildingID, set of visible segments for each building (facade of buildings)}   Version 3 (ideal output) - a list of {buildingID, angle ranges}. (for exemple , from angle 1 to angle2 the user can see building 1, from angle 2 to angle3 we see building 2, etc..) **Toolbox** I can use: PostGis, QGis, ruby, R **start of solution for output v1:**   - creating a triangle representing the simplified visual scope of the user for a given point and orientation (internval of angle) and with a certain radius/deepth (e.g. 100 meters)   - computing intersection with buildings (e.g. ST_INTERSECTION) and visual scope. but a building can hide another one so pure intersection between visual scope and buildings might add no visible buildings. this issue need to be tackled. **update: potential solution 2** - creating a triangle representing the simplified visual scope of the user for a given point and orientation (internval of angle) and with a certain radius/deepth (e.g. 100 meters) - creating n rays (LINE) at different angles filling the scopes.   - transforming all buildings(POLYGONS) into SEGMENTS/LINES   - for each ray finding the closest SEGMENT and the related buildingID. (ST_DISTANCE , ST_DWithin)   at this stage so we should have a list of rays and the related building ID.   - then we could aggregate this list {ranges of angle,related building ID}.  Any idea about a more efficient way to do?


title: WMS getfeatureinfo() giving incorrect result

text: I am using openlayers and Geoserver. I have created a base layer using OSM and then added wms layer topp:states. I want to show a world map and on that show US states. I have added onclick functionality to get feature info. However, when I click at any states, it gives incorrect state name or no result. This further worsens when I zoom in/zoom out or change the scale.Here is my code: CSS:               #map {                      position: relative;                 height:1000px;                 width:1400px;                      float:left;                 margin:0px ;             }      Script:                var bounds = new OpenLayers.Bounds(                -180,-90,0,90             );                  format = 'image/png';                  var options = {                  controls: [],                 maxExtent: bounds,                 maxResolution: 0.22563114453125,                 projection: "EPSG:4326",                 units: 'degrees',                 displayProjection: new OpenLayers.Projection("EPSG:4326")                  };             map = new OpenLayers.Map('map', options);             layer = new OpenLayers.Layer.OSM("Base OpenStreet Map");          states = new OpenLayers.Layer.WMS(                 "NA states", "http://localhost:8080/geoserver/wms",                 {                     layers: 'topp:states', styles: '', transparent: true,  format: 'image/png'                 },                 { isBaseLayer: false, singleTile: false,displayOutsideMaxExtent: true, ratio: 1,yx : {'EPSG:4326' : true} }             );            map.addLayers([layer,states]);      Code with call to getfeatureInfo:                      map.events.register('click', map, function (e) {                                 document.getElementById('nodelist').innerHTML =   "Loading... please wait...";                                 OpenLayers.Request.GET({url:"http://localhost:8080/geoserver/wms",params:{                                     REQUEST: "GetFeatureInfo",                                     EXCEPTIONS: "application/vnd.ogc.se_xml",                                     BBOX: bounds.toBBOX(),                                      SERVICE: "WMS",                                     INFO_FORMAT: 'text/html',                                     QUERY_LAYERS: [ map.layers[1].params.LAYERS],                                     FEATURE_COUNT: 50,                                     Layers: [map.layers[1].params.LAYERS],                                      WIDTH: map.size.w,                                     HEIGHT: map.size.h,                                     x: Math.floor(e.xy.x),                                      y: Math.floor(e.xy.y),                                         }, success:setHTML});                                 OpenLayers.Event.stop(e);                            });      It may have to do with bounds or extents,but that's just my guess.