Skip to main content

I have two GDB Feature Classes: street centerlines (polylines), and cross streets (points). The values in the cross streets field are, for example, in this format "A St/Elm St/Fern Ave". These are all the cross streets at each intersection.

I am using the PointOnLineOverlayer to join the points at each end of the line. There is one point at each end of each line. I have unchecked Merge Attributes. I have checked Generate List On Output Line.

 

I checked and all points are snapped to each end of the line.

 

I have increased the Point Tolerance in the PointOnLineOverlayer in increments up to 50 and there is no change to the output.

I created 2 Lists, PT(0)_CROSS_ST_NAMES and PT(1)_CROSS_ST_NAMES. PT(0) captures the cross streets (a single point) at one end of the line, PT(1) captures the cross streets (a single point) at the other end of the line.

When I run the transformer in some situations it duplicates the line and places the cross streets that should be in PT(1)_CROSS_ST_NAMES into PT(0)_CROSS_ST_NAMES in a duplicate record in the table. Reference the screenshot of the cross st names table below.

The highlighted rows in the table are:

CALAVERAS AVE/WILFORD ST

CALAVERAS AVE/SUTTER ST

 

They share a common street name (the name of the line segment that intersects each point) is CALAVERAS AVE.

 

CALAVERAS AVE/WILFORD ST should be in PT(1)_CROSS_ST_NAMES not in PT(0)_CROSS_ST_NAMES and there should only be a single record for the street segment.

 

The table should have a single record for CALAVERAS AVE with PT(0).CROSS_ST_NAMES = CALAVERAS AVE/SUTTER ST and PT(1).CROSS_ST_NAMES = CALAVERAS AVE/WILFORD ST.

Cross_Street_Names_issue 

Here is an illustration of the issue I am encoutering:

Line Segments with Points Problem Illustration 

Here are the settings I used in the PointOnLineOverlayer Transformer:

PointOnLineOverlayer 

After the PointOnLineOverlayer I use AttributeRenamer to rename the Lists:

Transformer after PointOnLineOverlayer

It is a very detailed question, but I'm not sure if I understand what you try to achieve.

 

About the duplicates, do the input's have Aggregates? Because Aggregate Handling is set to Deaggregate. This setting will explode the Aggregates into single features. You can test this with an AggregateFilter.


Thank you nielsgerrits. I tried the Aggregates and it did not work. I have contacted FME Tech Support. Once I get an answer I will be sure to post it here. Thank you, you are always so helpful.


FME Tech Support solved the problem almost immediately. The solution was to add a Deaggregator and LineCombiner Transformers before the PointOnLineOverlayer.

WorkspaceDiagramSolution


Reply