How the list of layers in Modelbuilder is determined for a DXF file with blocks

  Applies To 
  Product(s): WaterCAD, WaterGEMS, SewerGEMS, CivilStorm, StormCAD, PondPack, SewerCAD,
  Version(s): 08.11.XX.XX
  Area:  Layout and Data Input
  Original Author: Jesse Dringoli, Bentley Technical Support Group


When importing a CAD file (DXF) through Modelbuilder, why does the list of tables not match the list of layers in the DXF? (as seen in AutoCAD or MicroStation)

How does Modelbuilder determine the list of tables/layers available for a DXF file when using blocks?

How are AutoCAD blocks treated in a DXF file in ModelBuilder?

Problem ID#: 62710


When importing a DXF file through Modelbuilder, layers containing polylines will always show as separate layers (which can be mapped to the pipes element), but each unique block in the drawing will have it's own table as well. Meaning, all points that use a specific block will be combined into a single layer, with a Layer column to show which AutoCAD layer the specific item was in.

For example, if you have a block called "pumps" in the DXF, with several points using the same block, you will see a single "pumps" table in the list in Modelbuilder, which you can map to the WaterGEMS (or other OpenFlows product) pump element. If each pump in the DXF had it's own block (for each, pump a, pump b, etc), then you'll see one table in the list for each of them, which would all need to be mapped to the corresponding element type. You would need to combine these blocks in the DXF file itself (so multiple points refer to the same block) in order to consolidate the table list in ModelBuilder.

Further, if all of your points (junctions, hydrants, pumps, etc) use the same block, then you'll have one single layer in ModelBuilder containing all of those points. In this case in order to map the separate element types to the respective hydraulic element type in the field mapping step (hydrants, pumps, tanks, etc), you would either need to duplicate the table in the first step and use the WHERE clause to filter down to the respective element type based on the Layer column. Or, modify the drawing in AutoCAD so that each type of node has a unique block. (this would be typical anyways, so that a hydrant looks like a hydrant, a pump looks like a pump, etc).