Using transformers to modify data.
Recently active
I have a folder of ~300 2gb DEM files. I want to produce hillshades of these 300 individual tiles so that when viewed together the colour ramp is the same across file boundaries. Rasterhillshade doesn't work well if the min-max values on a file is 5m-300m and the adjacent file is 5m-900m. I've previously put DEMS through a raster mosaic and then produced a hillshade but with this size of data that's not feasible. Any ideas how this can be done?
I would like to know about difference between inside point, centre of gravity and centre point transformer ? if any example to see differences. I tried with general shape file didn't find any differences.
These jobs currently take 1-2 hours to run on FME Server (6 CPU, 48 GB) each day. Due to the nature of the data source, incremental updates are not possible at this time.
Dear community, I want to read a geopackage, transform it, and write into the same database. After the process the geopackage f_id need to be the same as in the beginning. When I choose "update", "drop and create" and geopackage_fid as the ID Attribute in the writer settings, I get the warning "OGCGEOPACKAGE writer: Cannot perform Update on feature type 'grundnutzung' because feature with ID '21024' does not exist. Skipping feature". When I choose "update" with "use existing" it works but features that have been deleted during the transformation still exist in the database. When I choose "insert" and "drop and create" it works but then the features geopackage f_ids change. What are the correct settings to write into the database keeping the same geopackage f_ids? Thanks!
Dear,colleagues. @ebygomm @nielsgerrits @david_r please help me with a .json file (reading, converting, and writing it). So the details:1 - I have extract the names of the main foldersTile_p502_m6014Tile_p502_m60152 - then I have a .json file {"asset":{"version":"1.0","gltfUpAxis":"Y"},"geometricError":2965.7869354899398786,"root":{"boundingVolume":{"sphere":[2868547.6520226998254657,2203510.7712099198251963,5235902.6513763302937150,1482.8934677449699393]},"refine":"REPLACE","geometricError":2965.7869354899380596,"children":[{"boundingVolume":{"sphere":[2868210.6526993899606168,2203251.1590014300309122,5236183.9360417695716023,954.5398049977940218]},"geometricError":1909.0796099955900900,"children":[{"boundingVolume":{"sphere":[2868210.6526993899606168,2203251.1590014300309122,5236183.9360417695716023,954.5398049977940218]},"geometricError":16,"content":{"uri":"Data\/Tile_p502_m6014\/Tile_p502_m6014.json"}}]},{"boundingVolume":{"sphere":[2868861.2329204198904335,2203750.24563178
Hello, I am running a conversion, using a generated workspace and the information I found here: https://knowledge.safe.com/articles/1470/how-to-convert-dwg-to-dgn-autocad-to-microstation.html Now this is a very basic conversion and what is supposed to be written in the .dgn format is this:However, when the dgn is created the output is this: Essentially, the Multisurfaces are converted into Lines. Now I have checked the writer parameters, but I was unable to find relevant information, besides the seed file (I tried both the seed3d_v8 and seed3d_m_v8_). Now as I am not very experienced with the dgn structure and geometry types, I would like to ask you how can I keep the solid (multisurface) geometry as an output and not break it into lines?Thank you for your time. Regards, George
I'm properly stumped and would love some thoughts on this one. I'm taking a collection of GPS points that make up a track. I've taken these points and sequenced them and created line separate line segments (strictly 2 points). These segments now span the length of the track and they have been sequenced with an ID in the order they occur (based on timestamp). I'd like animate these lines in a stop motion/claymation fashion. And show a cumulative line segment (in order to reduce the number of features) and assign a frame identifier that dictates the frame in which to show/reveal the feature. So far, I've been using the Cloner and setting the number of copies as the ID of the feature and assigning the output clones a _copynumber. This results in large volume of features that I can then combine using the LineCombiner and grouping based on the _copynumber. This works but it's not very efficient. Due to the number of segments in the tracks the number of features obvio
Hi, i have a citygml file and i want to convert it to .obj format but while i am doing this i gets error and also the output obj file have no texture. Can anyone help me to convert citygml to obj with texture.
Hello FMEers ! I am struggling with a specific issue : for various reasons, I applied a very small buffer on a set of lines (IFMEMultiCurve), just to apply a CenterLineReplacer right after (on "Approximate Center Line" mode) . By doing so, I was hoping to get rid of geometry issues, but in the end, I am getting some brand new issues ! On some portions of the resulting lines are actually many small segments which are (or seem) colinear :It also seems that some segments have a lengh of 0 : starting and ending points have the exact same coordinates.Is it possible to avoid this kind of side effects ?Or to fix the kind of issues ? I don't care about the global line direction, and merging some not-perferctly-colinear segments would not be a problem.(I tried some LineOnLineOverlayer, Matcher, LineCombiner, but none of them seem to do what I want.) Here is a geojson file resulting from such process : [file] (link is valid for a month) Thanks in advance ! 😃
I am trying to convert DXF file to Geojson using the same proj4 as a source and destination coordinate system.tried to :1) use 'define a new custom coordinate system' suggested solution, not working because my proj4 coordinate system includes this parameter: +towgs84 which is not in the coordinate system parameters2) use 'proreprojector' transform, failed because the source and the destination coordinate systems are equals.I need to use this workspace as a dynamic one, which means that the reader/writer types may be different.Any suggestion to achieve this task?
Hi, I am trying to perform a LEFT JOIN inside InlineQuerier.I have two files with similarly named tables, (except for a _).Inside my TABLE A, in the "CITYCODE" column, I have some values, for example: "LATAM - RX12345 - SIE0950331501 - Monclova - CITY SERVICE"On the other hand, in my TABLE B, in the column of "_CITYCODE" with the value "Monclova". Just like this case, there are thousands more in my tables with the same structure, what I want is to be able to do a LEFT JOIN that partially matches a complete text string containing the values of my column "_CITYCODE". I have tried to do a LEFT JOIN like this: ---------------------------------------------------select * from "TABLE A" LEFT JOIN "TABLE B" on "CITYCODE" like '%'+"_CITYCODE "+'%'-------------------------------------------------- But I don't get the '%' as a wildcard for a partial match. Could someone help me wi
Hi, we moved recently from FME 2017 to FME 2020. We noticed changes to the Bufferer transformer. We used round end caps and round corner styles. We use the end product to compare to the previous end product to detect if there are any changes. Since the new bufferer in FME 2020 works a bit different, the datasets are now rejected after switching to FME 2020. Which parameters do I have to set on the new bufferer to ensure the results from the workspace run under FME 2020 are the same as the results from the workspace run under FME 2017? We did upgrade the Bufferer transformer in the FME 2020 workspace.
Hello Community,another question ... I try to add a z-value (new attribute) to my 2D polygones (SRID 25832) by putting them on a 3D DEM (SRID 5555). The plan is to "throw" the 2D Polygones from above on the 3D DEM and the z-value result from the first touch, where the 2D Polygone hits the 3D DEM. The icing on the cake would be, if I could create a 3D Geometrie (SRID 5555) out of the 2D Polygones additional to the z-value attribute)
I'm trying to read select multiple survey123 form responses dynamically to create a JSON template. The number of selections from a list of 24 values of tree diseases is in the survey, The feature service captures these multiple responses as comma-separated values. each comma-separated value is represented in JSON format for the HTTP caller to make an API request. each disease type has a unique answerIDHow to dynamically create JSON template from the number of list elements in the attribute splitter
I'm reading and writing LAS files. There are warnings in the log files about X,Y,Z and being converted from Real64 to int32. How do I tell (with confidence) if this is important? Are the numbers being changed in a way that meaningfully changes the result?LAS writer: Converting component 'x' from type 'Real64' to 'Int32'. If this conversion is undesired, consider changing the type explicitlyLAS writer: Converting component 'y' from type 'Real64' to 'Int32'. If this conversion is undesired, consider changing the type explicitlyLAS writer: Converting component 'z' from type 'Real64' to 'Int32'. If this conversion is undesired, consider changing the type explicitlyhttps://knowledge.safe.com/questions/47749/combine-tilling-and-compress-las-files-without-con.html has a recipe for counter-acting the conversion, but it's not clear to me if that is needed. That discussion links to another page that says only int32 supported in the output format. If that's the case then why go through the ext
Hi, I am trying to fix an issue in the workbench. It takes a lot of time for the buffer tool to run, even though have chose the fast option for processing. There is no grouping done and this has happened since we upgraded to FME 2020. Any help is appreciated
Hi All, I'm having problems looping a custom transformer I've created that makes use of adjacent feature attributes.The workbench I'm working on is intended to smooth DTM data and then identify trends in gradient along a set line. I've tested the process by manually replicating the transformers I'd like to loop but when I add them to a custom transformer and try to loop them I get an error (please see attached image).Before the data enters the loop I expose the adjacent z value and calculate: IF z-z+1 >=0.01 then z-(z-z+1) else z. I then write the result to an attribute 'bicubic_smoothing' so that the data entering the loop doesn't use adjacent attributes. The 'AttributeCreator_15' in the loop uses adjacent features to asses the difference between the first 'bicubic_smoothing' attribute and the second 'bicubic_smoothing' attribute and so on. 'StatisticsCalculator_2' assess the range of the values created by 'Attribu
Quiz! Difficulty: Hard. Make a recursive Clipper I want to clip 2000 partially overlapping areas with each other. And they are sorted and given a priority in the order they need to be clipped. Attached is an example workspace that uses text as a sample. Shown below are the result. The letter "F" is the first clipper, then "M", then "E" etc. Så every area/letter is behind the other one. The attached workspace shows the approach. How can I wrap the equal processes within the "New Bookmark" into a custom transformer that works recursively so I dont need to copy/paste these bookmarks x number of times. Good luck!
So I've had such a blessed, successful 24-hour run getting good advice on this forum, I'm going out on a limb and will keep it going... As an FME Server shop, we leverage FME Server notifications quite a bit. Mostly the success/failure type with a custom template to inform the support team if things completed on schedule and whether everything is running normally. Show me when something is wrong and leave me alone the rest of the time. This is quite helpful. In addition, I need more fine grained reporting for specific workbenches especially those powering integration with other teams. Oftentimes, that's basically an 'Emailer' transformer that sends out a custom message to custom audience. I posted about a related subject a while back. Now, I've recently put together a workspace that tries to gather various record counts across separate data streams. The easiest way I've found to do this is create any number of counters, starting at 0 and of type 'Local&
Hi all, this seems almost too straightforward, but I've got data going through a number of AttributeKeepers as I'm trying to build a Database Table from other Tables, which then go through an AttributeManager to get them in the right order. Unfortunately as soon as they hit the AttributeManager, all bar 1 input are set as <missing>. Any thoughts on why this may be? I've attached screenshots as I'm no stranger to FME, but this is just odd. Thanks
Hello all,I am facing a change in the behavior of the transformer Bufferer. I created a script in 2017 using Bufferer to generate eroded polygons with the same number of points as the original polygons. When I wanted to use this script with FME 2020, I found that the eroded polygons had more points, which disrupted the rest of the processing chain. Is there a way to recover the previous behavior? Here are some pictures to illustrate the problem I am facing.
Hello, I have two geojson files, available [here] (until the 21/04/2021). Each one contains a MultiLineString feature, converted to IFMEMultiCurves with FME. I would like to be able to detect any overlapping segment, with some tolerance, no matter their directions, and set a property to any overlapping (or "close-enough") segment from one dataset with any segment from the other dataset.I have tried various transfomers, but I am not able to detect overlapping segments, nor to break my datasets into segments ... Any advice about how to do this ? Thanks in advance :)
I am trying it via Quick Translator but I am not getting a printout. I want to be able to convert the IMDF standard to IndoorGML. Thank you in advance for your help.
Hi guys, I have been having an issue where some Base feature attributes where an attribute is Null are being populated with the attribute of the first Base feature that passes through the transformer.... the Candidate doesn't have this attribute so i can't be from that. I've run the workbench on FME 2020 and 2021 and get the same result. Cheers, Dave.
I was considering the possibilities working on large datasets by doing transformations as needed, in stead of clogging down the system with one big run. One way to do this would be to extract the required area, conducting the desired transformations and writing the result to a new table. Repeat when required, at some time in the future the new table would be completely "transformed". Assuming a dataset in postgis that has no county codes or similar ways to easily group adjacent features. And assuming it is huge and vectorized with many tables and gigabytes of data. From my experience the clipper transformer is pretty slow and would not perform well on the large datasets in this example. Q: Is there a efficient way to create a system of tiles covering a huge area, like a country or similar? And then writing these "tilecodes" to the features spatially covered? Can this be done with SQL? This is a follow up question to one I had a few days ago: https://community.safe