Releases: DLR-SC/tigl
Releases · DLR-SC/tigl
TiGL 2.1.4
TiGL 2.1.4 was released on 06/02/2015
- Changed API:
- Added an output argument in the functions
tiglWingGetUpperPointAtDirection
andtiglWingGetLowerPointAtDirection
that returns the error of the computation
- Added an output argument in the functions
- New API functions:
tiglFuselageGetIndex
andtiglFuselageGetSegmentIndex
to retrieve the index of a fuselage and fuselage segment given a CPACS UID
- Fixes:
- Fixed some warnings using CMake 3
- TiGL Viewer:
- Fixed a crash in case of a missing model UID
- Fixed a bug, where debugging BREP files where always created on Linux
- Improved scripting interface for wingGetLower/UpperPointAtDirection to return the error
- Language bindings:
- Completed the new Java bindings for TiGL
- Removed Fortran bindings since nobody is using them
TiGL-2.1.3
TiGL 2.1.3 was released on 08/12/2014. Merry Christmas!
- Changed API:
- Changed functions
tiglWingGetSegmentSurfaceArea
to exclude side faces and trailing edges - Removed functions
tiglWingGetUpperPointAtAngle
andtiglWingGetLowerPointAtAngle
. These functions were replaced bytiglWingGetUpperPointAtDirection
andtiglWingGetLowerPointAtDirection
.
- Changed functions
- General changes:
- Support for global transformation (translation refType="absGlobal"). Notice: some (incorrect) CPACS models will now look differently.
- Accurate B-Spline approximation of CST curves using Chebychev approximation.
- Implemented recursive fusing trimming for the use of e.g. bellyfairings. Added small cpacs example how to model a bellyfairing.
- Implemented trimming of intersection curves with parent bodies and far fields
- Improved computation of fuselage positionings. This should improve loading times of configurations with large number of sections, since the algorithmic complexity is reduced.
- IGES + STEP export: All wing faces are now classified as Top-Wing, Bottom-Wing, or Trailing-Edge.
- IGES export: Changed units to mm.
- IGES export: Implemented layers/levels .
- The OCAF framework is no longer required to build TiGL.
- The build system now uses the cmake config-style TiXI and OCE search mechanisms.
- New API functions:
- Added functions to get the B-Spline paramterization of fuselage and wing profiles:
tiglProfileGetBSplineCount
, returns the of B-Splines a profile is built of.tiglProfileGetBSplineDataSizes
, returns the size of the knot vector and the number of control points of one profile B-Spline.tiglProfileGetBSplineData
, returns the knot vector and the control points.
- Added functions
tiglWingGetSectionCount
andtiglFuselageGetSectionCount
- Added functions
tiglWingGetSegmentUpperSurfaceAreaTrimmed
andtiglWingGetSegmentLowerSurfaceAreaTrimmed
to e.g. compute the surface area of a control device. - Added functions
tiglWingGetChordPoint
andtiglWingGetChordNormal
to query points on the wing chord surface. - Added functions
tiglWingGetUpperPointAtDirection
andtiglWingGetLowerPointAtDirection
.
- Added functions to get the B-Spline paramterization of fuselage and wing profiles:
- Fixes:
- Fixed
tiglWingComponentSegmentGetPoint
in case of global wing transformations. - Fixed
tiglWingComponentSegmentGetPoint
bug, returning eta values > 1 (issue 107). - Fixed numerical inaccuracy of
tiglWingGetPointDirection
- Fixed incorrect CST curves at for N2 < 1.
- Fixed null pointer bug in IGES export.
- Fixed
- TiGLViewer:
- Highly improved scripting console:
- Script file can be given as command line argument (using option --script)
- Added function to export all objects to file
- The main application objects can be scripted (i.e. app, app.viewer, app.scene)
- Draw shapes, points and vectors from script
- Make screenshots by command
- Context menu for copy-paste actions
- History with recent commands
- Mouse support
- More wrapped tigl functions
- Improved stability
- Exception handling
- TiXI errors and warnings are printed on the console now
- Added dialog to draw points and vectors.
- Added dialog for screenshot settings, including option for white background.
- JPEG and PNG support for background images.
- Collada export for the complete configuration (i.e. support for multiple objects).
- Cleanup of menu entries.
- Fixed multiple opened CPACS documents in TiGLViewer.
- Fixed 3D view flickering on Mac OS X with Qt 4.8.6.
- Language bindings:
- Added python 3 support of
tiglwrapper.py
- Improved TiGL library loading error messages in python wrapper
- New Java bindings. Hand-written high level API not yet complete (not all TiGL functions wrapped). Low level API (autogenerated) can be used instead for unimplemented functions.
- Added Java example (see share/doc/tigl/examples/JavaDemo.java)
- Added python 3 support of
- Documentation:
- Added chapter for TiGL Viewer and the TiGL Viewer scripting console.
- Highly improved scripting console:
TiGL-2.1.2
This TiGL Release was published on 17/04/2014.
- Changed API:
- The returned UID strings of the following functions must not be freed by the user anymore:
tiglWingGetOuterSectionAndElementIndex
tiglWingGetInnerSectionAndElementUID
tiglFuselageGetStartSectionAndElementUID
tiglFuselageGetEndSectionAndElementUID
tiglWingComponentSegmentPointGetSegmentEtaXsi
tiglWingComponentSegmentFindSegment
- Changed behavior of
tiglWingComponentSegmentFindSegment
. In case the specified point does not lie within 1 cm of any segment,TIGL_NOT_FOUND
is returned. - Changed behavior of
tiglWingComponentSegmentPointGetSegmentEtaXsi
. If the specified point lies outside any segment so that the transformation can not be executed,TIGL_MATH_ERROR
is returned. - The following API functions
tiglComponentIntersectionPoint
,tiglComponentIntersectionPoints
andtiglComponentIntersectionLineCount
are deprecated and will be removed in future releases. These functions are replaced by new intersection routines. - Removed functions
tiglExportStructuredIGES
andtiglExportStructuredSTEP
- The returned UID strings of the following functions must not be freed by the user anymore:
- General changes:
- Completely reworked boolean operations with the following effects:
- Fusing the whole plane is faster in many cases and more reliable
- We keep track of the origins of each trimmed face which helps for the IGES and STEP exports
- The boolean operations can be debugged now by setting the environment variable TIGL_DEBUG_BOP
- Completely rewritten STEP and IGES exports:
- Each face has now an identifier name
- Inclusion of intersection curves
- Inclusion of far fields into exports
- IGES export in non-BREP mode since it is not supported by CATIA
- Added new demos for C, Python and MATLAB. Please look into the documentation how to run them.
- Added function for the intersection computation of a geometrical shape with a plane
- Experimental implementation of wing and fuselage guide curves
- The mathematical orientation of wing profiles is checked for correctness
- TiGL requires now at least OpenCASCADE 6.6.0
- Ported to OpenCASCADE 6.7.0
- Completely reworked boolean operations with the following effects:
- New API functions:
- Added new API functions for shape/shape and shape/plane intersections:
tiglIntersectComponents
tiglIntersectWithPlane
tiglIntersectGetLineCount
tiglIntersectGetPoint
- Added new API functions for shape/shape and shape/plane intersections:
- Fixes:
- Fixed a bug in
tiglWingComponentSegmentFindSegment
- Fixed numerical inaccuracy in the projection of points to a wing segment
- Fixed crash in case of too long UIDs
- Fixed some memory leaks
- Fixed a bug in
- TiGLViewer:
- Improved IGES import:
- Multiple shapes are now imported as separate shapes from IGES files.
- Fixed wrong scaling when importing IGES files.
- Improved STEP export:
- Files are now exported in units of meters instead of millimeters.
- Improved BREP export and import: compound objects are now decomposed to separate objects.
- Added method to export fused aircraft to BREP
- Added method to export wing and fuselage profiles and guide curves to BREP
- Fixed incorrect units in IGES and STEP export from save-as dialog.
- General save-as dialog: All visible objects are saved to the file, if no shape is selected. Otherwise, only the selected objects are exported.
- Added debugging parameters to settings dialog. This includes:
- Adapting number of displayed iso lines per face
- Display face numbers
- Debug boolean operations (if enabled, debugging shapes in BRep format are stored to the current working directory)
- Added new dialog for shape/shape and shape/plane intersections.
- Added drag and drop support to TiGLViewer. Files (CPACS, IGES, STEP, BREP) are opened when they are dragged into TiGLViewer.
- TiGLViewer displays far field after calculating the trimmed aircraft
- Iso U/V lines are no longer displayed by default. This can be changed in the settings dialog.
- The fused/trimmed aircraft geometry is displayed using a different color for each component.
- Added visualization of wing and fuselage guide curves.
- Fix: Only the first intersection curve was displayed. This is fixed now.
- New icons
- Improved IGES import:
TiGL 2.1.1
TiGL 2.1.1 was released on 28/01/2014. Please scroll down to download the binary packages.
- Changed API:
- In previous TiGL version, some strings had to be freed manually after calling some functions. These strings must not be freed anymore. Following functions are affected:
tiglWingGetOuterSectionAndElementIndex
tiglWingGetInnerSectionAndElementUID
tiglFuselageGetStartSectionAndElementUID
tiglFuselageGetEndSectionAndElementUID
tiglWingComponentSegmentPointGetSegmentEtaXsi
tiglWingComponentSegmentFindSegment
- Changed return value of
tiglWingComponentSegmentFindSegment
: In case the given point is located more than 1 cm away from any segment, TIGL_NOT_FOUND is returned. - Changed return value of
tiglWingComponentSegmentPointGetSegmentEtaXsi
: If the given point lies outside any segment so that the transformation can not be executed, TIGL_MATH_ERROR is returned.
- In previous TiGL version, some strings had to be freed manually after calling some functions. These strings must not be freed anymore. Following functions are affected:
- General changes:
- Changed console logging to include errors and warnings by default
- Wing profiles are automatically trimmed at their trailing edge to ensure, that the trailing edge is always perpendicular to the chord line. This is required by the
wingGetUpperPoint
andwingGetLowerPoint
functions.
- Fixes:
- Fixed a bug in
tiglWingGetUpperPoint
andtiglWingGetLowerPoint
in which some points could not be calculated - Fixed two memory leaks
- Fixed a bug in
2.1.0
Released: 17/01/2014
- Changed API:
- Added argument for
tiglWingGetReferenceArea
to define the projection plane for reference area calculations
- Added argument for
- General Changes:
- Support for parametric CST wing profiles
- Logging improvements. The console verbosity can now be set independent of file logging.
- New API functions:
tiglWingGetMAC
, computes the mead aerodynamic chord length and position (thanks to Arda!)
- Fixes:
- Fixed crash in case of missing wing and fuselage profiles
- Fixed accuracy errors in
tiglWingSegmentPointGetComponentSegmentEtaXsi
andtiglWingComponentSegmentPointGetSegmentEtaXsi
- Fixed a warning when including
tigl.h
- Fixed numerical bug
tiglWingComponentSegmentGetSegmentIntersection
- TiGLViewer:
- Improved dialog for displaying wing component segment points
- Added BRep export
- Fixed crash on some Linux systems with strange LANG settings
- Added dialog showing log history in case of an error
2.0.7
Released: 21/11/2013
- Changed API:
- replaced
tiglWingComponentSegmentGetMaterialUIDs
withtiglWingComponentSegmentGetMaterialUID
andtiglWingComponentSegmentGetMaterialCount
- replaced
- General Changes:
- Implementation of far fields
- More work on STEP and IGES export. The geometry is now exported as faces instead of solids in the STEP export.
- Verification of airfoils during CPACS loading, this fixes twisted wing segments for some CPACS files
- Improved modelling of leading and trailing edge
- New Logging Framework
- New API functions:
tiglWingGetSegmentEtaXsi
, to transform global x,y,z coordinates into wing segment coordinatestiglExportFusedSTEP
, exports the trimmed/fused geometry as a step filetiglWingComponentSegmentGetMaterialUID
, to get the material UID at a point of the component segmenttiglWingComponentSegmentGetMaterialThickness
, to get the material thickness at a point of the component segmenttiglWingComponentSegmentGetMaterialCount
, to get the number of materials defined at a point of the component segmenttiglLogSetFileEnding
,tiglLogSetTimeInFilenameEnabled
,tiglLogToFileDisabled
,tiglLogToFileEnabled
,tiglLogToFileStreamEnabled
, to modify logging settings
- Fixes:
- fixed a bug in
tiglWingComponentSegmentGetSegmentIntersection
- fixed a bug in
- TiGLViewer:
- Loading of HOTSOSE mesh files
- Auto-reload of non-CPACS files
- Improved display of airfoils
- Improved error dialogs
2.0.6
Released: 27/08/2013
- General Changes:
- Improved loading times
- Improved speed of intersection calculations by caching and reusing results
- Switched to faces instead of solids in STEP Export
- Switched to const
char ** API
- Prepared TiGL for Android (currently working but still experimental)
- New API functions:
tiglExportMeshedWingSTLByUID
andtiglExportMeshedFuselageSTLByUID
for STL export (Hello 3D printing!)tiglWingComponentSegmentGetSegmentIntersection
- Fixes:
- Fixed
tiglFuselageGetPointAngle
andtiglFuselageGetPointAngleTranslated
giving wrong results (issues 89 and 92) - TiGL required positionings for all fuselage segments, this is now fixed (issue 57)
- Fixed error when opening CPACS files with composite materials
- Fixed wrong units in iges export (issue 78)
- Silenced Error messages that weren't errors
- Fixed different errors in
tiglWingComponentSegmentPointGetSegmentEtaXsi
- Fixed duplicate log files
- Fixed
2.0.5
Released: 11/06/2013
- Changed API:
- Switched to const
char ** strings
tiglWingGetSegmentIndex
returns now also the wing index instead of asking for it- Removed TiGL wire algorithms switching functions. Now a Bspline wire is used for each profile.
- Switched to const
- General Changes:
- Symmetry modeling
- Explicit modeling of the wing leading edge to improve tesselated output (no more leading edge bumps)
- Explicit modeling of the wing upper and lower shape
- The fuselage lofting now creates a smooth surface without hard edges (due to fixed OpenCASCADE bug)
- Completely rewritten VTK export:
- Full body export including wing segment metadata
- Fixed lots of errors.
- Large improvement of calculation times.
- Provides wing segment metadata in a proper VTK-way, to allow visualization of these data in VTK viewers. Calculation and export of the proper normal vectors.
- IGES and STEP export with CPACS metadata
- Collada export for use in 3D rendering programs like Blender
- MATLAB bindings for TiGL!
- Completeley rewritten python bindings (e.g. better support for arrays)
- Added logging framework to write outputs into log files (google-glog)
- Ported to OpenCASCADE 6.6.0
- New API functions:
tiglWingComponentSegmentGetMaterialUIDs
, to query materials on component segmenttiglWingComponentSegmentGetPoint
, to query cartesian point on the wing component segment (on chord surface)tiglWingSegmentPointGetComponentSegmentEtaXsi
, to compute segment to component segment coordinatestiglWingComponentSegmentGetSegmentUID
, queries the uids of the ith segment of the component segmenttiglWingComponentSegmentGetNumberOfSegments
, queries the number of segments belonging to a component segmenttiglExportFuselageColladaByUID
tiglExportWingColladaByUID
tiglExportStructuredIGES
tiglExportStructuredSTEP
tiglConfigurationGetLength
, returns the length of the airplanetiglWingGetSpan
, returns the wing spantiglComponentIntersectionPoints
(convenience function, vectorizestiglComponentIntersectionPoint
to improve speed)tiglExportMeshedGeometryVTKSimple
andtiglExportMeshedGeometryVTKSimple
(replaced dummy implementation)
- Fixes:
- Intersection calculation used by
tiglComponentIntersectionPoint
- Fixed incorrectly placed fuselage positionings
- Fixed
tiglWingComponentSegmentFindSegment
returning segments that don't belong to the component segment - Workaround to buggy OpenCASCADE boolean fuse algorithms (which seems to be non-commutative). As a result, the fusing of the whole plane can be slower than before.
- Removed warning about missing component segments
- Intersection calculation used by
- TiGLViewer:
- Display user defined component segment point
- Improved speed of intersection calculation
- Improved speed of shape triangulation
- Display upper and lower shape of the wing
- Display of the full model incorporating the symmetry properties of the CPACS components
- Fixed detection, if CPACS file is changed while displayed in TiGLViewer
- An optional control file can steer some basic settings like tesselation/triangulation accuracy (e.g. to tune speed of cpacs file opening)
- STEP export
- Settings Dialog (tesslation accuracy settings, background...)
- New icon and color scheme
2.0.4
Released: 17/01/2013
- New API Functions:
- Added function
tiglGetErrorString
- Added function
- Fixes:
- Fixed bug in
tiglWingComponentSegmentPointGetSegmentEtaXsi
- Fixed camberline / chordline bug
- Fixed exception, when no airfoils are available
- Fixed bug in
- TiGLViewer:
- Added scripting interface to TIGLViewer. It is now possible to call TIGL/TIXI functions from within the TIGLViewer. The output is displayed in the console-view. Find more information here.
- Added context-popup menu on right click. Available actions:
- Removing of geometric shapes
- Set transparency level of geometric shapes
- Set color of selected shapes
- Set material of selected shapes
- Set wireframe/shading of selected shapes
- Works now also in Mac OSX (since opencascade commit 4fe5661 )
- Added toolbars
- Added option to load a background image
- Added autosave of user settings
- Menus are disabled/enabled depending on dataset
- Script could be loaded from file via File->open Script
- Fixed opening from command line
- Fixed bad font rendering for OpenCascade? > - 6.4.0
2.0.3
Released: 17/01/2013
- General Changes:
- Added
CCPACSWingSegment::GetChordPoint
to internal API - Added a simple cpacs data set for accuracy testing
- Added some accuracy tests for getPoint functions
- Added support for visual leak detector
- Changed UnitTesting? Framework to google-test
- Changed TIGL linking to static for unit tests
- Added coverage with gcov (gcc only) to project
- Added
- New API Functions:
tiglWingGetIndex
Returns the wing index given a wing UIDtiglWingGetSegmentIndex
Returns the segment index given a wing segment UIDtiglWingGetComponentSegmentCount
Returns the number of component segments for a specific wing (selected by wing index)tiglWingGetComponentSegmentIndex
Translates component segment UID into component segment indextiglWingGetComponentSegmentUID
Translates component segment index into component segment UID
- Fixes:
- Fixed
tiglWingComponentSegmentPointGetSegmentEtaXsi
- Fixed accuracy of
CCPACSWingComponentSegment::getPoint
- Fixed accuracy of
CCPACSWingSegment::getEta
- Fixed memory management handling of
tiglWingGetProfileName
- Fixed memory leaks in VTK export
- Fixed memory leak in
CCPACSFuselages
- Fixed
- TIGLViewer:
- Menus are enabled/disabled depending on number of wings/fuselages
- Added close configuration menu entry
- improved view rotation with middle mouse button