Question

DGN Labels and Points to GIS

  • 15 July 2016
  • 4 replies
  • 14 views

Hi all,

I'm new to FME and I'm hoping someone can help. I have a dgn file that contains polygons, each polygon in turn has at least point and a label inside it, sometime it has two points and two labels. I would like to be able to convert the dgn file to a geodatabase and have the labels in each polygon convert to attributes against the layer. Is this possible to do? I have attached a screenshot of what my dgn looks like in data inspector.

Thank you.


4 replies

Userlevel 2
Badge +16

You can do this in a very simple way:

Split the data using the GeometryFilter.

Then use the PointonAreaOverlayer to add the point attributes to the Area.

You might want to expose the attribute fme_text_string in the source first.

You can do this in a very simple way:

Split the data using the GeometryFilter.

Then use the PointonAreaOverlayer to add the point attributes to the Area.

You might want to expose the attribute fme_text_string in the source first.

Thanks for this, would you be able to provide a bit more guidance please? How do I use PointonAreaOverlayer to merge the attributes? This is the part I'm struggling with. Thank you.

Userlevel 2
Badge +16

I have attached an image:

The settings for the PointonAreaOverlayer can be left as default if each area contains one point. If it contains multiple points the list attribute should be used to contain the information of all points. You can then either concatenate the list or create an area for each item in the list (ListExploder).

If the points are text points the GeometryFilter needs to select text as type (see settings).

Badge +10

Hello FME newbie,

You are Safe in the land of FME moving from dgn to geodatabase.You have mentioned three types of data in the dgn file.A point, a label and a polygon feature.If it is MicroStation dgn, then the label will be a text or a text node, represented by a point.A point in dgn is a zero length line element as per MicroStation terminology.You have mentioned that you wish to only use the labels converted as an attribute for the respective polygon while writing to a geodatabase.In the FME Data Inspector screenshot you have sent, the fme attributes are not visible.In case the label and point features are in the same level in your, I suggest that you look for the fme feature types in the display control window (pane) usually on the left side of your FME Data Inspector application after opening the dgn file.It will list the dgn level numbers by default.From this you can confirm if the label and point features are in the same level or not.Sometime all features could be in a single level in the dgn file, which can also be handled in FME easily.You can ignore level number 0, if you are sure that the labels are not MicroStation cells.If they are in different levels, you can simply use FME Workbench, read the dgn by level numbers, pass the polygons to the Area port of PointOnAreaOverlayer and the labels to the point input port of the same transformer.Enable fme_text_string attribute for the source fme feature type (level number)in FME Workbench for the level containing the labels in the dgn file.PointOnAreaOverlayer Area output will have the fme_text_string captured for the respective polygons that have atleast one label within them.You can write the values to whatever attribute in the geodatabase feature class that you desire.

I have created a simple examplepointonarea-dgn-example.zip where the data in the dgn are in three different levels.

The labels are in level 10 and polygons in level 11Level 9 contains points (text) which is not used in the PointOnAreaOverlay.

Good Luck and Happy FME:-) ing

Cheers

SRG

Reply