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
Posts: 1540
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Thu Sep 19, 2019 1:49 am

vocx wrote:
Thu Sep 19, 2019 1:37 am
Ha. Well... how does this image reflect the work of Trails? How is it any different from what you can create with Draft? I think we need a more impressive image, that is more transportationy engineery.

What do you say if you come up with a better image in a few days after you rewrite the classes? I mean, there is no rush, I just wanted to know if there was already a nice image to present the workbench. After all, the release notes don't have to be finished right now.
Without watching the video, you can't really tell. But the behavior of the trackers is entirely unlike anything that exists in FreeCAD... outside of sketcher.

I won't really have anything more impressive than that, I'm afraid.
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
vocx
Posts: 1652
Joined: Thu Oct 18, 2018 9:18 pm

Re: Civil engineering feature implementation (Transportation Engineering)

Postby vocx » Thu Sep 19, 2019 3:22 am

Joel_graff wrote:
Thu Sep 19, 2019 1:49 am
...

I won't really have anything more impressive than that, I'm afraid.
Okay, then it's fine. Also, a link to the video would be nice (which one? Again, many videos in this thread).

I personally dislike the use of animated GIFs in the release notes; such animations and videos can be provided through a link. In my mind the release notes should be something static, like a poster, or something you can read in a paper.
User avatar
Joel_graff
Posts: 1540
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Thu Sep 19, 2019 3:50 am

vocx wrote:
Thu Sep 19, 2019 3:22 am
Okay, then it's fine. Also, a link to the video would be nice (which one? Again, many videos in this thread).

I personally dislike the use of animated GIFs in the release notes; such animations and videos can be provided through a link. In my mind the release notes should be something static, like a poster, or something you can read in a paper.
https://youtu.be/QRTd7056yy8

I tend to agree on the gifs, actually. Still, a little animation can go a long way. If only the Wiki would render them...
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: 1540
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Tue Oct 15, 2019 12:09 pm

Posting this video from @mciroelly2 here for reference:

phpBB [video]



Along with his forum thread implementing swept-path analysis in PyFlow:
https://forum.freecadweb.org/viewtopic. ... 9&start=80

FreeCAD turns link:
(https://github.com/joelgraff/freecad.turns)


Just some thinking "out loud" for my own benefit:

I'm not entirely sure what sort of workflow is ideal for swept-path analysis. I tend to prefer more deliberately transactional workflows, where editing an object occurs in an entirely transitional state with no formal changes until a user specifically commits them (to borrow a database paradigm).
That may not be suitable here, as there's no 'editing' taking place, as much as there is just simple object generation.
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: 1540
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Thu Nov 14, 2019 4:59 pm

Just an excuse to bump the thread. :)

A little progress on FreeCAD Turns. This is an example vehicle with Ackermann steering functioning properly. Also added steering angle limits, since most cars can't turn their wheel backwards.

Also, the graphics are being done entirely with pivy_trackers. It's a nice use case and has helped me spot a few problems / add a few small features to the library.
turns_vehicle.gif
turns_vehicle.gif (197.36 KiB) Viewed 123 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
triplus
Posts: 8748
Joined: Mon Dec 12, 2011 4:45 pm

Re: Civil engineering feature implementation (Transportation Engineering)

Postby triplus » Thu Nov 14, 2019 8:33 pm

Not yet level 5 autonomous vehicle, as you still have to press the buttons manually, but getting there!
User avatar
Joel_graff
Posts: 1540
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby Joel_graff » Thu Nov 14, 2019 11:15 pm

triplus wrote:
Thu Nov 14, 2019 8:33 pm
Not yet level 5 autonomous vehicle, as you still have to press the buttons manually, but getting there!
That's coming soon. ;)
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: 4411
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: Civil engineering feature implementation (Transportation Engineering)

Postby microelly2 » Fri Nov 15, 2019 5:34 am

Joel_graff wrote:
Thu Nov 14, 2019 4:59 pm
Also, the graphics are being done entirely with pivy_trackers. It's a nice use case and has helped me spot a few problems / add a few small features to the library.
Nice to see this, so it's time for me to learn some more tricks from your code concerning pivy usage.