progeCAD support, tips and troubleshooting forum. progeCAD works very similar to some versions of AutoCAD. Moderated.

Moderators: caddit, Moderators

#2374 by JT_Emerge
Tue Jul 11, 2017 9:43 am
Hello Forum :D

This is my first post, and I'm new to progeCAD and fairly new to CAD generally!

I'd like to know the procedure for extracting Object properties data (say from a layer or project drawing file) to a .csv or .xls file.

Is it possible to give an object a custom name - ie a pline, polygon etc? Ideally the data that I extract will have a reference to the Object that is relevant to the project - for example, I work on sub-development plans drawn in CAD - I'd like to be able to call a polyline / polygon a name relevant to the drawing - ie Lot xxx, or Catchment yyy and so forth, and then have the data relevant to this object in the next columns... length, area in particular.

I'd like to be able to quickly feed this data into a spreadsheet so that the information can be used for further analysis - currently it is done line / polyline by line... so far it is slow and tedious so Im looking for a way to improve efficiency.

Apologies if this has been covered in another thread, I have searched the forum and the documentation but so far have only found ways of importing information from excel into progeCAD rather than the reverse.

Thank you immensely for any assistance.

#2376 by caddit
Thu Jul 13, 2017 8:06 am
Hi Justin and welcome,

We already posted a full article which covers this:

Please let us know if that helps, of course social likes are appreciated.

Feel free to post any feedback either here or directly to the article.
#2377 by JT_Emerge
Thu Jul 13, 2017 2:02 pm
Thank you for your response Caddit :)

Im not sure that this can help me, at least not efficiently... I'm happy to be corrected of course.

Say I have a drawing and the elements in the drawing are not blocks to start with, and all drawn elements are unique in terms of size and shape, how do I accomplish a "BOM" without needing to create blocks out of each element that I want data from?

The drawings that I would like to take the element data from are plans of subdivisions; ie they are plans with shapes and lines used to depict proposed house/commercial/industrial/public purpose lots, roads and road reserves, kerbs, stormwater infrastructure, parks, rivers, catchments etc. Potentially hundreds if not thousands of different elements.

For example, looking at a plan I might have a series of median strips which have been designed as stormwater swales, where a single polyline represents a median strip on one road in the development. Ideally, I'd set all of this type of median strip (with swale) to a layer, and then for the whole layer I'd like to extract a unique identifier, layer id, the area, the length of the shapes major axis (not the line length, if this is possible), and so forth.

This data will allow me to calculate how much total area and/or length of swale is present, and from there I can do further calculations via the spreadsheet. Likewise, I can set the lots to different layers and check that the drawn areas match the scheduled areas / densities that the planner has documented.

However if extracting data requires setting up individual blocks for each element the process would probably take just as long as reading off every element and entering the data I need manually. If there is a means of doing the above without requiring the creation of blocks, I would be keen to be shown.

Thanks again for the help.
#2378 by caddit
Fri Jul 14, 2017 3:56 am
Thanks for your additional details Justin,

Have you tried using the LIST command? This will report back information on all selected entites.

Perhps we are confused. Can you cite a similar function in vanilla AutoCAD, to what you need? progeCAD is a general purpose drafting program. That is, one user might be using it for stormwater planning, the next for industrial sheet metal. Like any CAD, progeCAD can only report back the information entered into it. There is a basic set of geometric calculation tools like distance and area, as well as entity properties reported by the LIST command, as suggested. But when you draw a line in progeCAD, that's all it sees - a line, regardless if you see that line as a curb or a sheet metal edge. This is why we insert extra data into blocks, to perform the function you describe. Anything more specialized will need to be custom coded in LISP or VBA.