Skip to main content
Question

How to make a groug of lines straight and overlying other lines?


amt
Contributor
Forum|alt.badge.img+2
  • Contributor

Hi All,

Novice, here.   I am trying to work with two different layers where I want one set of data to overlie another set of data.  I don’t know how to move the lines, adjusting them so they will match the sister layer.  I have tried Neighborfinder, anchored snapper, was looking at affiner, orientator and geometry coercer, and any other transformer I thought might work.  I suspect there are many steps involved in this process, but I really don’t know where to begin.   

 

Below is an example of my data set.  I would like the black lines to match the red lines.  Is this doable in FME?

 

Please let me know if more information needs to be provided.   Thanks for any help.  It is greatly appreciated!

 

Version: ME(R) 2023.1.0.0 (20230825 - Build 23619 - WIN64)

 

 

 

3 replies

j.botterill
Influencer
Forum|alt.badge.img+40
  • Influencer
  • August 23, 2024

Hi amt, I think you have tried some of the transformers that would definitely assist. Is the spacing of the red lines regular? If so perhaps start with the 2DGridAccumulator. It provides many options for creating a regular grid cell size starting corners and creating point or line outputs. From there, convert the points with LineBuilder and/or the polygons with coercing?


bwn
Evangelist
Forum|alt.badge.img+26
  • Evangelist
  • August 23, 2024

Maybe try a Community Hub Transformer called FuzzyParallelLineFinder

I trialled a sample: It needs some trial-and-error on the Sampling and Search Distance parameters, but it worked as far as I could tell.

It kind of looks like it works how I would otherwise manually do it, by using a NeighborFinder or a Matcher with a Search Distance to find potential nearby line Candidates in a List, and then compare the Sum of the Square of Distances between their respective Minimum Bounding Rectangle X and Y coordinates, which can be derived for each line by running through BoundsExtractor.  Whichever candidate has the least sum of square of distance between the (Xmin, Ymin) and (Xmax, Ymax) for the target line vs candidate lines will be the likely candidate line to match to.

 


amt
Contributor
Forum|alt.badge.img+2
  • Author
  • Contributor
  • August 26, 2024

The spacing of the red lines is not 100% regular.  It will vary from area to area, but I will give both a try and let you know.  Thank you so much for the feed back!

 

 


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings