Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cross-section of fuselages segments with guide curves not interpolated correctly. #985

Open
LucasKugler opened this issue Dec 19, 2023 · 5 comments

Comments

@LucasKugler
Copy link

I have noticed that, when generating fuselages with guide curves, certain sections show a strange behaviour: instead of keeping a somewhat circular or ovoid shape like the sections that are being interpolated, the cross-section becomes almost diamond shaped, i.e. the faces between the guide curves get flattened.

This happens only when there is a large difference in size between the sections, and gets stronger when the size difference increases. In turn, large size differences are not a problem if there is no guide curve.

It would be nice if this could be fixed, as the models look much cleaner with the guide curves, and it avoids to clutter the cpacs file with dozens of sections. But right now the surfaces don't look right.

Screenshots

Screenshot 2023-12-19 093541
Screenshot 2023-12-19 093733

@joergbrech
Copy link
Contributor

💐 Thanks for opening your first issue! Note that this is an artifact of the Coons patch algorithm which is still used to generate CPACS geometries from curve networks.

That being said, I don't know why the Coons patch algorithm behaves this way and there is a good chance that the Gordon surface algorithm as an alternative might resolve the issue.

Now that being said examining what happens in the Coons patch algorithm and/or fully migrating to Gordon surfaces will take some time and we currently don't have the capacity for it.

In the meantime, if you could provide a minimal reproducible example, it could help us speed up the process and I might be able to help with a workaround in python (that is a script that extracts the curve network and re-generates the surface with the Gordon algorithm)

@LucasKugler
Copy link
Author

LucasKugler commented Dec 19, 2023

Thanks for the feedback! I forgot to mention that the CPACS example file simpleAircraft exhibits this behaviour.
I have also attached an additional example.
tigl_issue#985_example.zip

@joergbrech
Copy link
Contributor

joergbrech commented Dec 20, 2023

The Gordon surface algorithm creates a "better looking" loft:

tigl_issue_985_gordon
tigl_issue_985_gordon2

The workaround using a python script I mentioned currently only works for wings and not fuselages due to #986.

@LucasKugler
Copy link
Author

Much better indeed! That's the output I would expect 👍
So if I understand correctly, the workaround is dependent on #986 being fixed first ?

@joergbrech
Copy link
Contributor

Yes: The workaround I had in mind was to use the internal python bindings of tigl to extract the section and guide curve wires of the fuselage and then use them as input to the gordon surface algorithm to create the fuselage shell. The guide curve wires are stored in the class CCPACSFuselageSegments which is unfortunately not exposed as part of the python bindings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants