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
HakanSeven12
Posts: 278
Joined: Wed Feb 06, 2019 10:30 pm

Re: Civil engineering feature implementation (Transportation Engineering)

Postby HakanSeven12 » Sat Feb 16, 2019 11:00 am

I downloaded scipy‑1.2.1‑cp36‑cp36m‑win_amd64.whl from https://www.lfd.uci.edu/~gohlke/pythonlibs/ and open it with with zip, coppied folders to C:\Program Files (x86)\FreeCAD 0.18\bin\Lib\site-packages. Now it works :)
User avatar
Joel_graff
Posts: 1503
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Sat Feb 16, 2019 11:24 am

HakanSeven12 wrote:
Sat Feb 16, 2019 11:00 am
I downloaded scipy‑1.2.1‑cp36‑cp36m‑win_amd64.whl from https://www.lfd.uci.edu/~gohlke/pythonlibs/ and open it with with zip, coppied folders to C:\Program Files (x86)\FreeCAD 0.18\bin\Lib\site-packages. Now it works :)
Glad to see you've got it working! The TransportionWB is definitely a work in progress and the UI isn't in the greatest state... I'm currently reworking horizontal alignments so there will be an update on that soon.

What are you interested in doing with the workbench?
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
HakanSeven12
Posts: 278
Joined: Wed Feb 06, 2019 10:30 pm

Re: Civil engineering feature implementation (Transportation Engineering)

Postby HakanSeven12 » Sat Feb 16, 2019 11:39 am

Im a survey engineer and I use C3D for road project. I want to use linux but there is no alternative to C3D and when I searching on Google I find your workbench and I want to try it.
User avatar
Joel_graff
Posts: 1503
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Sat Feb 16, 2019 7:26 pm

HakanSeven12 wrote:
Sat Feb 16, 2019 11:39 am
Im a survey engineer and I use C3D for road project. I want to use linux but there is no alternative to C3D and when I searching on Google I find your workbench and I want to try it.
There isn't much to use... yet. :) I'm a PE in highway design and am trying to build a workflow that is familiar to how Bentley Microstation works (I've never used Civil3D). At this point, I'm reasonably confident something can be made... I've actually made quite a bit of it work already in pieces, but creating a complete toolchain that properly handles the data and edge cases takes time. Lots of it.

Right now, I'm reworking horizontal alignment importing / generation. I've developed a parser that allows you to import a CSV that describes a horizontal alignment as a series of PI's. Basically, you describe a PI on a separate line, including it's bearing / distance relative to the previous PI (or northing / easting in absolute terms) and the curve radius / degree at that PI. It also supports station equations and intersection equations.

So far, it works... mostly. I have a somewhat-complex, ten-mile-long highway alignment I'm using as a test case and it seems to be generating it pretty well, though I'm still encountering a few bugs. It's really important to me to create a functional user interface as I go. It makes a lot of work though, especially when I haven't had to deal with surveying in... twenty years. :)

Anyway, if you're willing to play around with it and tell me what you think, I'd really appreciate the input. Horizontal alignment generation works, and I can help you if you're interested, but there's not much to do beyond that at the moment. That said, there aren't many around here who have expertise in surveying/transportation engineering, so I can always use the help!

Keep an eye on my github repo (I'm assuming you've already found that) at https://github.com/joelgraff/freecad-transportation-wb. I've been pushing updates to it pretty regularly for the last couple of months. If I can get the horizontal alignment generation stable (hopefully in the next week or two), I'll post a video detailing how it works. Then it's on to vertical!
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
Posts: 1503
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Sat Feb 16, 2019 11:29 pm

Just finished building out my 10-mile alignment as a BSpline. The spline length varies from the known length by 1/16"... in almost 56,000 feet!

Calling it a success. :)
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
HakanSeven12
Posts: 278
Joined: Wed Feb 06, 2019 10:30 pm

Re: Civil engineering feature implementation (Transportation Engineering)

Postby HakanSeven12 » Mon Feb 18, 2019 10:14 am

Joel_graff wrote:
Sat Feb 16, 2019 11:29 pm
Just finished building out my 10-mile alignment as a BSpline. The spline length varies from the known length by 1/16"... in almost 56,000 feet!

Calling it a success. :)
good news :) This workbench creating alignment from line and curve object. Can we add clothoid object to curves?
User avatar
Joel_graff
Posts: 1503
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Mon Feb 18, 2019 1:06 pm

HakanSeven12 wrote:
Mon Feb 18, 2019 10:14 am
Can we add clothoid object to curves?
I'm not sure why you'd want to do that... Do you have a use case / example?

EDIT:

I had to look it up, as I'd never heard the term before! You're talking about spiral curves... I haven't addressed those yet. I'm working strictly on tangents and circular arcs at the moment. It's certainly a feature that needs to be added, though.

What are the basic parameters that are needed to describe a spiral? That is,since the alignment is described in a CSV file (no UI at the moment), I need to know the key parameters that must be known in order to lay out the curve.

For example, arcs / tangents are described as a series of PI's. Each PI is located by northing / easting or distance / bearing from the previous PI. The curves themselves are described just by their radius or degree of curve.

So, if I want to describe a spiral / clothoid, how many additional parameters need to be given (that can't otherwise be calculated)? I think there's at least two - the length of spiral and the circular offset - but I'm not really sure.
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
HakanSeven12
Posts: 278
Joined: Wed Feb 06, 2019 10:30 pm

Re: Civil engineering feature implementation (Transportation Engineering)

Postby HakanSeven12 » Mon Feb 18, 2019 2:55 pm

Joel_graff wrote:
Mon Feb 18, 2019 1:06 pm
I'm not sure why you'd want to do that... Do you have a use case / example?

EDIT:

I had to look it up, as I'd never heard the term before! You're talking about spiral curves... I haven't addressed those yet. I'm working strictly on tangents and circular arcs at the moment. It's certainly a feature that needs to be added, though.

What are the basic parameters that are needed to describe a spiral? That is,since the alignment is described in a CSV file (no UI at the moment), I need to know the key parameters that must be known in order to lay out the curve.

For example, arcs / tangents are described as a series of PI's. Each PI is located by northing / easting or distance / bearing from the previous PI. The curves themselves are described just by their radius or degree of curve.

So, if I want to describe a spiral / clothoid, how many additional parameters need to be given (that can't otherwise be calculated)? I think there's at least two - the length of spiral and the circular offset - but I'm not really sure.
Yes Im talking about spiral. Its usefull for intersections. When we have a small radius curve we must add a spiral between curve and line for smooth transition. Sometimes I add one spiral before or after a curve sometimes use it for both sides. Spirals uses curve radius which its connected and spiral length input.

phpBB [video]
Attachments
Spiral.jpg
Spiral.jpg (63.4 KiB) Viewed 341 times
User avatar
Joel_graff
Posts: 1503
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Mon Feb 18, 2019 3:36 pm

HakanSeven12 wrote:
Mon Feb 18, 2019 2:55 pm
Yes Im talking about spiral. Its usefull for intersections.
Where I'm at, we don't use them that much. It's been a while since I've had to design one. We typically just default to two / three-center curves for intersection returns. However, I know the value of using a spiral diminishes with larger radii, so your application makes a lot of sense.

I'll have to take time to figure out just exactly what parameters need to be known (and how much can be calculated). I may give it a shot this week, but I can't promise much at the moment. :)
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
Posts: 4379
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby microelly2 » Mon Feb 18, 2019 5:48 pm

We can use the idea from here
https://youtu.be/qo8YunldpE8
to get models with linear change in curvature
I remember the intersting ideas of draft curve fitting by clothoids
http://people.csail.mit.edu/ibaran/pape ... Curves.pdf

and the work of Walton:
http://www.lara.prd.fr/_media/users/fra ... spline.pdf
https://core.ac.uk/download/pdf/81113166.pdf