Tag Info

Hot answers tagged

10

You can analyze polylines in amazing ways by using buffers. This is usually inefficient--buffers create many additional vertices--but (a) it is a technique available in many GISes (vector or raster based) and (b) it sometimes can produce information that is otherwise hard to get. In this case, buffering the road by a small amount and then buffering by the ...


9

FME wins: Workbench you can control 'Manipulate' your data in a much more refined way. (see below) Feature Merging Attributes only with another geometry) Excellently logging (on screen/to file) Open Beta Program - Nightly Builds can be used by all (good to test new features or see fixes) Consistent upgrades 4 per year (Released in January, Q1-Q4 as ...


8

An FME workspace can handle any amount of data in any format if it is predefined in the workspace. If it cannot be predefined then FME has special functionality to read any format of data (what we call "Generic") and read any data schema ("Dynamic"). In this case it's unlikely that the Generic functionality will help. Firstly there is no need for it because ...


8

If you have the roads in a spatial form, such as a Shapefile, you can load them into PostGIS and have it automatically find those using an SQL query. I've done this before - the SQL statement is designed to find for each road those that intersect geographically and create a nodal point for each crossing. I will try to clean this up later, but here is the ...


8

If you can use the File Geodatabase API writer in FME2012-SP2, then there will be a setting in the feature type/writer to enable setting an attribute index. Unfortunately, for the moment, it's limited to only that writer (not the ArcObjects Geodatabase writer) which has a number of other limitations. In the meantime you are correct, a call using the ...


8

Yes, reproject but use _AZMEA_ as the coordinate system. It's a dynamic equal area projection designed exactly for this. Then simply reproject back. In future the AreaCalculator will have an option to do this reprojection automatically.


7

I'm just getting started with FME, and am using a shutdown script to copy my target FGDB to another location and to save out the log file: import distutils.dir_util, shutil, os, time, locale src = 'C:/Testing/FME/TPW/Third_Party_Wells.gdb' dst = '//share/Data Services/GIS Data/Data/Third Party Wells/Third_Party_Wells.gdb' distutils.dir_util.copy_tree(src, ...


7

To use arcpy you will need to change the Python interpreter used by FME as arcpy requires its own Python interpreter (version 2.6.5 for ArcGIS 10.0). For FME 2011 what you need to do is create and set the FME_PYTHON_VERSION environment variable to 2.6 (for ArcGIS 10.0, I believe it's 2.7 for ArcGIS 10.1) as described here: Choosing a different Python ...


7

That is the expected behavior. Each point is getting its own unique coordinate system, where the point is placed at the origin. In your example, your point has been placed into the coordinate system _AZMED_WGS84_-71.496825_42.8188720 which is a unique system with origin at -71.496825, 42.8188720. As a result, every point ends up at 0,0 (or rather, every ...


6

Yes, you could do this with FME for sure. There are many "transformers" that handle cleanup, intersections, and topology; I would try the TopologyBuilder transformer in this case. Any scripting is all done in a graphic environment, so it is very simple to do. You can always get a trial version from www.safe.com (Disclosure: Mark Ireland, aka FME ...


6

I don't think it really matters, but it might make sense to save it in the same folder as the workspace is stored, and reference it as {FME_MF_DIR}myscriptname.py Then if you ever move them to a different location, it all should work w/o needing to be updated.


6

As long as the Char fields all contain floating point numbers, then I doubt you would need to do this at all. FME doesn't generally care about data type within the transformation, and will only care about it on writing if the data doesn't match the required type. i.e. as long as your char strings are all valid as floats, FME will do the conversion when the ...


6

Although I like Alex's answer - it's better to reproject than to simply convert decimal degrees to metres with a fixed multiplier - I never really like having to reproject data back and forth if not necessary. I figure you're bound to lose some degree of accuracy/precision. What I would try is the ReprojectLengthCalculator transformer. With that you could ...


6

To view the API documentation, navigate to your FME installation folder and go to this location: help\python\apidoc\index.html In this case you'll want to use the GetAttribute method: getAttribute(attrName) Get the value of the named attribute. A return of None indicates the attribute does not exist. Parameters: attrName ...


6

For a complete history of the evolution from EPSG:900913 to EPSG 3785 and finally EPSG:3857, look at AnĂ¡lisis de Google Maps (in Spanish) and the conclusions are: The projection parameters defined for the EPSG: 900913 or 3785 describe a Mercator projection with geographic coordinates defined on a spherical model of the Earth, 6378.137m ratio, as specified ...


6

For sake of posterity, the short answer is that MapInfo and FDO (AutoDesk technology) are far removed from any development with SQLite, compared to the members of the SQLite Consortium. MapInfo and FDO (AutoDesk) would be contributing binary to their downstream users, via their products and services. Spatialite is specked under a triumvirate of ...


6

Another option is to build a Virtual Raster. You can perform this using GDAL, FWTools, or QGIS. Essentially, a virtual raster will make the mosaic, but as a pointer file, that brings in all the imagery. The file size stays relatively small, and the performance is good. I am using it to mosaic 5cm imagery, and I like the results.


6

I believe the AreaOnAreaOverlayer is the transformer that performs the equivalent of an ArcGIS Union. Performs an area-on-area overlay so that all input areas are intersected against each other and resultant area features are created and output. The resultant areas have all the attributes of all the original features in which they are contained.


6

It's not a very well-known feature, but you need the Feature Type Connections window. You access it like this (View > Windows > Feature Type Connections): In there select all the source feature types, select the transformer point to connect to, then click Connect:


6

I posted an answer about how to add a BaseLayer as Rasterlayer some weeks ago: Alternative to OpenLayers plugin for QGIS? . What I described there can also be used for HERE-Layers. As user Mapperz already mentioned you need an app_id and app_code to use Here-Tiles. You will get these credentials here: ...


5

If you are using FME to do the data load, I think you may as well use it to read the original table and do the transformation stage. Then it's all in one process. If you do the work in Workbench then there are transformers for parsing, trimming, and concatenating. I won't say this is the best way, or compare it to any others, because I currently work for ...


5

Have a look at Oliver's Python Corner. There's a ton of things you can do using Python in FME. I often use the PythonCaller to make some attributemanipulations inside 1 transformer rather than using 10 different transformers (if elif elif else ..) You can have very basic PythonCallers like this example which will convert all your attributes to uppercase ...


5

From the FME Readers and Writers Manual: When writing to the database, the writer expects the date attribute to be in the form YYYYMMDDHHMMSS. You'll probably need to use the DateFormatter transformer to get this format. I would: Use a StringReplacer to replace the - with / in the date attribute Use a DateFormatter set to %Y%m%d or %Y%m%d%H%M%S ...


5

More generally, you need what is called a "published parameter" -- you don't have to use the ParameterFetcher to pull them out in a workflow either. This FAQ http://fmepedia.safe.com/articles/FAQ/Can-I-pass-a-variable-to-FME-to-replace-a-fixed-value-within-a-workspace describes what I'm talking about very concisely, and if you grab section 4 of the online ...


5

This message: During translation, some features were read that did not match a reader feature type in the workspace. This can happen if the reader dataset is changed, or a reader feature type removed or renamed. ...should have nothing to do with how the data is written, just what is read. This FME Evangelist post should explain that part of the ...


5

I work for Safe Software and I can tell you that REST interface for FME Server is likely going to be much easier to work with and better supported in the long run. Our REST API is better supported through documentation and examples (e.g see the REST Playground here and the REST API documentation here. The SOAP interface is pretty much undocumented as you ...


5

Certainly the main differences that I'm aware of that would make me lean towards a complete license to FME Desktop are as follows: The ESRI Data Interop does not support Raster data. It only supports about 100 formats, not the 250+ as supported by FME Desktop 2011/2012. It's true that your support will be through ESRI, not Safe or one of their resellers. ...


5

You could do a call to os.system. Something like: os.system workspace.fmw --arg_one --arg_two ... Look in the Log window when you run your workspace and at the very top it will give you the command to run, it's usually in blue and says "Windows command-line to run this workspace:".


5

Assuming you have only the one file you need to read in a directory of its own, you can setup your reader to read the directory for any and all .xml files. Right-click on your reader, select Update.., click on the "+" button, add the directory, and remove the reference to the direct .xml file that you probably already have. FME will now read any xml file in ...


5

This is a limitation of the ECW format (with earlier versions of the SDK versions, <= 3.3 I think) which doesn't support NoData values or Alpha transparency. The lossy compression makes it even harder to remove the collars as the black values aren't exactly RGB 0,0,0 but vary. To get rid of the collar you'll need to mask/clip the collar and convert the ...



Only top voted, non community-wiki answers of a minimum length are eligible