Question

I am working with DWG Civil 3D. I want to Read Property set of civil 3D models. How can I expose the attributes from Property set?

  • 11 November 2022
  • 6 replies
  • 48 views

Badge +4

image.png Also When I am trying to use Civil 3D and CAD Entities. I am getting reader error "BADNEWS: BADNEWS: No geometry mapping entry found for 'autocad_wipeout' in metafile 'C:\\Program Files\\FME_2022_1\\metafile\\CIVIL3D.fmf'. Please visit http://www.safe.com/support"


6 replies

Badge +4

image In Attribute Exposer I am trying to implement a solution I found but it's not working but yes on defining the fields from Property sets Individually I was able to expose them.

Badge

@rishi1804​ Hi there, thanks for your question. I'm happy to hear that you've been able to expose the attributes you needed. As far as the BADNEWS error goes, it is associated with the geometry of AutoCAD Wipeout objects, and is a known issue in FME 2022.1. Our developers are currently investigating it. It does only occur with the Schema Mode is set to Civil3D and CAD Entities. An alternative you could try, if you need to read those wipeout objects into FME, is to use the AutoCAD DWG/DXF reader instead of the Civil 3D reader.

Badge +4

@rishi1804​ Hi there, thanks for your question. I'm happy to hear that you've been able to expose the attributes you needed. As far as the BADNEWS error goes, it is associated with the geometry of AutoCAD Wipeout objects, and is a known issue in FME 2022.1. Our developers are currently investigating it. It does only occur with the Schema Mode is set to Civil3D and CAD Entities. An alternative you could try, if you need to read those wipeout objects into FME, is to use the AutoCAD DWG/DXF reader instead of the Civil 3D reader.

@natalieatsafe​ I am able to expose them when I am specifying the fields in AttributeExposer. The issue with this approach is Property Set of every model can't be the same. I want a strategy to fetch the entire Property Set as a list. Is this possible with civil 3D models?

Badge

@rishi1804​If I understand your workflow needs correctly, I believe fixing the BAD NEWS error will allow you to make use of the "Civil 3D and CAD Entity" schema mode in the Civil 3D reader which, in turn, will allow you to access the property sets more readily (see this community question for more info).

 

To fix this error, you'll need to add a couple of definition lines to the civil3Dmapping.fmi file, which comes with an installation of FME 2022.1. Adding these lines will allow the Civil 3D reader to recognize and properly process both AutoCAD Wipeout and Underlay entities, which will get you around that autocad_wipeout geometry error. I'll walk you through how to do this. It's going to be a bit of a long explanation; if it's unclear at any point, don't hesitate to ask for clarification.

 

First, check and make sure you have full permissions to the parent folder where your FME 2022.1 is installed. For me, this folder is at:

 

C:\\Program Files\\FME\\

 

It's usually somewhere under Program Files by default. Navigate to this folder in Windows Explorer, right-click it and select "Properties". Make sure "Read-only" is NOT selected at the bottom of the General tab.

 

Now, navigate to the metafiles associated with your FME 2022.1. For me, these are located at:

 

C:\\Program Files\\FME\\metafile

 

In this folder, you will see a file called "civil3DMapping.fmi." Right-click this metafile, and open it with Notepad (or another text editor; I just find Notepad displays these files more clearly than other text editors).

 

You'll see lots of GEOM_MAP definitions throughout the file. If you scroll down a little ways through the file, you'll come to a GEOM_MAP autocad_raster line, as in the screenshot below. You'll need enter the following two definitions, in the locations indicated in the screenshot:

 

GEOM_MAP autocad_wipeout fme_polygon

 

GEOM_MAP autocad_underlay fme_point

 

metafile_adjustmentsMake sure your spacing lines up with the other GEOM_MAP definitions.

 

Once you've added in those two lines, save the metafile (replace the old one!) and close all instances of FME 2022.1 you have open. Now, you should be able to open a blank canvas in FME Workbench 2022.1, add the Civil 3D reader with your Property Set dataset as input, and select the "Civil 3D and CAD Entities" option for the schema mode. If you leave the Workflow Options set to Individual Feature Types, and then OK the reader, you should see some new feature types populate onto the canvas.

 

Some of these new feature types should contain your Property Set properties. You can run the workspace on these feature types with feature caching on, and have a look at the results of each in Visual Preview. You should readily see you Property Set properties as attributes of the new feature types, named in the form:

 

"PropertySetName.PropertyName"

 

Once you identify which feature types contain your Property Sets, you can use ListBuilders to create list attributes of your property sets if you choose. Or, you could work with your property set attributes directly from the feature types, if that's easier. At least having those Property Sets now readily accessible will open up some options for you in your workspace.

 

I realize this was a long explanation, and if anything is unclear, please let me know and I can try to clarify!

Badge +4

@natalieatsafe​  Thanks for your response now I am able to use the "Civil 3D and CAD Entity" schema mode. And as I already mentioned, I can expose the attributes from the PropertySet when specifying the fields like "PropertySetName.PropertyName" in AttributeExposer.

Is it possible to get everything from the property set at once as a dictionary or in any other form?

Badge

@rishi1804​ I've been looking through my resources and using some sample data I have with the Civil 3D reader, and I'm not able to generate a list of attributes from a property set right out of the reader. However, if I read my dataset in using that "Civil 3D and CAD Entities" schema mode, the property set properties do appear to come in as attributes of the various feature types, just depending on the object(s) you've applied the property sets to in Civil 3D. You can then use a ListBuilder on each feature type with a property set to build out your lists. The trick is knowing which feature types contain your property sets. FME Data Inspector may come in handy for that.

 

If you could provide a sample of your data, I would be happy to do a bit of testing on my end. It would help to be able to see what you are seeing and work with the same dataset. My testing dataset is likely built quite a bit different from yours, so I can't be certain that my testing reflects what you are seeing on your end.

Reply