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
microelly2
Posts: 4329
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: Civil engineering feature implementation

Postby microelly2 » Thu Jul 13, 2017 5:13 pm

here some more prototypes for
clone, copy and reuse sketches from a sketch collection

phpBB [video]

phpBB [video]


my idea is to find methods which allow to replace low level detailed components by finer ones.
User avatar
Joel_graff
Posts: 1456
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation

Postby Joel_graff » Thu Jul 13, 2017 5:19 pm

Kunda1 wrote:
Thu Jul 13, 2017 3:59 pm
@Joel_graff ping. Any proof of concepts yet ?
I haven't done anything lately. microelly2 was working on adapting the sketchobject parenting method to see it it could accommodate the hierarchy I described. Without that, there's not much to do at the moment. I also seem to have issues trying to get the sketchobjectpython scripts to work - it won't pick up on the 'pyob' module, for some reason.
You can find the FreeCAD Trails workbench for transportation engineering on my github at:
https://www.github.com/joelgraff/freecad.trails
User avatar
microelly2
Posts: 4329
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: Civil engineering feature implementation

Postby microelly2 » Thu Jul 13, 2017 5:32 pm

Joel_graff wrote:
Thu Jul 13, 2017 5:19 pm
I also seem to have issues trying to get the sketchobjectpython scripts to work - it won't pick up on the 'pyob' module, for some reason.
at the moment I put all my work into the nurbs workbench, there the pyob module is integrated.
I work on the sketch driver for the ribs and it's for me a time of learning, how the sketches can interact.
I have to learn how to catch the exceptions of the sketcher solver to bring a system back to a state in the case
when a change is not possible.
User avatar
Joel_graff
Posts: 1456
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation

Postby Joel_graff » Fri Jul 14, 2017 10:11 pm

microelly2 wrote:
Thu Jul 13, 2017 5:32 pm
at the moment I put all my work into the nurbs workbench, there the pyob module is integrated.
I work on the sketch driver for the ribs and it's for me a time of learning, how the sketches can interact.
I have to learn how to catch the exceptions of the sketcher solver to bring a system back to a state in the case
when a change is not possible.
Ok, I'll see if I can get the nurbs workbench going.

The videos look really good!
You can find the FreeCAD Trails workbench for transportation engineering on my github at:
https://www.github.com/joelgraff/freecad.trails
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

Re: Civil engineering feature implementation

Postby abdullah » Fri Jul 14, 2017 11:29 pm

Regarding the "solver failure" a couple of pages of posts ago, I found it strange. In my experience, end-point-to-end-point tangency works quite nicely.

If there is still interest that I look into it, if you can save the sketch just in the moment before adding the offending arc, you could open a ticket with it. I will look into it in August-September.

Replying to your question. I am not aware of any way of forcing the solver to comply with ones undeclared wishes. The only way that generally works is declaring the wishes by providing a solution as close as possible before actually asking the solver to solve. The solver, as most people, is lazy enough to choose the easiest way out ;)
User avatar
Kunda1
Posts: 5149
Joined: Thu Jan 05, 2017 9:03 pm

Re: Civil engineering feature implementation

Postby Kunda1 » Sat Jul 15, 2017 12:06 am

abdullah wrote:
Fri Jul 14, 2017 11:29 pm
If there is still interest that I look into it, if you can save the sketch just in the moment before adding the offending arc, you could open a ticket with it. I will look into it in August-September.
joel_graff wrote:...
@joel_graff please open an issue in the tracker and link back to this thread
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
User avatar
Joel_graff
Posts: 1456
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation

Postby Joel_graff » Sat Jul 15, 2017 2:14 am

I should mention there is no "offending arc" per se. It is, though, as abdullah states - the solver's taking the easiest way out, and if two items are not closely aligned, they're subject to being moved - I intuitively understood that's how the solver is meant to function. But, of course, it creates problems in our use case.

Thus, either we write code to generate geometry that matches the existing tangents closely (which I have an algorithm about half-written to do that), or add functionality to FreeCAD that allows us to "lock down" certain geometry for the solver - much like the lock constraint does.

I will open an issue for the latter option above.
You can find the FreeCAD Trails workbench for transportation engineering on my github at:
https://www.github.com/joelgraff/freecad.trails
User avatar
Joel_graff
Posts: 1456
Joined: Fri Apr 28, 2017 4:23 pm
Contact:

Re: Civil engineering feature implementation

Postby Joel_graff » Sat Jul 15, 2017 3:44 am

Posted as feature 003127. Starting to see that maybe I should have split it into two - a bug for the arc behavior and a feature for the alignment behavior.. ?
You can find the FreeCAD Trails workbench for transportation engineering on my github at:
https://www.github.com/joelgraff/freecad.trails
User avatar
Kunda1
Posts: 5149
Joined: Thu Jan 05, 2017 9:03 pm

Re: Civil engineering feature implementation

Postby Kunda1 » Sat Jul 15, 2017 3:47 am

Joel_graff wrote:
Sat Jul 15, 2017 3:44 am
Posted as feature 003127. Starting to see that maybe I should have split it into two - a bug for the arc behavior and a feature for the alignment behavior.. ?
I assigned issue #3127 to Abdullah
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
matt
Posts: 2
Joined: Mon Jul 17, 2017 2:26 pm

Re: Civil engineering feature implementation

Postby matt » Mon Jul 17, 2017 2:43 pm

as a sidenote, alignment is implemented in ifc as ifcalignment

If I understood it correctly, parsing an "ifc-alignment-file" was implemented recently in ifcopenshell

maybe that helps?