Question

Create multiple points from one based on an three id fields.


Badge
Hello everyone,

 

I am trying separate point features from one single point to two, three, or four overlapping points based on ids in four fields. This is a reverse of a process I created earlier to get the points from separate points into one point with the IDs.

 

 

It would look like this:

 

 

Starting feature: ID1, ID2, ID3, ID4

 

 

becomes four stacked points

 

 

Result feature 1: ID1

 

Result feature 2: ID2

 

Result feature 3: ID3

 

Result feature 4: ID4

 

 

I suspect I would put these IDs in a list and then write out features based on the list. I just can't quite sort out how to accomplish this in FME.

 

 

Thanks

3 replies

Userlevel 2
Badge +17
Hi Justin,

 

 

The ListExpressionPopulator creates a list of attributes having a common expression in their names.

 

For example, the transformer with the following settings creates a list named _id{} containing every attribute whose name starts with "ID":  Source Attribute Expression: ^ID List Name: _id Then you can transform an input point into stacked multiple points using a ListExploder. If some _id might be empty, filter out them by a Tester.

 

 

Alternatively, using parallely four AttributeRenamers against one original feature would also work. Each AttributeRenamer renames IDn (n is one of 1, 2, 3 or 4) into _id. This looks not elegant, but is maybe more efficient because this doesn't create any new attributes at all.

 

 

Takashi
Badge
Hi T

 

hank you Takashi. In between submitting my question and your reply I figured out good solution. It's one of those times where I just needed some energy from others and just had to go ahead and ask the question. 

 

 

I use ArcGIS less and less and FME more and more. I basically did what I would do in any other software (arc) manually and did it easy in FME.

 

 

I used ATTRIBUTE FILTER AND ATTRIBUTE COPIER. Once again I was complicating something very simple. This was a matter of filtering the fields that contained values and copying those values to a single id field. FME does this very nicely. New features are automatically created. The thought of doing this same process in Arc just seems--well--stupid. 

 

 

Thanks again Takashi

 

 

If anyone stumbles upon this looking to do the same thing, I'd be happy to explain.

 

 

Thank You.

 

 

 

 

If someone ever stumbles upon this I will be happy to explain.

 

 

Userlevel 2
Badge +17
Hi Justin,

 

 

Glad to know you found a good solution.   > a matter of filtering the fields that contained values and copying those values to a single id field   For such a case, applying the "Conditional Mapping" functionality of the AttributeCreator (FME 2013 SP1 or later) could be a more compact solution.

 

In many cases, there are several approaches with FME to do the same thing, so it's interesting ;-)

 

 

Takashi

Reply