-
General Changes:
-
CPACS 3 compatibility, including the new component-segment coordinate-system definition.
The new cpacs definition of the wing structure allows more precise modelling of ribs and spars. -
Guide curve support for wings and fuselages for high-fidelity surface modeling according to the CPACS 3 defintion.
-
Note: TiGL 3 does not yet contain the control surface device modeling. This will be included into TiGL 3.1.
-
New modeling of nacelles.
-
New modeling of pylons.
-
New modeling of fuselage structure elements like doors, beams, frames and pressure bulkheads.
-
Automated creation of CPACS reading and writing routines. This allows much
better vality checks of the CPACS document. -
The "GetPoint" function of wings / fuselages operate now on the actual wing/fuselage shape (e.g. in case of guide curves). Before, these function operated on the linear loft, which is different from the actual shape. To switch back to the old behavior, the new function
::tiglWingSetGetPointBehavior
and::tiglFuselageSetGetPointBehavior
must be used.
Note: Using the actual smooth wing shape,::tiglWingGetUpperPoint
and::tiglWingGetLowerPoint
do not use the wing chord surface anymore as a reference coordinate system, but relies on the wing surface parametrization.
This change was required, since there would be no other way to retrieve points around the leading edge, that is on front of the trapezoidal chord surface. -
Improved speed of
::tiglFuselageGetPoint
function. Also, the paramter xsi is now interpreted as the relative
curve parameter instead of the relative circumference. -
Improved robustness of fuselage loft computation.
-
The TIGL library was renamed to tigl3. The TIGLViewer was renamed to tiglviewer-3.
-
The windows builds are now using the Visual C++ 2015 Toolchain.
-
TiGL now requires a C++ 11 capable compiler. Minimum required compilers are gcc 4.8 or Visual C++ 2015.
-
-
New API functions:
::tiglWingComponentSegmentPointGetEtaXsi
computes the eta/xsi coordinates of a point on the component segment.::tiglIntersectWithPlaneSegment
computes the intersection of a CPACS shape (e.g. wing) with a plane of finite size.::tiglGetCurveIntersection
to compute the intersection of two curves.::tiglGetCurveIntersectionPoint
to query the intersection point(s) computed by::tiglGetCurveIntersection
.::tiglGetCurveIntersectionCount
returns the number of intersection points computed by::tiglGetCurveIntersection
.::tiglGetCurveParameter
projects a point onto a curve and returns the curve parameter of the point.::tiglFuselageGetSectionCenter
computes the center of a fuselage section defined by its eta coordinate.::tiglFuselageGetCrossSectionArea
computes the area of a fuselage section.::tiglFuselageGetCenterLineLength
computes the length of the centerline of the fuselage.::tiglCheckPointInside
checks, whether a point lies inside some object (defined by its uid).::tiglExportFuselageBREPByUID
and::tiglExportWingBREPByUID
::tiglSetExportOptions
sets exports-specific options::tiglFuselageSetGetPointBehavior
and::tiglWingSetGetPointBehavior
to adjust, whether the get point functions should return linear loft values or points on the actual shape.::tiglSetDebugDataDirectory
specifies the directory of the crashdump data.
-
Changed API:
- Removed deprectated intersection functions. These include
tiglComponentIntersectionLineCount
tiglComponentIntersectionPoint
tiglComponentIntersectionPoints
- Removed function
tiglExportVTKSetOptions
. This is now replaced by::tiglSetExportOptions
tiglWingGetWettedArea
now returns surface area of the wing, if the wing has no parent. Previously this caused a crash.
-
Fixes:
- TiGL Viewer: Fixed missing fonts on macOS
-
Language bindings:
- New python bindings allow to access the whole C++ API of TiGL. This bindings can be installed via conda.
- Python: the tiglwrapper.py module was renamed to tigl3wrapper.py. The Tigl object is renamed to Tigl3.
- Java: the tigl package moved from de.dlr.sc.tigl to de.dlr.sc.tigl3
-
TiGL Viewer:
- Display of reflection lines to inspect surface quality.
- Display of textured surfaces.
- Angle of perspective can be adjusted using the scripting API with
setCameraPosition
andsetLookAtPosition
.
This allows e.g. to create videos of the geometry. - Option to display face names.
- Number of U and V iso-lines can be adjusted independently.
- New design