Yeah, I think we're on the same page, here. The SC and PI are really what define the curve's position, so unless the spiral can't be resolved, we essentially treat the TS as a floating coordinate...HakanSeven12 wrote: ↑Wed Jul 24, 2019 7:47 pm I think we must fix error at spiral infinity side because at infinity side, spiral converge to flat line. So we spread error at TS. Almost it's not change alingment geometry.
Civil engineering feature implementation (Transportation Engineering)
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Be nice to others! Read the FreeCAD code of conduct!
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Re: Civil engineering feature implementation (Transportation Engineering)
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
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Re: Civil engineering feature implementation (Transportation Engineering)
A small update of what I've been doing lately with the trails 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
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
Re: Civil engineering feature implementation (Transportation Engineering)
From the beginning i had a feeling using Sketcher workbench directly likely won't be the best fit. As for the presented interaction capabilities. Nice.
P.S. Hopefully in the future Pivy could have more support for achieving such things. And seeing such development, that is why having Python bindings for FreeCAD viewport is basically a must.
P.S. Hopefully in the future Pivy could have more support for achieving such things. And seeing such development, that is why having Python bindings for FreeCAD viewport is basically a must.
Re: Civil engineering feature implementation (Transportation Engineering)
Fantastic update. Much applause for the work to drop Sketcher and go your own way. Hopefully this proof of concept can keep pivy and coin3d updated and relevant
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Re: Civil engineering feature implementation (Transportation Engineering)
As I was writing this, the thought occurred to me.. why don't we have a FreeCAD Python devkit? That led me to the next question... Why don't we have a developer's workbench? Or would that sort of thing be useful?
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
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
Re: Civil engineering feature implementation (Transportation Engineering)
Don't we? One of the first thing one notices, when starting FreeCAD, is built in Python interpreter. Hence everything just works in a seamless way. Bindings for the viewport are available by default.
P.S. Or maybe you are talking about, on why there are not more initiatives like this:
https://forum.freecadweb.org/viewtopic.php?t=21808
There could be more of that in the future.
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Re: Civil engineering feature implementation (Transportation Engineering)
It has occurred to me that there are numerous snippets of reusable code scattered throughout the forums and workbenches in python, but no developer's library, of sorts, to contain them. pivy is something like that, of course, and the stuff I'm writing might be useful in a pivy 2D graphics library context, perhaps.
But having a workbench that can act as a developers playground... maybe allows a dev to add certain python libraries of code to their own WB automatically (which seems like a very small thing to do) seems like it'd make it a fun little tool that would make you just want to explore all the different recipes / snippets that are in it. On the flip side, it also seems like a potential maintenance hassle with lots of broken / unusuable / outdated code.
So whether a 'developer's workbench' is of value, I can't really say. I think it would be, though I'm not sure what that should look like.
---
On a slightly different topic, as I've worked on this horizontal alignment tool, I've come to appreciate looking at the FreeCAD task panel (and the associated task) as a sort of miniature, single-function workbench. As I wrote the tracker classes, I started creating global state singletons to track things like mouse position, drag state, view state, and the selection state. All of this duplicates functionality that's built into FreeCAD, but the "global" singletons have a scope that's limited to the currently active task. That allows me to re-implement a customized version of these functions tailored to the specific task at hand.
So, I suppose the most useful idea I have would be to develop (or at least outline) a FreeCAD task framework in Python. Perhaps what I have in mind would be a further development for the new workbench starter kit or something...
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
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
Re: Civil engineering feature implementation (Transportation Engineering)
Sounds reasonable.
P.S. I wonder if much of that is due to a developer oriented documentation currently a bit lacking? Documentation is rather focused on people using FreeCAD. People developing FreeCAD indeed must gather info from different places, a bit here and a bit there. But i don't know on how to improve that. Without more people being capable of writing such documentation getting involved, therefore developers. In addition external libraries, such as mentioned Pivy, documentation is usually available elsewhere. FreeCAD documentation therefore at best providing some information and examples. If a workbench could help i don't know. For such purposes i guess developers already look for clues in existing workbenches.
P.S. I wonder if much of that is due to a developer oriented documentation currently a bit lacking? Documentation is rather focused on people using FreeCAD. People developing FreeCAD indeed must gather info from different places, a bit here and a bit there. But i don't know on how to improve that. Without more people being capable of writing such documentation getting involved, therefore developers. In addition external libraries, such as mentioned Pivy, documentation is usually available elsewhere. FreeCAD documentation therefore at best providing some information and examples. If a workbench could help i don't know. For such purposes i guess developers already look for clues in existing workbenches.
Re: Civil engineering feature implementation (Transportation Engineering)
Some documentation efforts are happening in this GSOC https://forum.freecadweb.org/viewtopic. ... 91#p329391
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Re: Civil engineering feature implementation (Transportation Engineering)
Another update on the horizontal alignment design tool I'm working on.
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
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers