[Ticket #4203] Loft improvement - PartDesign

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
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

Re: [Feature request] Loft improvement - PartDesign

Post by Pauvres_honteux »

microelly2 wrote:Ping
I tried your workbench "Nurbs" but only got a lot of error messages about missing most stuff.
Perhaps you have a working function for multi section surfaces and/or a fill, both taking tangent surfaces as arguements?
.
See third pdf, third slide/page for inspiration.
.
Surface_Loft_24.png
Surface_Loft_24.png (98.39 KiB) Viewed 1345 times
User avatar
Vincent B
Veteran
Posts: 4733
Joined: Sun Apr 05, 2015 9:02 am
Location: La Rochelle, France

Re: [Feature request] Loft improvement - PartDesign

Post by Vincent B »

Pauvres_honteux wrote: Sun Oct 20, 2019 9:31 am How to force it to follow your profile?
I don't understand your question, surfaces follow by them self.
Pauvres_honteux wrote: Sun Oct 20, 2019 9:31 am How to force it to be tangent to the other surfaces?
The profiles for the gordons are children of the interpolate curves. And cut with the split feature (partWB), so they are tangent.
But gordons feature doesn't make perfect tangent surface. :roll:
Pauvres_honteux wrote: Sun Oct 20, 2019 9:31 am The point that is supposed to rule the plane position along the Blend_Curve (aka Main curve). I can not find that point or see how you force it to follow the Blend_Curve (aka Main curve)?
They are attached "NormaltoEdge" on the TwoPointLine. as show your picture.
Attachments
Capture.PNG
Capture.PNG (13.77 KiB) Viewed 1324 times
User avatar
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

Re: [Feature request] Loft improvement - PartDesign

Post by Pauvres_honteux »

GlouGlou wrote: Sun Oct 20, 2019 12:55 pm I don't understand your question, surfaces follow by them self.
3:rd pdf, page 3->4. Check out our own groups, they contain the sketches supposed to rule the surface pieces, but they don't, not even close. They are used for approximated lines and curves and that doesn't cut it. Everything MUST be at the very least tangent, but preferably G2 or better.
GlouGlou wrote: Sun Oct 20, 2019 12:55 pm ... gordons feature doesn't make perfect tangent surface. :roll:
3:rd pdf, page 4, tangency is the very core and goal of this thread.
GlouGlou wrote: Sun Oct 20, 2019 12:55 pm They are attached "NormaltoEdge" on the TwoPointLine. as show your picture.
1:st pdf, page 7->9, the "point on curve" rule the whole thing and it's the whole purpose of this way of setting up the model.

To put it bluntly, as of now I can not see a working and simple way of creating this type of surfaces. Maybe @microelly2 has something up his sleeve?

If @microelly2 has nothing then I will create a feature request in Mantis.
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: [Feature request] Loft improvement - PartDesign

Post by microelly2 »

Pauvres_honteux wrote: Sun Oct 20, 2019 9:51 am
microelly2 wrote:Ping
I tried your workbench "Nurbs" but only got a lot of error messages about missing most stuff.
Perhaps you have a working function for multi section surfaces and/or a fill, both taking tangent surfaces as arguements?
I just work on the pyflow integration into FreeCAD.
on this way the nurbs wb functions will be ported step by step to pyflow nodes and become py3 compatible.
User avatar
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

Re: [Feature request] Loft improvement - PartDesign

Post by Pauvres_honteux »

Feature request: issue #4203
User avatar
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

Re: [Feature request] Loft improvement - PartDesign

Post by Pauvres_honteux »

microelly2 wrote: Wed Oct 23, 2019 7:08 am
emills2 wrote:
Chris_G wrote:
.
I did a few searches on google and duckduckgo with the following search string "surface tangency opencascade" and got some very interesting results:
.
Open CASCADE Technology 7.4.1.dev - Modeling Algorithms
Search for: "Ruled Surfaces".
.
Surface modeling. Part6
.
Continuity of Curves and Surfaces
.
And a PM:
Roman Lygin
March 6, 2010 at 12:34 PM

(Was heading back home from US, hence delay).

@Jelle:
First, it's not really a duplication. GeomPlate is a common underlying engine which produces the surface (from geometrical constraints).
BRepFill provides additional API which accepts edges (and optionally faces) and creates a *face* bounded by those edges. Compare the following two pictures - Surface and Face, which correspond to the face from the original post. The former results from using GeomPlate, the latter - from BRepOffsetAPI_MakeFilling (internally use BRepFill_Filling). Thus, BRepFill adds extra job by creating a real face not just an underlying surface. In CAD Exchanger, for instance, I only need a surface, as the face boundaries are not its constraints. In some algorithms, working at BRep level can be more convenient to free developer from extra need to reconstruct all face boundaries.

Given this above, the difference from Rhino should not be an issue, right ? GeomPlate algorithm itself is supposed to only satisfy constraint requirements, they do not necessarily become natural surface boundaries. The strong impact, I believe, has the initial approximation surface which can be fed into the algorithm (plane if none is provided). And let's keep in mind that a surface only have 4 natural boundaries. I'm curious what will be Rhino behavior if you specify 5 or more curve constrains which you expect to be boundaries. Can you try that ?
Anyway, boundaries in Open CASCADE come for face, not surface. That's why what you are really interested in eventually, is a face.

As for naming consistency, well, this is not the strongest part of Open CASCADE ;-). Too many components, too many owners, lack of synchronization, etc. It's always a challenge to stay consistent in a large development team (be it Open CASCADE or any other) and it takes extra efforts to preserve it long term.

Hope this helps understand this stuff a bit better ;-)
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: [Feature request] Loft improvement - PartDesign

Post by microelly2 »

Pauvres_honteux wrote: Sat Jan 04, 2020 11:11 pm
microelly2 wrote: Wed Oct 23, 2019 7:08 am
it tooks me some time to get surfaces of different degrees combined
I will publish the code next days after cleanup and testing
https://forum.freecadweb.org/viewtopic. ... 20#p358146
User avatar
Pauvres_honteux
Posts: 728
Joined: Sun Feb 16, 2014 12:05 am
Location: Far side of the moon

Re: [Feature request] Loft improvement - PartDesign

Post by Pauvres_honteux »

@microelly2:
This is truly epic!!!
Bravo! Bravo!!
We've got working parametric surface curvature continuity!!! *happy dance* :P
Post Reply