Releases: DLR-SC/tigl
CPACS Creator 0.2.0
We are happy to update the pre-release of CPACS Creator to version 0.2.0.
This release does not include any new CPACS Creator features, but updates the TiGL version to 3.4 including a minor bug fix (b9c75f1).
This also ensures the compatability with CPACS 3.4.
Malo Drougard from CFS Engineering did an awesome job and implemented this for the DLR.
Please look here for more information: https://dlr-sc.github.io/tigl/cpacs-creator-pre-release.html
Documentation: https://dlr-sc.github.io/tigl/doc/cpacscreator-0.2/index.html
TiGL 3.4.0
Version 3.4.0
12/11/2024
-
General changes:
- Support CPACS 3.4 (#1027)
- Implemented standard fuselage profiles, i.e. rounded rectangle profiles (#1005) and superellipses (#1021).
- CPACS allows prescribing kinks at (fuselage) profiles at given parameters. At the same time, guide curves must be prescribed at a relative circumference of the profile, which does not necessarily coincide with the parametrization of the profiles. In consequence, it was nearly impossible for a user to prescribe a guide curve exactly at a profile kink. This was fixed by allowing guide curves to be placed at a curve parameter that coincides with the prescribed parameter in the profile definition. Now guide curves can optionally be prescribed using
fromParameter
andtoParameter
instead offromRelativeCircumference
andtoRelativeCircumference
. (#1015)
-
Fixes:
- In Debug Mode, the Lofting algorithm now throws an exception, if the generation of the Side Caps fail. The intention behind having the check only in Debug-Mode is that the geometric validity check is very generic and may be too restrictive. In addition, it may be expensive. (#999)
- Fixed an issue, where approximate reparametrization of a B-Spline Curve resulted in non-negligable geometric changes of the B-Spline, especially if parameters are prescribed for a profile in CPACS. This new reparametrization is incompatible with a previous reparametrization applied to fuselage profiles, that distributed the knots for an overall cleaner geometry. Now the knot distribution is turned off, if parameters are prescribed in CPACS. (#1007)
- CPACS 3.5 introduces a new way of prescribing the version of the CPACS data set, which means that newer CPACS files could not be interpreted by TiGL anymore. Now, TiGL can open CPACS 3.5 files and raises a warning that the CPACS version is newer than the one supported by TiGL (#1010).
- Fix hard crash in Wing Geometry generation with cutouts, if there are no cutouts defined in CPACS. (#1023)
Contributors
@sdeinert, @merakulix @svengoldberg @joergbrech @MarAlder
Full Changelog: v3.3.1...v3.4.0
TiGL 3.3.1
Version 3.3.1
14/03/2024
-
General changes:
- Improve documentation and update installation instructions.
- TiGL now supports Opencascade Technology 7.6.2 (#973).
- Extension of the functionality of
::tiglwinginterpolatexsi
to work on a single segment that is not part of a component segment (#970). The function
is now generalized, so that the start and end uid can be either a segment or component segment and the two do not have to be related to each other. - TiGL now supplies an environment.yml file that can be used with conda to install all build requirements of tigl into an Anaconda environment.
- Renamed the function
::CCPACSConfiguration::GetAirplaneLenth
to::CCPACSConfiguration::GetAirplaneLength
(#992).
-
Fixes:
- Fix bug in guide curve transformation. The rX-Direction was wrongly interpreted with respect to global coordinates, not wing coordinates (#975).
- Fix for hard crash if guiceCurves node is present but empty in wing segment (#962).
- Fix bug related to the calculation of Euler angles from a given rotation matrix (#870).
-
TiGLViewer:
- Improved visual quality of zebra stripes (#974).
Contributors
@MarAlder, @svengoldberg, @joergbrech, @AntonReiswich, @merakulix, @rainman110
Full Changelog: v3.3.0...v3.3.1
TiGL 3.3.0
Version 3.3.0
02/05/2023
-
General changes:
- Support CPACS 3.3 (#883). The following CPACS 3.3 functionality is not yet supported: stringerFramePosition definition at fuselage section (#915), landing gears (#908), parametric fuselage profiles (#909).
- Implemented the upcoming CPACS 3.5 feature for modeling ducts. It allows the user to create duct cutouts in wings and fuselages. TiGL was extended to support ducts and duct assemblies for aircraft configurations. It is to mention, that currently wings and fuselages are the only components that enable duct cutouts (#881).
- Generate doxygen documentation for all classes, not just the API functions (#943).
-
New API functions:
- New functions
::tiglConfigurationSetWithDuctCutouts
and::tiglConfigurationGetWithDuctCutouts
that set and get the flag whether the ducts defined in CPACS shall be removed from the configuration using Boolean operations. - New function #::tiglGetCrossSectionArea' that allows cutting either a whole configuration or single parts with a plane and calculating the cross section area. This functionality can be used for the application for Whitcomb's area rule (#763).
- New functions
-
Fixes:
- Adapt get_tigl_tixi.sh to properly download the tixi3 package for debian (#884).
- Export fuselages and wings as a whole and not segmentwise in the CAD export of the unfused configuration (#897).
- Fix typos (#923, #924, #925).
- Fix bug concerning the conversion of the internal parametrization of the faces of a wing to contour coordinates (#930).
- Update CI (#918, #839).
- Fix a compilation error with gcc 12.2 (#948).
- Fix bug in
::tiglWingGetSegmentUpperSurfaceAreaTrimmed
(#961).
-
TiGLViewer:
- Implement high dpi screen support (#953).
TiGL 3.2.3
Version 3.2.3
09/03/2022
-
Fixes:
- Disabled check, if wing cells can be trimmed rather than cut, even if they are not defined
by contour coordinates. This check was put in place for better performance and robustness,
because with trimmed curves expensive and error-prone boolean operations can be avoided.
However, the current implementation of the check relies on some hard to tune tolerances and
led to false positives and thus faulty wing cell geometries (issues #865, #869). - Fixed a bug, where the trailing edge of a wing cell could not be defined by referencing a
spar (issue #864). - The class
::CCPACSEnginePosition
has been added to the swig interface (issue #858). Without
this it was previously impossible to access the transformed engine nacelle geometry from Python.
- Disabled check, if wing cells can be trimmed rather than cut, even if they are not defined
TiGL 3.2.2
17/11/2021
-
Highlights / General changes:
- Added support for canard style flaps. This allows to position the hinge points
outside of the wing by providing an additional translation vector (issue #816).
- Added support for canard style flaps. This allows to position the hinge points
-
Fixes:
- Fixed CPACS versions header not correctly parsed, if the version number contained a patch version (issue #830).
- Fixed multiple errors that occured during the computation of wing cells (issues #815, #829, #840).
- Fixed computation of the wing aspect ratio (issue #827).
- Fixed crashes in TiGL Viewer when displaying control surface devices (issue #851).
- Improved robustness of export functions. The export now tries to export as much as possible,
even if one component failed to built (issue #853).
-
Bindings:
TiGL 3.2.1
Version 3.2.1
01/07/2021
This is a bugfix release!
- Fixed function
::tiglWingGetSegmentEtaXsi
ignoring the GetPointBehaviour that was introduced in TIGL 3.0.0 (#808 ): Since TiGL 3.0.0, the getPoint functions now use the parametrization of the wing surface geometries instead . This behaviour can be switched back to the old bevahiour using::tiglWingSetGetPointBehavior
. Before fixing now::tiglWingGetSegmentEtaXsi
, the functions always used the old behaviour such that the back and fort computation etaXsi -> point -> etaXsi did not result in the same values.
TiGL 3.2.0
Version 3.2.0
28/05/2021
-
Highlights / General changes:
- Full support of CPACS 3.2
- TiGL 3.2 is shipped with OpenCASCADE 7.4.0 and is now compatible with pythonOCC 7.4.0. This includes all TiGL releases and Conda packages.
- Improved computation speed of wing cell geometries.
- Implemented cell definition with contour coordinates. This feature will be part of CPACS 3.4.
- A new curve / curve intersection algorithm. This is used e.g. for the computation of curve network interpolation and was necessary due to a regression in OpenCASCADE 7.4.0. The new algorithm is designed to find all intersections between two curves within a user defined tolerance.
-
New API functions:
- New function
::tiglWingInterpolateXsi
, that generalizes the functions::tiglWingComponentSegmentGetSegmentIntersection
and::tiglWingComponentSegmentComputeEtaIntersection
. Both old functions are now deprecated.
- New function
-
Fixes:
- Fixed fuselage walls transformation that did not respect the fuselage transformation before.
- Fixed fuselage profiles, that had different positions than y=0 at start or end point.
- Fixed crash, if first guide curve point is (0,0,0) or last point is (0,1,0).
- Fixed wrong position of trailing edge device borders, if referenceUID is referring to a segment.
- Fixed a bug in
::tiglWingGetUpperPoint
and::tiglWingGetLowerPoint
, if the leading edge has zero size.
-
Python Bindings:
- The tigl3 Conda packages depend not on pythonOCC-core 7.4.0. If you plan to migrate your code, please notice that pythonOCC and TiGL don't use OpenCASCADE handles anymore. For more insights, please see here: tpaviot/pythonocc-core#583
TiGL 3.1.0
Version 3.1.0
27/07/2020
-
General changes:
- Full support of CPACS 3.1
- Backport support for control surface devices from TiGL 2. It is now possible to manipulate trailing edge devices
with TiGL 3.1 using the TiGL Viewer, the API or the language bindings. - Added support for fuselage walls
- Support for fuselage profiles with kinks.
- Added support for new symmetry flags
inherit
andnone
. The symmetry flaginherit
causes a geometric
component to inherit the symmetry flag from its parent geometry. This was and still is the default behavior in
TiGL. The new symmetry typenone
allows the addition of components to mirrored geometries without respecting the
symmetry of the parent. - Substantially improve performance of
::tiglCheckPointInside
. - Reduce complexity of the fuselage geometry: The profiles of the fuselage are reparametrized to create simpler a
B-spline surface. This will improve robustness of boolean operations and increase the general performance at the
cost of a small error in the geometry creation, that should be negligable in most cases.
-
New API functions:
-
Added new api function
::tiglComponentGetType
-
For control devices, the
deflection
value has been renamed tocontrol_parameter
. Therefore the functions::tiglControlSurfaceGetMinimumDeflection
::tiglControlSurfaceGetMaximumDeflection
::tiglControlSurfaceGetDeflection
::tiglControlSurfaceSetDeflection
are marked as deprecated. Please use the new functions
::tiglControlSurfaceGetMinimumControlParameter
::tiglControlSurfaceGetMaximumControlParameter
::tiglControlSurfaceGetControlParameter
::tiglControlSurfaceSetControlParameter
instead.
-
-
Fixes:
- Fixes compilation errors with MinGW and VS 2019
- Fixes compilation errors with qt4
- Fixes compilation errors with OpenCascade 7.4.0 and OCCT 7.2
- Several fixes to internal python bindings
- Several fixes to control devices code.
- Fixes invalid segment meta data in VTK export
- fixing problem in ReadCPACS when using rotors (invalidation during read of segments caused error in lazy creation of attached rotor blades)
-
TiGLViewer:
- Back-ported control surfaces to TiGL Viewer and improved design of flap dialog.
- Added option to draw face boundaries in TiGl Viewer
CPACS Creator 0.1
We are happy to show you the first pre-release of CPACS Creator 0.1.
Malo Drougard from CFS Engineering did an awesome job and implemented this for the DLR.
Please look here for more information: https://dlr-sc.github.io/tigl/cpacs-creator-pre-release.html
Documentation: https://dlr-sc.github.io/tigl/doc/cpacscreator-0.1/index.html