Civil engineering feature implementation (Transportation Engineering)

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
User avatar
Joel_graff
Veteran
Posts: 1949
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by Joel_graff »

griffmic88 wrote: Mon May 07, 2018 6:24 pm I think we should get him on a payroll somewhere lol.
I've thought of that, too. It's sort of why I started my LLC.
I'd love to be able to support FreeCAD with a commercial endeavor... maybe i can talk some of the consultants who will be watching my webinar next month for the Illinois Society of Professional Engineers to get on the FreeCAD train. :D
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails

pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by microelly2 »

I look for a converter like this

http://www.rcn.montana.edu/resources/converter.aspx

as a python module (without gui) inside the geodata workbench.

switching larger datasets by scripts from one format to another would help to focus
the develope the methods on one format. I prefer Lat Lon, but professionals use other systems too.
It's hard for me to decide what is the best way.

I found and played a bit with:

https://github.com/vvoovv/blender-geo/w ... Map-(.osm)
https://pypi.org/project/utm/
http://robotics.ai.uiuc.edu/~hyoon24/La ... version.py
https://nenadsprojects.wordpress.com/20 ... onversion/

What is a good python module for calculation between the different coordinate systems?
User avatar
Joel_graff
Veteran
Posts: 1949
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by Joel_graff »

microelly2 wrote: Mon May 07, 2018 8:31 pm What is a good python module for calculation between the different coordinate systems?
Good question. @griffmic88 might want to weigh in on that a bit - at least regarding what sorts of coordinate systems we should be ready to work with.

In terms of U.S. surveying, we use the North American Datum (NAD) vertical datums. I think at IDOT NAD83 is most common. Here's a link that describes it:

https://www.ngs.noaa.gov/datums/vertical/

GIS shapefile data uses it to georeference correctly with aerial imagery. QGIS can be used to convert among the datums, but I wouldn't worry too much about it at this point until we've really got a reason to care. I'd say work with whatever is most convenient and eventually, what ever other georeferencing we need to support will present itself.

That said, I'll take a closer look at your links when I get a chance - I need to gain at least a passing familiarity with that stuff.
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails

pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
griffmic88
Posts: 37
Joined: Mon Mar 05, 2018 3:18 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by griffmic88 »

Joel_graff wrote: Mon May 07, 2018 10:33 pm
microelly2 wrote: Mon May 07, 2018 8:31 pm What is a good python module for calculation between the different coordinate systems?
Good question. @griffmic88 might want to weigh in on that a bit - at least regarding what sorts of coordinate systems we should be ready to work with.

In terms of U.S. surveying, we use the North American Datum (NAD) vertical datums. I think at IDOT NAD83 is most common. Here's a link that describes it:

https://www.ngs.noaa.gov/datums/vertical/

GIS shapefile data uses it to georeference correctly with aerial imagery. QGIS can be used to convert among the datums, but I wouldn't worry too much about it at this point until we've really got a reason to care. I'd say work with whatever is most convenient and eventually, what ever other georeferencing we need to support will present itself.

That said, I'll take a closer look at your links when I get a chance - I need to gain at least a passing familiarity with that stuff.
I keep circling back to this https://pypi.org/project/GDAL/ every one uses it as a library. So in terms of coordinates you have projected and geographic. In the United States, there are even projections for portions of the state that are agreed upon for municipal use. Every coordinate system has a base file that is used to calculate your point in any other system used like NAD (typically 1983). Now if your converting, their term is called reprojecting into a new coordinate system, which I think the GDAL library handles.
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by microelly2 »

griffmic88 wrote: Tue May 08, 2018 1:39 pm I keep circling back to this https://pypi.org/project/GDAL/ every one uses it as a library.
okay, so we are on the right way, I already use it in geodata wb, lets learn it more.
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by microelly2 »

To create graphical labels we can use the VRML Billboard node. It is now available in FreeCAD too.
We can combine text and graphics as labels.
in the example I only create a simple trapez.
phpBB [video]

https://grey.colorado.edu/coin3d/classS ... board.html
User avatar
Joel_graff
Veteran
Posts: 1949
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by Joel_graff »

microelly2 wrote: Wed May 09, 2018 3:03 pm To create graphical labels we can use the VRML Billboard node. It is now available in FreeCAD too.
Good deal!
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails

pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
User avatar
Joel_graff
Veteran
Posts: 1949
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by Joel_graff »

Managed to build a parametric box culvert. Nothing amazing, but it's a start to something useful.

phpBB [video]
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails

pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
griffmic88
Posts: 37
Joined: Mon Mar 05, 2018 3:18 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by griffmic88 »

Joel_graff wrote: Wed May 09, 2018 10:26 pm Managed to build a parametric box culvert. Nothing amazing, but it's a start to something useful.

phpBB [video]
This is highly useful to me! I can copy this object into my existing software and since its an object be viewed in a cross section. Since its parametric, even better, I can change it to match my local standards and designs.

Edit: The wingwall angles, and some other features can be modified to fit local standards. A bridge abutment would be an easy one to do I think. I have tried this in Microstation and it works rather well, but it's not perfect (the format can be imported or exported via .CSV as well).
User avatar
Joel_graff
Veteran
Posts: 1949
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Post by Joel_graff »

griffmic88 wrote: Thu May 10, 2018 4:35 pm This is highly useful to me! I can copy this object into my existing software and since its an object be viewed in a cross section. Since its parametric, even better, I can change it to match my local standards and designs.

Edit: The wingwall angles, and some other features can be modified to fit local standards. A bridge abutment would be an easy one to do I think. I have tried this in Microstation and it works rather well, but it's not perfect (the format can be imported or exported via .CSV as well).
The file is attached. :)

It's not perfect, and it breaks if you try to adjust the skew in increments greater than 5 degrees. I suspect microelly's animation workbench would be a great way to overcome that...

In the end, you really only have to make a handful of models that vary by number of cells and wingwall types, I think, and you've pretty much covered all of the box culvert use cases. This is a single cell (obviously) with a horizontal wingwall design case.

The other thing I'm trying to do is to hook the model into an external spreadsheet (or even a text file), so that you can modify the parameters outside FreeCAD and see the model update. It seems pretty doable with LibreOffice Calc, and I've got a start on it, but no promises on anything useful in the near future...
culvert_parameter_test.FCStd
(44.11 KiB) Downloaded 54 times
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails

pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
Post Reply