Skip to content

Releases: DLR-SC/tigl

TiGL 3.0.0

24 Sep 16:47
4403e48
Compare
Choose a tag to compare
  • 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 and setLookAtPosition.
      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

TiGL 3.0.0-rc2

13 Jun 05:04
ecd6b33
Compare
Choose a tag to compare
TiGL 3.0.0-rc2 Pre-release
Pre-release
  • 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 be backwards compatible, ::tiglWingGetUpperPoint, ::tiglWingGetLowerPoint, and ::tiglFuselageGetPoint still use the linear loft by default.
      If the actual smooth surface is desired, the new function ::tiglWingSetGetPointBehavior and ::tiglFuselageSetGetPointBehavior must be used to enable smooth lofts.
      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.
  • Changed API:

    • Removed deprectated intersection functions. These include
      • tiglComponentIntersectionLineCount
      • tiglComponentIntersectionPoint
      • tiglComponentIntersectionPoints
    • Removed function tiglExportVTKSetOptions. This is now replaced by ::tiglSetExportOptions
  • 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 and setLookAtPosition.
      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

TiGL 2.2.3

28 Jun 11:10
Compare
Choose a tag to compare
  • New API functions:
    • Backport API function tiglCheckPointInside that checks wether a point lies inside a given geometric object
    • New API function tiglGetGuideCurvePoints to obtain the guide curve points on the fuselage/wing for a given guide curve.

TiGL 2.2.2

11 Apr 12:25
28f6f69
Compare
Choose a tag to compare
  • General changes:

    • Modelling of control surfaces as trailing and leading edge devices
    • The wing is now written a one entity instead of several segments in the file exports
  • New API functions:

    • tiglControlSurfaceGetDeflection to query the deflection of the given control surface device
    • tiglControlSurfaceSetDeflection to set the deflection of the given control surface device
    • tiglGetControlSurfaceCount to get the number of control surface devices
    • tiglGetControlSurfaceType to query the type of the control surface device (leading + trailing edge device)
    • tiglGetControlSurfaceUID to query the UID of the control surface device
    • tiglControlSurfaceGetMinimumDeflection and tiglControlSurfaceGetMaximumDeflection to
      get the minimum and maximum deflection of the control surface device
  • Fixes:

    • Fixed bug JAVA bindings getProfileSplines (issue #357)
  • TiGLViewer:

    • The control surface devices can be extended and retracted from inside the GUI

    • Added functions to set camera positions. The following functions where added:

      • setLookAtPosition(x, y, z)
      • setCameraPosition(elevationAngle, azimuthAngle)

      They can be used from the console to e.g. create movies.

TiGL 3.0.0 RC1

18 Dec 17:25
Compare
Choose a tag to compare
TiGL 3.0.0 RC1 Pre-release
Pre-release
  • General Changes:

    • CPACS 3 compatibility, including the new component-segment coordinate-system math.
      Note: As CPACS 3 is not officially released yet, the development version of CPACS as of December 18th, 2017 is used.
      Note: The wing structure is not yet adapted to CPACS 3 but uses the 2.3 definition.
    • Guide curve support for wings and fuselages for high-fidelity surface modeling according to the CPACS 3 defintion.
    • Automated creation of CPACS reading and writing routines. This allows much
      better vality checks of the CPACS document.
    • Improved speed of ::tiglFuselageGetPoint function. Also, the paramter xsi is now interpreted as the relative
      curve parameter instead of the relative circumference.
    • 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.
  • 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
  • Changed API:

    • Removed deprectated intersection functions. These include
      • tiglComponentIntersectionLineCount
      • tiglComponentIntersectionPoint
      • tiglComponentIntersectionPoints
  • Fixes:

    • TiGL Viewer: Fixed missing fonts on macOS
  • Language bindings:

    • 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:

    • New design
    • Custom OpenGL shaders. If problems with the 3D rendering occur, please file a bug.
    • Display of reflection lines to inspect surface quality.
    • Display of textured surfaces.
    • Angle of perspective can be adjusted using the scripting API with setCameraPosition and setLookAtPosition.
      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.

TiGL 2.2.1

31 Aug 14:25
Compare
Choose a tag to compare
  • General changes:

    • Improved calculation time of tiglFuselageGetPointAngle by roughly a factor of 30. The results might be a different than in previous versions, but the function should be more robust now.
    • Improved calculation time of tiglFuselageGetPoint by applying caching. This leads only to a benefit in case of a large number of GetPoint calls (~30) per fuselage segment. This will be even improved in TiGL 3.
  • New API functions:

    • New API function tiglExportVTKSetOptions. This function can be used e.g to disable
      normal vector writing in the VTK export.
  • Changed API:

    • Ignore Symmetry face in tiglFuselageGetSurfaceArea for half fuselages
    • In tiglFuselageGetPointAngle the cross section center is used as starting point of the angle rather than the origin of the yz-plane
  • Fixes:

    • Fixed bug, where the VTK export showed no geometry in ParaView
    • Improved accuracy of the VTK export. The digits of points are not truncated anymore to avoid duplicate points
    • Triangles with zero surface are excluded from the VTK export
    • Fixed incorrect face name ordering in WingComponentSegment

TiGL 2.2.0

23 Dec 13:46
Compare
Choose a tag to compare
  • Major changes:
    • Added modelling of the wing structure, including ribs and spars . This code was part of a large
      pull request by Airbus D&S. Currently, the structure is only accessible by the TiGL Viewer.
      In future releases, we plan to make the structure accessible from the API.
    • Improved Collada export: The export is now conforming with the collada schema
      and can be displayed with OS X preview.
    • External shapes are added to the exports.
    • Added writing of modified CPACS files. Still, we do not offer yet API functions
      for modifications. Using the internal API, modifications are already possible.
  • New API functions:
    • New API function tiglSaveCPACSConfiguration for writing the CPACS configuration into a file.
  • TiGLViewer:
    • Visualization of the wing structure.
    • Improved linking and compilation with Qt.
    • Added STL export of the whole aircraft configuration.

TiGL 2.1.7

22 Sep 14:50
Compare
Choose a tag to compare
  • General changes:
    • Support for generic aircraft systems (by Jonas Jepsen).
    • External components are now conforming with the CPACS 2.3 standard (by Jonas Jepsen).
    • Support for rotorcraft (by Philipp Kunze).
    • Improved IGES export: Added support for long names in IGES (more than 8 characters as before).
    • Removed support for RedHat 5 and Ubuntu 13.10.
    • Added support for RedHat 7.
    • Ported to OpenCASCADE 6.9.0 and 7.0.0.
  • New API functions:
    • tiglWingComponentSegmentComputeEtaIntersection: This function should be used to compute points on the wing
      that lie on a straight line between two given points.
    • tiglFuselageGetIndex to compute the index based on the fuselage UID.
    • Added new API functions for rotors and rotor blades:
      • tiglGetRotorCount
      • tiglRotorGetUID
      • tiglRotorGetIndex
      • tiglRotorGetRadius
      • tiglRotorGetReferenceArea
      • tiglRotorGetTotalBladePlanformArea
      • tiglRotorGetSolidity
      • tiglRotorGetSurfaceArea
      • tiglRotorGetVolume
      • tiglRotorGetTipSpeed
      • tiglRotorGetRotorBladeCount
      • tiglRotorBladeGetWingIndex
      • tiglRotorBladeGetWingUID
      • tiglRotorBladeGetAzimuthAngle
      • tiglRotorBladeGetRadius
      • tiglRotorBladeGetPlanformArea
      • tiglRotorBladeGetSurfaceArea
      • tiglRotorBladeGetVolume
      • tiglRotorBladeGetTipSpeed
      • tiglRotorBladeGetLocalRadius
      • tiglRotorBladeGetLocalChord
      • tiglRotorBladeGetLocalTwistAngle
  • Fixes:
    • Fixed parent-child transformations in case of multiple root components.
    • Fixed an error in tiglWingComponentSegmentGetPoint in case of multiple intersections of the eta plane with the wing.
      This was the case for e.g. box wings. (issue #176).
    • Fixed bug tiglWingGetSpan in wing span computation when no wing symmetry is given (e.g. for a VTP) (issue #185 and #195).
    • Fixed another bug in tiglWingGetSpan when the symmetry plane was the Y-Z plane (issue #174).
    • Fixed incorrect result in tiglWingGetSegmentEtaXsi near wing sections, returning the wrong section (issue#187).
    • Fixed an issue in tiglWingGetSegmentEtaXsi in case the airfoil is completely above the chord surface.
    • Fixed point projection on the geometry for large scale data (eg a factor of 1000) by making the convergence criterium size dependent (issue #203).
  • TiGLViewer:
    • Visualization of rotorcraft and rotorcraft specific menus.
    • Visualization of generic aircraft systems.
    • Added wingGetSpan function to TiGLViewer scripting.
    • Added script function wingComponentSegmentGetPoint.
    • Fixed tiglviewer.sh script loading wrong OpenCASCADE libraries.
  • Language bindings:
    • Started experimental python bindings for the internal API.
      This allows a direct manipulation of the geometry objects
      from python together with the OpenCASCADE python bindings (pythonocc).
    • The source code of the matlab bindings is now shipped on all systems. In addition,
      we distribute a Makefile which can be used to compile the Matlab bindings when needed.
    • Added function tiglWingComponentSegmentComputeEtaIntersection to java bindings.

TiGL 2.1.6

15 Jul 19:34
Compare
Choose a tag to compare

TiGL 2.1.6 was released on 15/07/2015. This is a bugfix release.

  • TiGL Viewer:
    • Fixed critical crash on Windows 64 bit systems that occured sporadically on some systems

TiGL 2.1.5

01 Jul 11:02
Compare
Choose a tag to compare

TiGL 2.1.5 was released on 01/07/2015

  • Changed API:
    • Added an output argument in the function tiglWingComponentSegmentPointGetSegmentEtaXsi that returns the error of the computation.
    • The function tiglWingComponentSegmentGetSegmentIntersection uses a new algorithm that should ensure straight
      flap leading edges and straight spars. Also, a new parameter hasWarning was added, to inform the user, that the
      returned segment xsi value is not in the valid range [0,1]. This might be the case, if a spar is partially located outside the wing.
    • Removed macros TIGL_VERSION and TIGL_VERSION_MAJOR from tigl.h. Please use tigl_version.h instead.
  • General changes:
    • External geometries can be included into the CPACS file using a link to a STEP file. The allows e.g. the use
      of engines and nacelles. (Note: this is not yet included in the CPACS standard)
    • Improved computation of half model fuselage profiles. Now, fuselages are c2 continuous at the symmetry plane.
    • Improved computation speed of tiglWingComponentSegmentGetPoint by a factor of 30 to 600 (depending on the geometry).
    • Reduced execution time of tiglOpenCPACSConfiguration.
    • All TiXI messages (errors/warnings) are now printed to the TiGL log.
    • Ported to OpenCASCADE 6.8.0.
  • New API functions:
    • tiglExportFusedBREP to export the fused configuration to the BRep file format.
  • Fixes:
    • Fixed bug, where guide curves on half model fuselages were not touching the symmetry plane.
    • Fixed a TIGL_MATH_ERROR bug in tiglWingComponentSegmentGetSegmentIntersection.
  • TiGL Viewer:
    • Ported to Qt 5.
    • OpenGL accelerated rubber band selection. This fixes the slow rubber band selection on Linux and
      the invisible rubber band selection on Mac.
    • Fixed bug when loading a CPACS file with multiple models (thanks Jonas!).
    • Removed support for legacy VRML and CSDFB files.