CamiTK Community Edition issueshttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues2020-06-26T08:52:48+02:00https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/102INTERACTIVEVIEWER_API undefined in RenderWidget.h2020-06-26T08:52:48+02:00Theophile TiffetINTERACTIVEVIEWER_API undefined in RenderWidget.h## About you
PhD student
## Problem
'INTERACTIVEVIEWER_API' is not defined in 'sdk/libraries/core/viewer/RenderWidget.h line 102 and 105. A quick search through files showed that it is not defined anywhere.
## Possible solution
Should...## About you
PhD student
## Problem
'INTERACTIVEVIEWER_API' is not defined in 'sdk/libraries/core/viewer/RenderWidget.h line 102 and 105. A quick search through files showed that it is not defined anywhere.
## Possible solution
Should it be CAMITK_API ?
## CamiTK Version
As of 15/06/2020, last version in the develop branch.
---
**please do not remove anything below this line**CamiTK 4.2 Sprint # 1Jean-Loup HaberbuschJean-Loup Haberbuschhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/33Save as STL2018-03-28T08:03:18+02:00Emmanuel PromayonSave as STLIt seems that `camitk-imp` does not show STL in save as dialog box.
`StlComponentExtension` should inherits from `MeshComponentExtension` not directly from `ComponentExtension`It seems that `camitk-imp` does not show STL in save as dialog box.
`StlComponentExtension` should inherits from `MeshComponentExtension` not directly from `ComponentExtension`Sprint 7Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/48External lib link issue for the release build under MVS2018-06-04T16:56:48+02:00Antoine TacheauExternal lib link issue for the release build under MVSAbout you:
Antoine Tacheau, user of CamiTK and developer of a CEP
Overview:
Link is not well define in cmake files regarding external libs
Steps to Reproduce:
Create a CEP that needs an exte...About you:
Antoine Tacheau, user of CamiTK and developer of a CEP
Overview:
Link is not well define in cmake files regarding external libs
Steps to Reproduce:
Create a CEP that needs an external lib
-> Build in debug
==> It works
-> Build in release
==> Missing links
Actual VS Expected Result:
A CEP should be 'buildable' in debug and release
Relevant logs and/or screenshots:
NA
Interpretation & Possible fixes:
Update lines "optimized ${EXTERNAL_LIBRARY}" to "optimized ${EXTERNAL_LIBRARY}.lib" in CamiTKLibrary.cmake, CamiTKExtension.cmake and may be in CamiTKApplication.cmake
CamiTK Version:
- CamiTK version......................... CamiTK 4.1.0.develop.99ad37ea
- CamiTK Short Version................... camitk-4.1
- CamiTK SO NAME......................... 4
- Operating System....................... WIN32
- Build type............................. RELEASE
- QT Version............................. 5.6.1
- VTK Version............................ 6.3.0
- CamiTK Global Installation Directory... C:/Users/tacheaua/AppData/Roaming/CamiTK
- User Installation Directory............ C:/Users/tacheaua/AppData/Roaming/CamiTK
- Current Working Directory.............. C:/Users/tacheaua
- Test Data Directory.................... C:/Users/tacheaua/AppData/Roaming/CamiTK/share/camitk-4.1/testdata
- Component Extension Directories........ C:/Users/tacheaua/AppData/Roaming/CamiTK/lib/camitk-4.1/components
- Action Extension Directories........... C:/Users/tacheaua/AppData/Roaming/CamiTK/lib/camitk-4.1/actions
- Number of Component Extensions......... 14 (locations: 13 global, 0 local, 0 in working directory, 1 by user)
- Number of File Extensions Supported.... 38
- Number of Action Extensions............ 27 (locations: 27 global, 0 local, 0 in working directory, 0 by user)
- Number of Actions...................... 104
- Registered components (G=Global, L=Local, W=Working, U=User):
- Alias Wavefront OBJ Component (obj) [G]
- ITK-US Cardio Vet Component Extension (mha, testus) [U]
- ItkImages Component (hdr, spr, gipl, pic, lsm, nrrd, hdr.gz, nii, nii.gz, img, img.gz) [G]
- MML Component (mml, scn) [G]
- Msh Component (msh) [G]
- Off Component (off) [G]
- PML Component (pml) [G]
- Pick Me Component (pickme) [G]
- STL Component (stl, STL) [G]
- Testing Mixed Component (mixed) [G]
- VRML 2 Component (vrml, wrl) [G]
- VTK Component (vtk) [G]
- vtkImages Component (jpg, png, tiff, tif, bmp, pbm, pgm, ppm, mhd, mha, raw) [G]
- DICOM (directory) [G]
- Registered actions (G=Global, L=Local, W=Working, U=User):
- Application Level Action Extension [G]: 20 actions ()
- AverageVoxelValuesExtension [G]: 1 actions ()
- Basic Mesh Extension [G]: 9 actions ()
- Basic Picking Tutorial [G]: 1 actions ()
- Basic Topology [G]: 2 actions ()
- BoxVOIExtension [G]: 1 actions ()
- Frame Edition Extension [G]: 1 actions ()
- ITK Filters [G]: 14 actions ()
- ITK Segmentation [G]: 3 actions ()
- Image LUT [G]: 1 actions ()
- ImageAcquisitionActionExtension [G]: 7 actions ()
- MML [G]: 2 actions ()
- Mesh Point Data [G]: 1 actions ()
- Mesh Processing [G]: 17 actions ()
- Mesh Selection [G]: 1 actions ()
- MultiPickingExtension [G]: 1 actions ()
- PMLExploreExtension [G]: 2 actions ()
- Pixel Color Changer [G]: 1 actions ()
- PropertiesExtension [G]: 3 actions ()
- Reconstruction [G]: 1 actions ()
- Reorient Image Extension [G]: 1 actions ()
- ResampleExtension [G]: 1 actions ()
- Shaker Extension [G]: 3 actions ()
- ShowIn3DExtension [G]: 5 actions ()
- Sleeping While Working [G]: 2 actions ()
- VolumeRenderingExtension [G]: 1 actions ()
- Vtk Widget Tutorial [G]: 2 actions ()Antoine TacheauAntoine Tacheauhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/62Manual threshold does not allow a threshold greater than 2552019-05-08T17:03:47+02:00Emmanuel PromayonManual threshold does not allow a threshold greater than 255## About you
This bug was submitted by @fouardc on bugzilla, on 2015-10-23
## Overview:
> While utilizing ITK Segmentation -> Manual Threshold Filter, it is not possible to choose a low threshold or a high threshold ...## About you
This bug was submitted by @fouardc on bugzilla, on 2015-10-23
## Overview:
> While utilizing ITK Segmentation -> Manual Threshold Filter, it is not possible to choose a low threshold or a high threshold higher than 255, or lower than 0.
> This raises no problem for medical images encoded on unsigned char, however, for other kind of images (for example CT Scanner generally encoded on signed short), higher threshold values or negative threshold value may come handy.
> -- C. Fouard
## Steps to Reproduce:
> Open an image not encode in unsigned char. For example:
> - open the sinus dicom in the examples data base
> - select this image in the explorer and choose to apply ITK Segmentation -> Manual Threshold Filter
> - try to set the lower threshold to -53 and the higher threshold to 455 (yes, why not, if my algorithm says so?)
> - it is not possible
## Actual VS Expected Result:
> The fact that it is not possible is ok for some images, but it would be nice for the user to be able to choose any lower and higher threshold within the range of the encoded type of the image.
## Relevant logs and/or screenshots:
[Paste any relevant logs - please use code blocks (```) to format console output, logs, and code as it's very hard to read otherwise.]
## Interpretation & Possible fixes:
>It may come from the lines 63 and 64 of ManualThreshold.cpp :
>```cpp
> lowThresholdProperty->setAttribute("minimum", 0);
> lowThresholdProperty->setAttribute("maximum", 255);
>```
>and the lines 69 and 70 of the same file:
>```cpp
> highThresholdProperty->setAttribute("minimum", 0);
> highThresholdProperty->setAttribute("maximum", 255);
>```
>
>These 2 values 0, and 255 may not be encoded hardwire but may be declared as variables updated when a new image is set as input (an override of the getWidget method implementation may be needed) with the minimum and maximum value of the encoding type of the input image.
## CamiTK Version:
This was submitted for CamiTK 3.5.0.2135
But the bug is still present in version 4.0.x and 4.1.0.develop
---
**please do not remove anything below this line**https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/66Load mha rotation/translation in the proper order2023-07-20T13:09:48+02:00Emmanuel PromayonLoad mha rotation/translation in the proper order## About you
This was a bug submitted to the old bugzilla by Guillaume Custillon on 2016-03-17
## Overview
> When loading an mhd/mha image that contains some transformation, the translation (offset) is not handled correctly.
> Indeed...## About you
This was a bug submitted to the old bugzilla by Guillaume Custillon on 2016-03-17
## Overview
> When loading an mhd/mha image that contains some transformation, the translation (offset) is not handled correctly.
> Indeed, the rotation matrix should be applied and then the translation in the world frame. However, on CamiTK the rotation is applied, and then the translation in the rotated frame.
## Steps to Reproduce
> - Open imp and load the attached mha test image:
>
> [test_frame_image.mha](/uploads/f3a59f67822c289391ac36321be032af/test_frame_image.mha)
>
> It is a 2D image with a rotation of 45° around z axis and a translation of 10 mm on the x axis.
> - Display the world frame.
## Actual VS Expected Result
> - Observe the location of the image: the translation is not made on the x axis of the world frame, but on the x axis of > the rotated image frame.
## Relevant logs and/or screenshots:
## Interpretation & Possible fixes:
This is the answer given by @jaffarda on 2016-03-22
> Following is based on the test image provided by Guillaume.
>
> ***** The Bug, reworded ******
> According to the data in file:
> TransformMatrix (which contains rotation matrix of frame) is
> 0.707 -0.707 0 0.707 0.707 0 0 0 1
> and
> Offset (which contains translation of frame) is
> 10 0 0
>
> Opening this image with camiTK:
> rotation is OK
> translation become 7.07 7.07 0
>
> in other words, the translation is applied in rotated frame, but we expect it to be applied in world frame
>
> ***** suggested fix *****
>
> based on tests on this image,
>
> in ImageComponent.cpp (line 290), the line
> ```cpp
vtkMatrix4x4::Multiply4x4(rotationMatrix, initialTranslation->GetMatrix(), initialFrameMatrix);
> ```
> should become :
> ```cpp
> vtkMatrix4x4::Multiply4x4(initialTranslation->GetMatrix(), rotationMatrix, initialFrameMatrix);
> ```
>
> ***** WARNING *****
> This change in a core file should only be commit after deep tests on every thing it may impact.
## CamiTK Version:
This was submitted for CamiTK 3.5.0.svn but is still present in CamiTK 4.1.develophttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/85Bug install qtpropertybrowser debian2021-03-18T16:45:30+01:00Clement BeitoneBug install qtpropertybrowser debianOn linux if the package manager is used to install camitk, the package qtpropertybrowser is installed by default in /usr/include. In case of a manual compile / installation this package is installed in ${CAMITK_INCLUDE_DIR}/libraries/
...On linux if the package manager is used to install camitk, the package qtpropertybrowser is installed by default in /usr/include. In case of a manual compile / installation this package is installed in ${CAMITK_INCLUDE_DIR}/libraries/
The CamiTKConfig.cmake is not aware of this system path.
To fix this issue the variable `QTPROPERTYBROWSER_ROOT_INCLUDE_DIR` should be used in CamiTKConfig.cmake and added in:
`set(CAMITK_INCLUDE_DIRECTORIES...)`CamiTK 5https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/98CMake code generation over viewer's extension targets2020-09-28T20:36:22+02:00Emmanuel PromayonCMake code generation over viewer's extension targets## About you
CamiTK dev
## Overview
If a component or action declares a dependency to a viewer extension, CMake generates an error during generation.
```bash
CMake Error in actions/testactions/CMakeLists.txt:
The dependency target ...## About you
CamiTK dev
## Overview
If a component or action declares a dependency to a viewer extension, CMake generates an error during generation.
```bash
CMake Error in actions/testactions/CMakeLists.txt:
The dependency target "viewer-medicalimageviewer" of target
"action-testactions_autogen" does not exist.
```
→ The viewer's extension targets are not exported properly and generate an error
## Steps to Reproduce
In an action `CMakeLists.txt`, add the following line inside the `camitk_extension` parameters:
```cmake
camitk_extension(ACTION_EXTENSION
...
NEEDS_VIEWER_EXTENSION medicalimageviewer
...
)
```
## Actual VS Expected Result
When running the CMake generation on the project, the following error is generated
```bash
CMake Error in actions/testactions/CMakeLists.txt:
The dependency target "viewer-medicalimageviewer" of target
"action-testactions_autogen" does not exist.
```
The target is not known by the CEP as it is not exported by CamiTK CE.
The expected result is a error free CMake generation
I created a specific branch and MR (see !147) with cepgenerator test files.
This can be considered as fixed when the test `application-cepgenerator-bash-test` in MR !147 returns no error.
To run the test :
- checkout branch `bug/target-export`
- configure and build
- run the corresponding test:
```bash
ctest -VV -R application-cepgenerator-bash-test
```
## Interpretation & Possible fixes
Two possible fixes:
- ~~either fix CamiTK CMake files so that extensions are exported~~
- ~~tweak the cepgenerator to add the following lines in the generated action `CMakeLists.txt` AND document the manual fix in the wiki.~~
```cmake
# Add this line in the action or component CMakeLists.txt, before the call to the camitk_extension macro
add_library(viewer-medicalimageviewer INTERFACE IMPORTED)
```
- ~~FindCamiTK.cmake includes these export lines~~
Note that a similar line has to be added from each added NEEDS_VIEWER_EXTENSION dependencies
## CamiTK Version
`CamiTK version........................... CamiTK 4.2.dev.bug-target-export.0cf6a8fa`
~"Track Debugging"CamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/84Bug in refreshInterfaceNode in Explorer.cpp2019-05-30T10:04:25+02:00Matthias TummersBug in refreshInterfaceNode in Explorer.cppI am a CamiTK developer working on the FOCUS CEP
When Working with multiple components with parent/child relationships, Explorer::refreshInterfaceNode() will fail to remove all the components from the maps but effectively delete de the ...I am a CamiTK developer working on the FOCUS CEP
When Working with multiple components with parent/child relationships, Explorer::refreshInterfaceNode() will fail to remove all the components from the maps but effectively delete de the components. This leaves the Explorer with invalid references to components in its maps and will eventually cause a crash.
## CamiTK Version:
- CamiTK version........................... CamiTK 4.1.2
- CamiTK Short Version..................... camitk-4.1
- CamiTK SO NAME........................... 4
- Operating System......................... WIN32
- Build type............................... DEBUG
- QT Version............................... 5.6.1
- VTK Version.............................. 6.3.0
- Global Installation Directory [G]........ C:/dev/CamiTK/install
- Local Installation Directory [L]......... C:/Users/tummersm/AppData/Roaming/CamiTK
- Current Working Directory [W]............ C:/dev/CamiTK/install/bin
- Test Data Directory...................... C:/dev/CamiTK/install/share/camitk-4.1/testdata
- Component Extension Directories.......... C:/dev/CamiTK/install/lib/camitk-4.1/components
- Action Extension Directories............. C:/dev/CamiTK/install/lib/camitk-4.1/actions
- Number of Component Extensions........... 15 (locations: 15 global, 0 local, 0 in working directory, 0 manually installed by user)
- Number of File Extensions Supported...... 39
- Number of Action Extensions.............. 28 (locations: 28 global, 0 local, 0 in working directory, 0 manually installed by user)
- Number of Actions........................ 106
- Registered components:
- [G] Alias Wavefront OBJ Component...... obj
- [G] FocusImageComponentExtension....... fcs, fcs3
- [G] ItkImages Component................ hdr, spr, gipl, pic, lsm, nrrd, hdr.gz, nii, nii.gz, img, img.gz
- [G] MML Component...................... mml, scn
- [G] Msh Component...................... msh
- [G] Off Component...................... off
- [G] PML Component...................... pml
- [G] Pick Me Component.................. pickme
- [G] STL Component...................... stl, STL
- [G] Testing Abort Component............ abort
- [G] Testing Mixed Component............ mixed
- [G] VRML 2 Component................... vrml, wrl
- [G] VTK Component...................... vtk
- [G] vtkImages Component................ jpg, png, tiff, tif, bmp, pbm, pgm, ppm, mhd, mha, raw
- [G] DICOM.............................. directory
- Registered actions:
- [G] Application Level Actions.......... 21 actions
- [G] AverageVoxelValuesExtension........ 1 actions
- [G] Basic Mesh Extension............... 9 actions
- [G] Basic Picking Tutorial............. 1 actions
- [G] Basic Topology..................... 2 actions
- [G] BoxVOIExtension.................... 1 actions
- [G] FocusActionExtension............... 1 actions
- [G] Frame Edition Extension............ 1 actions
- [G] ITK Filters........................ 14 actions
- [G] ITK Segmentation................... 3 actions
- [G] Image LUT.......................... 1 actions
- [G] ImageAcquisitionActionExtension.... 7 actions
- [G] MML................................ 2 actions
- [G] Mesh Point Data.................... 1 actions
- [G] Mesh Processing.................... 17 actions
- [G] Mesh Selection..................... 1 actions
- [G] MultiPickingExtension.............. 1 actions
- [G] PMLExploreExtension................ 2 actions
- [G] Pixel Color Changer................ 1 actions
- [G] PropertiesExtension................ 3 actions
- [G] Reconstruction..................... 1 actions
- [G] Reorient Image Extension........... 1 actions
- [G] ResampleExtension.................. 1 actions
- [G] Shaker Extension................... 3 actions
- [G] ShowIn3DExtension.................. 5 actions
- [G] Sleeping While Working............. 2 actions
- [G] VolumeRenderingExtension........... 1 actions
- [G] Vtk Widget Tutorial................ 2 actions
---
**please do not remove anything below this line**Matthias TummersMatthias Tummershttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/87Bug library installation path2019-08-03T17:34:37+02:00Clement BeitoneBug library installation path## About you
Clément Beitone (TIMC-GMCAO) working on a cep that use other ceps
## Overview
It seems that a bug is hidden somewhere inside the cmake install path.
Whenever I install a cep that contains a library, the library install pa...## About you
Clément Beitone (TIMC-GMCAO) working on a cep that use other ceps
## Overview
It seems that a bug is hidden somewhere inside the cmake install path.
Whenever I install a cep that contains a library, the library install path which should be something like:
`/usr/local/include/camitk-4.2/libraries/devicelibrary/**libname**`
appears to be:
`/usr/local/include/camitk-4.2/libraries/**devicelibrary/devicelibrary**`
## Steps to Reproduce
make a manual global installation of any cep that contains at least a library in the folder libraries
## CamiTK Version
- CamiTK version........................... CamiTK 4.2.dev.develop.2eaece56
- CamiTK Short Version..................... camitk-4.2
- CamiTK SO NAME........................... 4
- Operating System......................... LINUX
- Build type............................... RELEASE
- QT Version............................... 5.11.3
- VTK Version.............................. 7.1.1
- Global Installation Directory [G]........ /usr/local
- Local Installation Directory [L]......... /home/beitoncl/.config/CamiTK
- Current Working Directory [W]............ /home/beitoncl/Documents/Dev/calibrationPolaris/calibrationcep/build
- Test Data Directory...................... /home/beitoncl/Documents/Dev/calibrationPolaris/calibrationcep/build/share/camitk-4.2/testdata
- Component Extension Directories.......... /home/beitoncl/Documents/Dev/calibrationPolaris/calibrationcep/build/lib/camitk-4.2/components
/usr/local/lib/camitk-4.2/components
- Action Extension Directories............. /home/beitoncl/Documents/Dev/calibrationPolaris/calibrationcep/build/lib/camitk-4.2/actions
/usr/local/lib/camitk-4.2/actions
- Number of Component Extensions........... 13 (locations: 12 global, 0 local, 1 in working directory, 0 manually installed by user)
- Number of File Extensions Supported...... 25
- Number of Action Extensions.............. 19 (locations: 18 global, 0 local, 1 in working directory, 0 manually installed by user)
- Number of Actions........................ 98
- Registered components:
- [G] Alias Wavefront OBJ Component...... obj
- [W] CalibrationComponentExtension...... calib
- [G] Device Component Extension......... device
- [G] FocusImageComponentExtension....... fia
- [G] Msh Component...................... msh
- [G] Off Component...................... off
- [G] STL Component...................... stl, STL
- [G] TrackerComponentExtension.......... tbuf
- [G] USImageComponentExtension.......... usi
- [G] USStreamComponentExtension......... uss
- [G] VRML 2 Component................... vrml, wrl
- [G] VTK Component...................... vtk
- [G] vtkImages Component................ jpg, png, tiff, tif, bmp, pbm, pgm, ppm, mhd, mha, raw
- Registered actions:
- [G] Application Level Actions.......... 21 actions
- [G] Basic Mesh Extension............... 9 actions
- [G] Basic Topology..................... 2 actions
- [G] BoxVOIExtension.................... 1 actions
- [W] CalibrationActionExtension......... 2 actions
- [G] Device Action Extension............ 6 actions
- [G] FocusActionExtension............... 1 actions
- [G] Frame Edition Extension............ 1 actions
- [G] Image LUT.......................... 1 actions
- [G] ImageAcquisitionActionExtension.... 7 actions
- [G] Mesh Processing.................... 17 actions
- [G] MultiPickingExtension.............. 1 actions
- [G] Pixel Color Changer................ 1 actions
- [G] ReconstructionExtension............ 1 actions
- [G] Reorient Image Extension........... 1 actions
- [G] ResampleExtension.................. 1 actions
- [G] ShowIn3DExtension.................. 5 actions
- [G] TrackerActionExtension............. 19 actions
- [G] VolumeRenderingExtension........... 1 actions
---
**please do not remove anything below this line**Emmanuel PromayonEmmanuel Promayon2019-08-02https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/88Problem Import DLL Windows2019-10-23T08:18:41+02:00Maxime CalkaProblem Import DLL Windows## About you
Developper on the Meniscare project.
## Overview
Problem to import functions of InteractiveViwerFrame, SliderSpinBoxWidget, SliderTextWidget.
## Steps to Reproduce
No step to reproduce
## Interpretation & Possible fixes...## About you
Developper on the Meniscare project.
## Overview
Problem to import functions of InteractiveViwerFrame, SliderSpinBoxWidget, SliderTextWidget.
## Steps to Reproduce
No step to reproduce
## Interpretation & Possible fixes
InteractiveViewerFrame.h
Actual:
class InteractiveViewerFrame : public QFrame {
public:
Expected:
class CAMITK_API InteractiveViewerFrame : public QFrame {
public:
SliderSpinBoxWidget.h
Actual:
class SliderSpinBoxWidget : public QWidget {
Q_OBJECT
Expected:
class CAMITK_API SliderSpinBoxWidget : public QWidget {
Q_OBJECT
SliderTextWidget.h
Actual:
class SliderTextWidget : public QWidget {
Q_OBJECT
Expected:
class CAMITK_API SliderTextWidget : public QWidget {
Q_OBJECT
## CamiTK Version
4.1
---
**please do not remove anything below this line**https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/94Wizard generation problem2020-03-13T20:37:01+01:00Maxime CalkaWizard generation problem## About you
PHD Student and CamiTK developer
## Overview
Problem to generate CEP with wizard
## Steps to Reproduce
Try to create CEP with wizard
## Actual VS Expected Result
Seg fault during CEP creation vs Create CEP
## CamiTK V...## About you
PHD Student and CamiTK developer
## Overview
Problem to generate CEP with wizard
## Steps to Reproduce
Try to create CEP with wizard
## Actual VS Expected Result
Seg fault during CEP creation vs Create CEP
## CamiTK Version
[Copy/Paste the output of `camitk-config -b` CamiTK Version part ]
---
**please do not remove anything below this line**Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/105Invisible VTK 3D widgets2020-07-09T21:29:06+02:00Emmanuel PromayonInvisible VTK 3D widgets## About you
CamiTK dev
## Overview
VTKWidgets not visible in 3D
## Steps to Reproduce
1. Open a mesh component file
2. Launch the Mesh Clipping action
3. Nothing vtk widget appears in 3D
## Actual VS Expected Result
There should...## About you
CamiTK dev
## Overview
VTKWidgets not visible in 3D
## Steps to Reproduce
1. Open a mesh component file
2. Launch the Mesh Clipping action
3. Nothing vtk widget appears in 3D
## Actual VS Expected Result
There should be a vtk widget to change the cutting plane
## Interpretation & Possible fixes
Check the action code, is the widget properly initialized
## CamiTK Version
CamiTK 4.2.dev.develop.04a1c024
---
**please do not remove anything below this line**CamiTK 4.2 Sprint # 2Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/107wrong tag for debian packaging CI2020-07-12T17:30:19+02:00Emmanuel Promayonwrong tag for debian packaging CIJob [#154819](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/154819) failed for 933bc0c2568482881247687a45ccc27f9856a371:Job [#154819](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/154819) failed for 933bc0c2568482881247687a45ccc27f9856a371:Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/109Wrong installation directory for libraries2024-02-23T11:13:30+01:00Theophile TiffetWrong installation directory for libraries## About you
Tiffet Théophile PhD student
## Overview
Variable CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_BINDIR are no respected during install, which can lead to problems on some distribution.
## Interpretation & Possible fixes
The var...## About you
Tiffet Théophile PhD student
## Overview
Variable CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_BINDIR are no respected during install, which can lead to problems on some distribution.
## Interpretation & Possible fixes
The variables CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_BINDIR should be used instead of hard coded path.
## CamiTK Version
Last develop version (933bc0c2)
---
**please do not remove anything below this line**CamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/110Outdated documentation2021-01-18T17:29:51+01:00Theophile TiffetOutdated documentation## About you
Tiffet Théophile PhD student
## Product
Documentation for CamiTK
## Overview
Following the modification of the viewers, their doxygen documentation was not updated. Classes like PropertyExplorer, MedicalImageViewer and o...## About you
Tiffet Théophile PhD student
## Product
Documentation for CamiTK
## Overview
Following the modification of the viewers, their doxygen documentation was not updated. Classes like PropertyExplorer, MedicalImageViewer and others still are considered singleton with a getInstance static method in the documentation. This should be with the new way of refreshing them, getting access to them with the string you have to use.
A migration guide would also be welcome.
---
**please do not remove anything below this line**CamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/111Camitk-imp crash when "Application-Close" on a component.2020-08-28T18:24:28+02:00Sylvain GuyCamitk-imp crash when "Application-Close" on a component.## About you
Developer of a CEP
## Overview
Applying "Application-Close" on a camitk component results sometimes in a crash. It doesn't seem to be deterministic. It may crash on the load or close.
## Steps to Reproduce
File- Open - "...## About you
Developer of a CEP
## Overview
Applying "Application-Close" on a camitk component results sometimes in a crash. It doesn't seem to be deterministic. It may crash on the load or close.
## Steps to Reproduce
File- Open - "brain.mha". Right click on "brain" -Application - Close.
If it doesn't crash direclty, reload brain.mha and close again. It will end up crashing on the loading or the closing.
## Relevant logs and/or screenshots
**Crash on the loading (after 2 load close)**
```
*** Program received signal SIGSEGV (Segmentation fault) ***
#0 tcache_get (tc_idx=<optimized out>) at malloc.c:2937
#1 __GI___libc_malloc (bytes=24) at malloc.c:3051
#2 0x00007f63c3d21c29 in operator new(unsigned long) () at /lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007f63c2c32604 in vtkTransformConcatenationStack::New() () at /tmp/dependencies/VTK-6.3.0/Common/Transforms/vtkAbstractTransform.h:402
#4 0x00007f63c2c3284f in vtkTransform::Push() (this=0x562eaca5c000) at /tmp/dependencies/VTK-6.3.0/Common/Transforms/vtkTransform.h:280
#5 0x00007f63c2d30923 in vtkAssemblyPath::AddNode(vtkAssemblyNode*) (this=0x562eacca10d0, n=0x562eadc89e90) at /tmp/dependencies/VTK-6.3.0/Rendering/Core/vtkAssemblyPath.cxx:55
#6 0x00007f63c2d308d5 in vtkAssemblyPath::AddNode(vtkProp*, vtkMatrix4x4*) (this=0x562eacca10d0, p=0x562eac88cc70, m=0x562eacca42f0) at /tmp/dependencies/VTK-6.3.0/Rendering/Core/vtkAssemblyPath.cxx:45
#7 0x00007f63c2ccb2d2 in vtkProp3D::InitPathTraversal() (this=0x562eac88cc70) at /tmp/dependencies/VTK-6.3.0/Rendering/Core/vtkProp3D.cxx:600
#8 0x00007f63c5d6e71d in camitk::RendererWidget::addProp(vtkSmartPointer<vtkProp>, bool) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#9 0x00007f63c5d55202 in camitk::InteractiveViewer::addActor(camitk::Component*, vtkSmartPointer<vtkProp>) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#10 0x00007f63c5d54913 in camitk::InteractiveViewer::refresh(camitk::Viewer*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#11 0x00007f63c5d685a8 in camitk::InteractiveViewerFrame::showEvent(QShowEvent*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#12 0x00007f63c56552b6 in QWidget::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#13 0x00007f63c5702d52 in QFrame::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#14 0x00007f63c5612a66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#15 0x00007f63c561c0f0 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#16 0x00007f63c5cd9428 in camitk::Application::notify(QObject*, QEvent*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#17 0x00007f63c4bfa93a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#18 0x00007f63c5651c17 in QWidgetPrivate::show_helper() () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#19 0x00007f63c5654d6b in QWidgetPrivate::setVisible(bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#20 0x00007f63c5d73ba9 in camitk::Viewer::setVisible(bool) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#21 0x00007f63c5bb7793 in MedicalImageViewer::updateLayout() () at /home/guys/.config/CamiTK/lib/camitk-4.2/viewers/libmedicalimageviewer.so.4
#22 0x00007f63c5bb6043 in MedicalImageViewer::refresh(camitk::Viewer*) () at /home/guys/.config/CamiTK/lib/camitk-4.2/viewers/libmedicalimageviewer.so.4
#23 0x00007f63c5ceda2f in camitk::MainWindow::refresh() () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#24 0x0000562ea8d62f40 in ImpMainWindow::refresh() ()
#25 0x00007f63c5cd9c0b in camitk::Application::refresh() () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#26 0x00007f63c5cda83b in camitk::Application::open(QString const&) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#27 0x00007f6373d0047f in OpenFile::apply() () at /home/guys/.config/CamiTK/lib/camitk-4.2/actions/libapplication.so.4.2.dev
#28 0x00007f63c5cd22b2 in camitk::Action::applyAndRegister() () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#29 0x0000562ea8d6700f in ImpMainWindow::openRecentDocuments() ()
#30 0x0000562ea8d61e98 in ImpMainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
#31 0x00007f63c4c26300 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#32 0x00007f63c560c3e6 in QAction::triggered(bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#33 0x00007f63c560eaa2 in QAction::activate(QAction::ActionEvent) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#34 0x00007f63c5794d12 in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#35 0x00007f63c579c4ae in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#36 0x00007f63c579d4d2 in QMenu::mouseReleaseEvent(QMouseEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#37 0x00007f63c56552b6 in QWidget::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#38 0x00007f63c579fadb in QMenu::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#39 0x00007f63c5612a66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#40 0x00007f63c561c343 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#41 0x00007f63c5cd9428 in camitk::Application::notify(QObject*, QEvent*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#42 0x00007f63c4bfa93a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#43 0x00007f63c561b457 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#44 0x00007f63c5671ce4 in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#45 0x00007f63c56741ec in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#46 0x00007f63c5612a66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#47 0x00007f63c561c0f0 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#48 0x00007f63c5cd9428 in camitk::Application::notify(QObject*, QEvent*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#49 0x00007f63c4bfa93a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#50 0x00007f63c4fe37d3 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#51 0x00007f63c4fe510b in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#52 0x00007f63c4fbf35b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#53 0x00007f63bcca432e in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#54 0x00007f63c0d80fbd in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#55 0x00007f63c0d81240 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#56 0x00007f63c0d812e3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#57 0x00007f63c4c52565 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#58 0x00007f63c4bf94db in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#59 0x00007f63c4c01246 in QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#60 0x00007f63c5cd9bbe in camitk::Application::exec() () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#61 0x0000562ea8d6c6d4 in main ()
```
**Crash after closing (after 2 load close)**
```
malloc_consolidate(): invalid chunk size
*** Program received signal SIGABRT (Aborted) ***
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007f7908e07859 in __GI_abort () at abort.c:79
#2 0x00007f7908e723ee in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7f7908f9c285 "%s\n") at ../sysdeps/posix/libc_fatal.c:155
#3 0x00007f7908e7a47c in malloc_printerr (str=str@entry=0x7f7908f9e278 "malloc_consolidate(): invalid chunk size") at malloc.c:5347
#4 0x00007f7908e7ac58 in malloc_consolidate (av=av@entry=0x7f78fc000020) at malloc.c:4477
#5 0x00007f7908e7c160 in _int_free (av=0x7f78fc000020, p=0x7f78fc01a460, have_lock=<optimized out>) at malloc.c:4400
#6 0x00007f7909fa8637 in QObject::~QObject() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#7 0x00007f7909f2ff3d in QItemSelectionModel::~QItemSelectionModel() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#8 0x00007f7909f9e01e in QObjectPrivate::deleteChildren() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#9 0x00007f790a9cac29 in QWidget::~QWidget() () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#10 0x00007f790ac4735d in QTableView::~QTableView() () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#11 0x00007f790b098f0e in camitk::ImageComponent::~ImageComponent() () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#12 0x00007f78bb094048 in VtkImageComponent::~VtkImageComponent() () at /home/guys/.config/CamiTK/lib/camitk-4.2/components/libvtkimage.so.4
#13 0x00007f78bb09409c in VtkImageComponent::~VtkImageComponent() () at /home/guys/.config/CamiTK/lib/camitk-4.2/components/libvtkimage.so.4
#14 0x00007f790b055eb7 in camitk::Application::close(camitk::Component*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#15 0x00007f78b90721f8 in CloseAction::apply() () at /home/guys/.config/CamiTK/lib/camitk-4.2/actions/libapplication.so.4.2.dev
#16 0x00007f790b04c2b2 in camitk::Action::applyAndRegister() () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#17 0x00007f790b04c068 in camitk::Action::trigger(QWidget*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#18 0x00007f790b02eac3 in camitk::Action::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#19 0x00007f7909fa0300 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#20 0x00007f790a9863e6 in QAction::triggered(bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#21 0x00007f790a988aa2 in QAction::activate(QAction::ActionEvent) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#22 0x00007f790ab0ed12 in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#23 0x00007f790ab164ae in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#24 0x00007f790ab174d2 in QMenu::mouseReleaseEvent(QMouseEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#25 0x00007f790a9cf2b6 in QWidget::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#26 0x00007f790ab19adb in QMenu::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#27 0x00007f790a98ca66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#28 0x00007f790a996343 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#29 0x00007f790b053428 in camitk::Application::notify(QObject*, QEvent*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#30 0x00007f7909f7493a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#31 0x00007f790a995457 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#32 0x00007f790a9ebce4 in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#33 0x00007f790a9ee1ec in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#34 0x00007f790a98ca66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#35 0x00007f790a9960f0 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#36 0x00007f790b053428 in camitk::Application::notify(QObject*, QEvent*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#37 0x00007f7909f7493a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#38 0x00007f790a35d7d3 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#39 0x00007f790a35f10b in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#40 0x00007f790a33935b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#41 0x00007f790201e32e in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#42 0x00007f79060fafbd in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#43 0x00007f79060fb240 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#44 0x00007f79060fb2e3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#45 0x00007f7909fcc565 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#46 0x00007f7909f734db in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#47 0x00007f790ab140b1 in QMenu::exec(QPoint const&, QAction*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#48 0x00007f790af190bf in Explorer::rightButtonPressed(QPoint const&) () at /home/guys/.config/CamiTK/lib/camitk-4.2/viewers/libexplorer.so.4
#49 0x00007f790af169cc in Explorer::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () at /home/guys/.config/CamiTK/lib/camitk-4.2/viewers/libexplorer.so.4
#50 0x00007f7909fa0300 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#51 0x00007f790a9b52d9 in QWidget::customContextMenuRequested(QPoint const&) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#52 0x00007f790a9cff85 in QWidget::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#53 0x00007f790aa7cd52 in QFrame::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#54 0x00007f790ac01482 in QAbstractItemView::viewportEvent(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#55 0x00007f790ac6f62f in QTreeView::viewportEvent(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#56 0x00007f7909f7464b in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#57 0x00007f790a98ca55 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#58 0x00007f790a996b93 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#59 0x00007f790b053428 in camitk::Application::notify(QObject*, QEvent*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#60 0x00007f7909f7493a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#61 0x00007f790a9eb94a in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#62 0x00007f790a9ee1ec in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#63 0x00007f790a98ca66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#64 0x00007f790a9960f0 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#65 0x00007f790b053428 in camitk::Application::notify(QObject*, QEvent*) () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#66 0x00007f7909f7493a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#67 0x00007f790a35d7d3 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#68 0x00007f790a35f10b in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#69 0x00007f790a33935b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#70 0x00007f790201e32e in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#71 0x00007f79060fafbd in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#72 0x00007f79060fb240 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#73 0x00007f79060fb2e3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#74 0x00007f7909fcc565 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#75 0x00007f7909f734db in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#76 0x00007f7909f7b246 in QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#77 0x00007f790b053bbe in camitk::Application::exec() () at /home/guys/.config/CamiTK/lib/libcamitkcore.so.4
#78 0x000055ad5179f6d4 in main ()
```
## Interpretation & Possible fixes
At the beginning I thought it was the fault of the destructors of my component, but since the bug also appears with the basic component of CamiTK, I have no idea where the issue could come from.
## CamiTK Version
CamiTK 4.2.dev.develop.32c2e525
---
**please do not remove anything below this line**CamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/114Failed test in action state machine2020-11-25T01:00:51+01:00Emmanuel PromayonFailed test in action state machine## About you
CamiTK developer
## Overview
Job [#178103](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/178103) failed for 92087062bc6533f58297c18826f5256436b37807
- The new action state machine test generates a bug, ...## About you
CamiTK developer
## Overview
Job [#178103](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/178103) failed for 92087062bc6533f58297c18826f5256436b37807
- The new action state machine test generates a bug, see
## Steps to Reproduce
Just check the pipeline.
On Linux (Job [#178103](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/178103)):
```
132: X Error of failed request: BadWindow (invalid Window parameter)
132: Major opcode of failed request: 2 (X_ChangeWindowAttributes)
132: Resource id in failed request: 0x2
132: Serial number of failed request: 7
132: Current serial number in output stream: 9
132: QObject::disconnect: Unexpected null parameter
```
On Windows (Job [#175675](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/175675)):
```
131: 2020-11-10 05:27:09.600 [TRACE ] Application "camitk-actionstatemachine" - Logging in C:/builds/win10-develop/sdk/applications/actionstatemachine/2020-11-10T05-27-09
131: 2020-11-10 05:27:10.760 [ERROR ] Application "camitk-actionstatemachine" - Caught an unknown exception
131: C:/builds/win10-develop/bin/camitk-actionstatemachine-debug.exe aborted...
131: Unknown Exception
1/1 Test #131: application-actionstatemachine-4 ...***Exception: SegFault 6.90 sec
```
(there is also another bug in this job, as the error is not considered failed by the pipeline)
## Actual VS Expected Result
Should not failed
## Relevant logs and/or screenshots
See related jobs
## CamiTK Version
CamiTK 4.2.dev.develop.92087062
Compiled using git Hash: 92087062bc6533f58297c18826f5256436b37807, Date: Tue Oct 20 00:24:15 2020 +0200.
---
**please do not remove anything below this line**CamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/115Pipeline does not detect failed tests2020-11-22T10:07:31+01:00Emmanuel PromayonPipeline does not detect failed tests## About you
CamiTK developer
## Overview
The action state machine tests failed, tests are sometimes reran, but the errors are not detected by the test script.
The pipeline does not fail although it should clearly fail. We are lull to ...## About you
CamiTK developer
## Overview
The action state machine tests failed, tests are sometimes reran, but the errors are not detected by the test script.
The pipeline does not fail although it should clearly fail. We are lull to a false sense of security, while there is a bug!
The two Linux configuration shows different logs but both do not detect the error
## Steps to Reproduce
- For linux stable: check [Job #177308](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/177308)
- For linux LTS: check [Job #177309](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/177309)
## Actual VS Expected Result
The pipeline should fail when there is a failed test, independently of the type of failure.
## Relevant logs and/or screenshots
### On Linux stable
In the [Job #177308](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/177308) log,
the initial tests failed with:
```
4/5 Test #132: application-actionstatemachine-5 .........Child aborted***Exception: 2.81 sec
5/5 Test #131: application-actionstatemachine-4 .........***Timeout 1800.13 sec
```
But then at the end of the job log we have:
```
===== Fatal errors =====
Found fatal error in /builds/CamiTK/CamiTK/debian-stable-develop/log/ci-test.log
===== Failed tests =====
===== Re-running failed tests =====
Re-ran tests OK
```
The relevant lines in the test.log show:
```
132: X Error of failed request: BadWindow (invalid Window parameter)
132: Major opcode of failed request: 2 (X_ChangeWindowAttributes)
132: Resource id in failed request: 0x2
132: Serial number of failed request: 7
132: Current serial number in output stream: 9
132: terminate called after throwing an instance of 'std::bad_array_new_length'
132: what(): std::bad_array_new_length
4/5 Test #132: application-actionstatemachine-5 .........Child aborted***Exception: 2.81 sec
5/5 Test #131: application-actionstatemachine-4 .........***Timeout 1800.13 sec
```
The rerun-test.log contains only one line:
```
Checking /builds/CamiTK/CamiTK/debian-stable-develop/log/test.log for failed test
```
### On Linux LTS
In the [Job #177309](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/177309) log,
the initial tests failed with:
```
4/5 Test #131: application-actionstatemachine-4 .........Child aborted***Exception: 0.71 sec
5/5 Test #132: application-actionstatemachine-5 .........***Timeout 1800.13 sec
```
But then at the end of the job log we have:
```
===== Fatal errors =====
Found fatal error in /builds/CamiTK/CamiTK/ubuntu-lts-develop/log/ci-test.log
===== Failed tests =====
===== Re-running failed tests =====
Re-ran tests OK
```
The relevant lines in the test.log show:
```
131: ...
131: X Error of failed request: BadWindow (invalid Window parameter)
131: Major opcode of failed request: 2 (X_ChangeWindowAttributes)
131: Resource id in failed request: 0x2
131: Serial number of failed request: 7
131: Current serial number in output stream: 9
131: terminate called after throwing an instance of 'std::bad_alloc'
131: what(): std::bad_alloc
4/5 Test #131: application-actionstatemachine-4 .........Child aborted***Exception: 0.71 sec
5/5 Test #132: application-actionstatemachine-5 .........***Timeout 1800.13 sec
```
The rerun-test.log contains only one line:
```
Checking /builds/CamiTK/CamiTK/ubuntu-lts-develop/log/test.log for failed test
```
## Interpretation & Possible fixes
The test script is faulty, see `.gitlab/test.sh`.
It should be better at parsing the log to detect problems
## CamiTK Version
CamiTK 4.2.dev.develop.92087062
Compiled using git Hash: 92087062bc6533f58297c18826f5256436b37807, Date: Tue Oct 20 00:24:15 2020 +0200.CamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/117Update upstream-ci/master in order to fix package build2024-02-23T11:13:30+01:00Emmanuel PromayonUpdate upstream-ci/master in order to fix package build## About you
CamiTK dev & maintainer
## Overview
## Steps to Reproduce
See error for instance in Job [#187192](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/187192) failed for f1e1a157f156667c4c74908c54343597739b4...## About you
CamiTK dev & maintainer
## Overview
## Steps to Reproduce
See error for instance in Job [#187192](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/187192) failed for f1e1a157f156667c4c74908c54343597739b4412:
## Actual VS Expected Result
no package build vs debian unstable package are build
## Relevant logs and/or screenshots
See error for instance in Job [#187192](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/187192) failed for f1e1a157f156667c4c74908c54343597739b4412:
## Interpretation & Possible fixes
- Check lintian message
- Check d/r
It seems the first time the package build failed was after !156 was merged, see #109
## CamiTK Version
Current development as of 23 dec 2020
## Latest info
As of 1 feb 2021
Job [#197871](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871) failed for 45108ed033f366a2c065e14aae61c1fd7c83255b:
The package was not generated, please check the artifacts and fix the problem:
- summary: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/packaging-debian-unstable-develop/log/summary.log
- check environment: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/packaging-debian-unstable-develop/log/check-environment.log
- build package: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/packaging-debian-unstable-develop/log/build-package.log
- prepare package environment: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/packaging-debian-unstable-develop/log/prepare-package-environment.log
---
**please do not remove anything below this line**CamiTK 5Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/119CMake error when trying to install a CEP dependent on another CEP2021-01-14T14:13:23+01:00Emmanuel PromayonCMake error when trying to install a CEP dependent on another CEP## About you
CamiTK developer/maintainer
## Overview
In CamiTK community edition, the cep-generator test allows us to check that everything works when compiling a CEP that depends on CamiTK SDK
There is no test that check the third-le...## About you
CamiTK developer/maintainer
## Overview
In CamiTK community edition, the cep-generator test allows us to check that everything works when compiling a CEP that depends on CamiTK SDK
There is no test that check the third-level dependency, i.e., when trying to compile and install a CEP that depends on another CEP that depends on CamiTK SDK.
With recent version of CMake, warnings about missing autogen target became errors.
Now it is not possible to install a CEP that depends on another already installed CEP without a CMake error (although it is possible to build it...).
## Steps to Reproduce
This is quite long to reproduce:
1. build and install the latest develop version of CamiTK CE
2. create a CEP called level2cep that has dependencies to CamiTK SDK, e.g. that have a component that depends on medicalimageviewer or vtkmesh. This CEP should create a new component, lets call it level2comp
3. build an install level2cep
4. create a CEP called level3cep that has dependencies to level2Cp, e.g. that have a component that depends on level2comp
5. build level3cep
At configure time you should see an error:
```cmake
CMake Error in components/level2comp/CMakeLists.txt:
The dependency target "component-level2comp" of target
"component-level2comp_autogen" does not exist.
```
BUT the build will finish and everything will work
6. try to install level3cep, you you will get the same error but the install will fail.
## Actual VS Expected Result
There should be no error and the the install should work.
## Interpretation & Possible fixes
CMake camitk_extension macro should take into account the fact that if a target is not found, it should be declared as imported.
Possible fix: add a test in camitk_extension to check if a target exist or not using `if (NOT TARGET ...)`
**Caveat:** using `if (NOT TARGET ...)` will not be able to distinguish between external targets and local targets that are not yet declared in the configuration process.
## CamiTK Version
CamiTK 4.2.dev.develop.ae2812e8
---
**please do not remove anything below this line**CamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/121Debian packaging failed2021-02-01T22:22:38+01:00Emmanuel PromayonDebian packaging failedJob [#197871](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871) failed for 45108ed033f366a2c065e14aae61c1fd7c83255b:
The package was not generated, please check the artifacts and fix the problem:
- summary: https...Job [#197871](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871) failed for 45108ed033f366a2c065e14aae61c1fd7c83255b:
The package was not generated, please check the artifacts and fix the problem:
- summary: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/debian-unstable-develop/log/summary.log
- check environment: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/debian-unstable-develop/log/check-environment.log
- build package: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/debian-unstable-develop/log/build-package.log
- prepare package environment: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/debian-unstable-develop/log/prepare-package-environment.logCamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/124Action Viewer popup selector not working2021-03-03T21:05:34+01:00Emmanuel PromayonAction Viewer popup selector not working## Overview
Action Viewer presents action selectors and tag research on the top left of its GUI. When the user select a family and then an action (or just an action, or just type a keyword in the tag area) in the corresponding combo box...## Overview
Action Viewer presents action selectors and tag research on the top left of its GUI. When the user select a family and then an action (or just an action, or just type a keyword in the tag area) in the corresponding combo box, it should directly trigger the action and show the widget in the bottom area of the Action Viewer widget.
This is broken.
Apart from reducing the user experience, this might result in misunderstanding or wrong action from the user.
## Steps to Reproduce
Select a family and an action
- Open a component (e.g. cthead1.lsm)
- click on the Family combo box and select a family (e.g. File)
- click on the Action combo box and select an action (e.g. Close)
or select an action
- Open a component (e.g. cthead1.lsm)
- click on the Action combo box and select an action (e.g. Image Look Up Table)
or type a tag
- Open a component (e.g. cthead1.lsm)
- enter a keyword in the Tag text input (e.g. Change)
## Actual VS Expected Result
The action should be triggered (e.g. close the file)
but noting happen.
Moreover when an action is selected, the family and action combo box do not display the correct values:
- Open a component (e.g. cthead1.lsm)
- Right Click on the component in the explorer
- Click on View → Image Look Up Table
- Click on the Family combo box and select a family (e.g. File)
- The Action combo box is not updated correspondingly
## Interpretation & Possible fixes
`ActionViewer` is the culprit.
## CamiTK Version
CamiTK 5.0.dev.develop.65572eb5Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/125Packaging configuration does not define Core::libDir2021-05-03T17:50:24+02:00Emmanuel PromayonPackaging configuration does not define Core::libDir## Actual VS Expected Result
After configuration, build/CamiTKPackageVersion.h shows
```cpp
...
const char * Core::libDir = "";
```
Should be
```cpp
...
const char * Core::libDir = "lib";
```
## Interpretation & Possible fixes
`SDKC...## Actual VS Expected Result
After configuration, build/CamiTKPackageVersion.h shows
```cpp
...
const char * Core::libDir = "";
```
Should be
```cpp
...
const char * Core::libDir = "lib";
```
## Interpretation & Possible fixes
`SDKConfig.cmake` configure line is called before `GNUinstall` cmake script.
→ move the `configure_file` accordingly
## CamiTK Version
CamiTK 5.0.dev.develop.d0704b93Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/127Support of ITK5 on debian2022-11-20T10:08:49+01:00Emmanuel PromayonSupport of ITK5 on debian## About you
CamiTK developer
## Product
camitk community edition
## Overview
debian got rid of itk4, and will only support itk5 from now on.
Next ubuntu LTS has a debian freeze on February 24
## Challenge
get camitk5 back into un...## About you
CamiTK developer
## Product
camitk community edition
## Overview
debian got rid of itk4, and will only support itk5 from now on.
Next ubuntu LTS has a debian freeze on February 24
## Challenge
get camitk5 back into unstable and therefore support ITK5 and all new sid niceties and updates...Emmanuel PromayonEmmanuel Promayon2022-02-14https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/128File CommandLineOptions.ixx.o missing2023-03-30T16:48:41+02:00Celine FouardFile CommandLineOptions.ixx.o missing## About you
Céline Fouard ex-CamiTK developper, now CamiTK intensive user
## Overview
I want to install CamiTK on my brand new machine (Ubuntu 22.04.2 LTS 64 bits), and I choose to install the develop version from git.
## Steps to R...## About you
Céline Fouard ex-CamiTK developper, now CamiTK intensive user
## Overview
I want to install CamiTK on my brand new machine (Ubuntu 22.04.2 LTS 64 bits), and I choose to install the develop version from git.
## Steps to Reproduce
I checkedout sources in a scr/ directory, and created a buid/ directory. Into the build, I exectued the following commands:
> cmake $CAMITK_SOURCE_DIR -DCEP_IMAGING=TRUE -DCEP_MODELING=TRUE -DCEP_TUTORIALS=TRUE -DCMAKE_INSTALL_PREFIX="/opt/camitk"
> cmake --build . --parallel 8 --target install
## Actual VS Expected Result
I obtained the following result:
## Relevant logs and/or screenshots
[Paste any relevant logs - please use code blocks (```) to format console output, logs, and code as it's very hard to read otherwise.]
```[ 45%] Linking CXX executable ../../../bin/camitk-actionstatemachine
/usr/bin/ld : ne peut pas trouver CMakeFiles/application-actionstatemachine.dir/CommandLineOptions.ixx.o : Aucun fichier ou dossier de ce type
collect2: error: ld returned 1 exit status
gmake[2]: *** [sdk/applications/actionstatemachine/CMakeFiles/application-actionstatemachine.dir/build.make:503 : bin/camitk-actionstatemachine] Erreur 1
gmake[1]: *** [CMakeFiles/Makefile2:5561 : sdk/applications/actionstatemachine/CMakeFiles/application-actionstatemachine.dir/all] Erreur 2
gmake: *** [Makefile:166 : all] Erreur 2
```
## Interpretation & Possible fixes
I had the same problem compiling the camitk-5.0.2 package on with install target at /usr/local/. The actual firs error was the same error, but on the application testcomponent.
I do not understand where this come from, I did not touch my paths...
## CamiTK Version
[Copy/Paste the output of `camitk-config -b` CamiTK Version part ]
> can't run camitk-config....
---
**please do not remove anything below this line**https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/133imp and actionstatemachine requires linking with specific viewers2023-11-29T11:23:11+01:00Emmanuel Promayonimp and actionstatemachine requires linking with specific viewers## About you
camitk developer
## Overview
imp and actionstatemachine requires linking with specific viewers.
This means they are _linked_ to for instance medicalimageviewer lib.
This is not admissible as this means LD_LIBRARY_PATH ha...## About you
camitk developer
## Overview
imp and actionstatemachine requires linking with specific viewers.
This means they are _linked_ to for instance medicalimageviewer lib.
This is not admissible as this means LD_LIBRARY_PATH has to be modified to include lib/camitk-x.y/viewers which is not a standard or easy thing to set.
## Steps to Reproduce
`ldd -r bin/camitk-imp` shows the dependencies
## Actual VS Expected Result
sdk applications should not have to be linked to viewers.
**Note** This might be ok for CEP applications (very rare case, see `tutorials/applications/fancy` for an example where this might be required).
## Relevant logs and/or screenshots
Test using docker:
```bash
$ docker pull gricad-registry.univ-grenoble-alpes.fr/camitk/camitk/camitk-lts:5.1
$ docker run --privileged=true --rm -v /tmp/.X11-unix:/tmp/.X11-unix -v ./build:/home/camitk/build -w /home/camitk/build -e "LD_LIBRARY_PATH=/home/camitk/build/lib" -e "DISPLAY=:0" -ti gricad-registry.univ-grenoble-alpes.fr/camitk/camitk/camitk-lts:5.1 bin/camitk-config --version
bin/camitk-config build using CamiTK 5.1.dev.develop.db3bf90b
$ docker run --privileged=true --rm -v /tmp/.X11-unix:/tmp/.X11-unix -v ./build:/home/camitk/build -w /home/camitk/build -e "LD_LIBRARY_PATH=/home/camitk/build/lib" -e "DISPLAY=:0" -ti gricad-registry.univ-grenoble-alpes.fr/camitk/camitk/camitk-lts:5.1 bin/camitk-imp --version
bin/camitk-imp: error while loading shared libraries: libactionviewer.so.5: cannot open shared object file: No such file or directory
```
## Interpretation & Possible fixes
For sdk application only user `Viewer` API and do not use specific method.
That might means a rewrite of `MedicalImageViewer::setToolbarAutoVisibility` and `MedicalImageViewer::setToolBarVisibility`
Even if this might mean few duplicated lines, check if it possible to also remove dependencies to Medical Image Viewer in `tutorials/applications/fancy` as well.
## CamiTK Version
CamiTK 5.1.dev.develop.db3bf90b
---
**please do not remove anything below this line**Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/135Cancel color picking displays warning2023-04-28T14:50:23+02:00Manik BhattacharjeeCancel color picking displays warning## About you
CamiTK developer
## Overview
When selecting a Mesh component and trying to set its color, if the user cancels the color picking, a CamiTK warning is displayed.
## Actual VS Expected Result
No message should be displayed i...## About you
CamiTK developer
## Overview
When selecting a Mesh component and trying to set its color, if the user cancels the color picking, a CamiTK warning is displayed.
## Actual VS Expected Result
No message should be displayed if the user cancels.
## Interpretation & Possible fixes
actions/mesh/basicmesh/ChangeColor.cpp contains a CAMITK_WARNING in the cancel case. Just removing this line should be enough.
## CamiTK Version
CamiTK 5.1.dev
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/136Mesh wireframe visualisation problem2023-04-29T13:30:27+02:00Emmanuel PromayonMesh wireframe visualisation problem## Overview
(this bug was initially reported by @bhattacm, thanks!)
There is a display problem when displaying mesh and surface rendering at the same time that disappears when surface rendering is switched off:
## Steps to Reproduce
...## Overview
(this bug was initially reported by @bhattacm, thanks!)
There is a display problem when displaying mesh and surface rendering at the same time that disappears when surface rendering is switched off:
## Steps to Reproduce
On Ubuntu 22.04 using `develop` branch, open `bassin.msh` testdata mesh and switch surface and wireframe rendering.
## Actual VS Expected Result
The wireframe should not have dangling and extra lines
## Relevant logs and/or screenshots
Rendering with both wireframe and surface:
![bugLinesWithSurface](/uploads/6be28fe65f793a1ae942bb4dcdb39c60/bugLinesWithSurface.png)
Rendering with wireframe only:
![bugLinesNoSurface](/uploads/eb5da7446a711fbb62ea3afe6f3a0e27/bugLinesNoSurface.png)
## Interpretation & Possible fixes
Probably due to OpenGL management stack in VTK7 and Qt5.
## CamiTK Version
This bug affects at least CamiTK 5.1.dev.develop.cb2bca7f (and probably earlier versions) on Ubuntu 22.04 using VTK7.
---
**please do not remove anything below this line**Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/144Documentation issue2023-06-29T20:28:20+02:00Manik BhattacharjeeDocumentation issue**Note :** This is generic issue, please reopen it every time you need to correct any typo in or improve the documentation or comments.
There could be multiple branches opened for fixing this (recurrent) issue along the way.
**:warning...**Note :** This is generic issue, please reopen it every time you need to correct any typo in or improve the documentation or comments.
There could be multiple branches opened for fixing this (recurrent) issue along the way.
**:warning: When you reopen this issue please add a comment to specify current objective.**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/153DicomComponent ignores DICOM orientation2023-07-26T16:19:28+02:00Manik BhattacharjeeDicomComponent ignores DICOM orientation## About you
CamiTK developer
## Overview
When using DicomComponent to load a volume, the image transform from DICOM header is ignored.
## Steps to Reproduce
Load a Dicom volume (e.g. MRI) that was not acquired directly in the orient...## About you
CamiTK developer
## Overview
When using DicomComponent to load a volume, the image transform from DICOM header is ignored.
## Steps to Reproduce
Load a Dicom volume (e.g. MRI) that was not acquired directly in the orientation of the scanner.
Observe that the Frame transform to world coordinates is identity
## Actual VS Expected Result
The frame transform between the loaded DicomComponent and world coordinates should be the transform stored in the DICOM (Image Position and Orientation of Patient).
## Interpretation & Possible fixes
CardioModel CEP Dicom Component (from @lecesnee and @fouardc) implements reading the transform and setting it in the frame of the component. Importing the code into the current DicomComponent should solve this.
## CamiTK Version
CamiTK 5.1.dev.develop.c3d59664
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/154Opening multiple DICOM series from one directory can result in a segfault2023-07-28T14:58:49+02:00Manik BhattacharjeeOpening multiple DICOM series from one directory can result in a segfault## About you
CamiTK developer
## Overview
When opening a DICOM directory, selecting multiple series to open sometimes crashes the software (segfault)
## Steps to Reproduce
Unfortunately I cannot share (yet) the data used to test. In ...## About you
CamiTK developer
## Overview
When opening a DICOM directory, selecting multiple series to open sometimes crashes the software (segfault)
## Steps to Reproduce
Unfortunately I cannot share (yet) the data used to test. In this DICOM directories, multiple series have the exact same name.
After launching camitk-imp, opening the directory and selecting two series (for example Axial and Coronal T2 acquisitions) will result in a crash.
## Actual VS Expected Result
Multiple Components should be loaded without crashing.
## Relevant logs and/or screenshots
From the debugger:
```gdb
#4 0x00007fffe41f0f71 in DicomSeries::getStudyName() const () from /home/bhattacm/Datas/prog/CamiTK2/build/lib/camitk-5.1/components/libdicom.so.5.1.dev
#5 0x00007fffe41e7ca9 in DicomComponentExtension::open(QString const&) () from /home/bhattacm/Datas/prog/CamiTK2/build/lib/camitk-5.1/components/libdicom.so.5.1.dev
#6 0x00007ffff7d2c7fa in camitk::Application::openDirectory (dirName=..., pluginName=...)
```
## Interpretation & Possible fixes
There may be three problems with the following code in DicomComponentExtension.cpp
```cpp
// Open each selected Dicom as a component
if (!seriesDialogEntries.isEmpty()) {
foreach (DicomDialogEntry* entry, seriesDialogEntries) {
// Find the corresponding Dicom Series in the List
foreach (DicomSeries* series, seriesParsed) {
if ((series->getStudyName() == entry->getStudyName()) &&
(series->getSeriesName() == entry->getSeriesName())) {
lastOpenedComponent = new DicomComponent(series);
break;
}
else {
delete series;
}
}
}
}
```
- The selected study is identified by name, and not ID. If two series have the same name, the first one will be loaded (may not be the correct one)
- "delete series;" statement will delete series that do not match the chosen serie's name **until the chosen series is found**. The series following this one will not be deleted (memory leak)
- if multiple series are selected, the outer loop will execute the inner loop a second time. At that point, **some series are already deleted but the inner loop will call getStudyName and getSeriesName on them** if they happen to be before the selected series in the seriesParsed list. This causes the segfault.
Proposed solutions:
- delete all series **after** the loops, not some of them (except if the series object is still stored somewhere in the DicomComponent)
- Try to use the series ID to find out which image was selected to avoid relying on the name which might not be unique
## CamiTK Version
CamiTK 5.1.dev.develop.c3d59664
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/168Fancy segfault2023-10-29T15:05:39+01:00Emmanuel PromayonFancy segfault## About you
CamiTK dev
## Overview
Application camitk-fancy crashed with segfault as soon as it starts.
## Steps to Reproduce
- build CamiTK with -DCEP_TUTORIAL=TRUE
- cd build
- bin/camitk-fancy
## Actual VS Expected Result
Crash...## About you
CamiTK dev
## Overview
Application camitk-fancy crashed with segfault as soon as it starts.
## Steps to Reproduce
- build CamiTK with -DCEP_TUTORIAL=TRUE
- cd build
- bin/camitk-fancy
## Actual VS Expected Result
Crash versus fancy main window opening
## Interpretation & Possible fixes
`comp` attribute is not set to nullptr
## CamiTK Version
CamiTK 5.2.0.develop.3480339c
Compiled using git Hash: 3480339c7626584d1ad62f045dbc5cf5b472345f, Date: Fri Jul 28 14:49:32 2023 +0200.Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/171Crash when printing debug information (F2 key)2023-11-24T16:35:20+01:00Manik BhattacharjeeCrash when printing debug information (F2 key)## About you
CamiTK developer
## Overview
When a component is displayed in InteractiveViewer, pressing the F2 key should display debug information in the log.
Instead, CamiTK crashes (segfault).
## Steps to Reproduce
- Run camitk-imp...## About you
CamiTK developer
## Overview
When a component is displayed in InteractiveViewer, pressing the F2 key should display debug information in the log.
Instead, CamiTK crashes (segfault).
## Steps to Reproduce
- Run camitk-imp
- Open a mesh (.obj) or an image (.nii)
- Push F2 key
## Actual VS Expected Result
IMP crashes and does not display debug information
## Interpretation & Possible fixes
Crash happens in InteractiveViewer.cpp when creating a list of all props from a component:
`std::list<vtkSmartPointer <vtkProp> > allActors(actorMap.values(c).begin(), actorMap.values(c).end());`
## CamiTK Version
Current develop branch of camitk-5.2
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/172On Windows, CamiTK applications may block or wait indefinitely2023-11-27T15:47:09+01:00Manik BhattacharjeeOn Windows, CamiTK applications may block or wait indefinitely## About you
CamiTK developer, reported by two windows users
## Overview
After a crash, and even after reinstalling CamiTK, camitk-imp does not open or takes a very long time (several minutes) before opening. camitk-config can display ...## About you
CamiTK developer, reported by two windows users
## Overview
After a crash, and even after reinstalling CamiTK, camitk-imp does not open or takes a very long time (several minutes) before opening. camitk-config can display paths, but will not return for a very long time, or display a locking timeout in a command window.
## Steps to Reproduce
Not obvious. It seems to involve .lock or .rmlock files in %username%/AppData/Roaming/CamiTK directory.
Removing the entire directory seems to fix it.
## Actual VS Expected Result
Expected: camitk-imp starts in a few seconds (not minutes), and camitk-config returns less than a second after displaying the info (not minutes).
## Relevant logs and/or screenshots
A Qt message is sometimes displayed in a loop in a terminal while camitk-config is waiting to exit (data already displayed, but the software is not exiting): "Got unexpected locking error 123"
## Interpretation & Possible fixes
Not obvious. It seems that in some circumstances, in the %username%/AppData/Roaming/CamiTK directory, some lock files are present and Qt tries to lock settings files but fails to do so. It might also come from a conflict between camitk-config and camitk-imp trying to access the file at the same time.
This stems from the Application class creating a QSettings object in Application.cpp (global static object):
`QSettings Application::settings(QSettings::IniFormat, QSettings::UserScope, "CamiTK", QString(Core::version).remove(QChar(' ')));`
From [Qt documentation](https://doc.qt.io/qt-6/qsettings.html#accessing-settings-from-multiple-threads-or-processes-simultaneously) IniFormat should work and manage locking correctly, but it seems that sometimes it fails to do so.
Turning the locking safety off might solve this problem as stated [in the documentation](https://doc.qt.io/qt-6/qsettings.html#setAtomicSyncRequired) but it might create other issues (if multiple camitk applications are running and overwrite each other's settings).
## CamiTK Version
Stable 5.0 windows version
---
**please do not remove anything below this line**https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/173In Action viewer's search panel, the Family combo box does not filter actions2023-11-29T14:58:33+01:00Manik BhattacharjeeIn Action viewer's search panel, the Family combo box does not filter actions## About you
CamiTK developer
## Overview
In the action viewer, the "Family" combo box does nothing.
## Steps to Reproduce
- from a newly built CamiTK, run camitk-imp
- open testdata/sinus-displaced.mha
- In the menu click on View/To...## About you
CamiTK developer
## Overview
In the action viewer, the "Family" combo box does nothing.
## Steps to Reproduce
- from a newly built CamiTK, run camitk-imp
- open testdata/sinus-displaced.mha
- In the menu click on View/Toggle Docked Viewers/Action Viewer to show the Action viewer panel
- Select the component
- Click on the Action combobox in the actions panel and see the list of available actions
- Select a Family e.g. Frame
- Click on the Action combobox, all actions are still there
## Actual VS Expected Result
All actions are visible, nor only the actions from the selected family.
## Interpretation & Possible fixes
This bug was introduced by commit 1bdd9a84 with a change to ImpMainWindow.cpp around line 111.
The line
`actionViewer->setSearchPanelVisible(true);`
was removed.
We could either restore this line (and the necessary dynamic_cast to ActionViewer) or call it from the ActionViewer constructor.
I am not certain why setSearchPanelVisible should disconnect the link from the combobox'signals to the relevant methods.
## CamiTK Version
CamiTK 5.2.0.157-reference-frames-and-transformations-management.a9f78af5
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/176Triggering the Arbitrary Slice action crashes with 2D images2023-12-22T23:07:35+01:00Emmanuel PromayonTriggering the Arbitrary Slice action crashes with 2D images## About you
CamiTK developer
## Overview
When triggering the "Arbitrary Slice" on an image component that contains a 2D image, the application crashes.
## Steps to Reproduce
Save [this image](/uploads/43c877105d9b1b7d3fd67d85088016...## About you
CamiTK developer
## Overview
When triggering the "Arbitrary Slice" on an image component that contains a 2D image, the application crashes.
## Steps to Reproduce
Save [this image](/uploads/43c877105d9b1b7d3fd67d85088016b0/debian-logo.png) and open it with `camitk-imp`
Select the component, and select the `View` → `Arbitrary Slice`
→ `camitk-imp` crashes
## Actual VS Expected Result
No crash !
The arbitrary slice action should abort cleanly and a warning message should be displayed to explain why the action aborted.
## Interpretation & Possible fixes
The arbitrary slice's `SingleImageComponent` is only created if the image component has 3 dimensions (see ImageComponent.cpp:562 and line 571. When the arbitrary slice action is triggered it does not take into account the fact that an `ImageComponent` can have no arbitrary slice subcomponent.
Check the pointer value before accessing it (see AnglesAndTranslationAction::getWidget(), line 106).
## CamiTK Version
CamiTK 5.2.0.develop. 54c95fce
---
**please do not remove anything below this line**https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/177Save All fails if a Component does not have a filename (e.g. newly reconstruc...2024-02-07T12:35:39+01:00Manik BhattacharjeeSave All fails if a Component does not have a filename (e.g. newly reconstructed mesh)## About you
CamiTK developer
## Overview
SaveAll implementation is wrong and fails in multiple ways when components to save do not have a filename. This can lead to data loss (thinking a file was saved even it was not) and segfault (w...## About you
CamiTK developer
## Overview
SaveAll implementation is wrong and fails in multiple ways when components to save do not have a filename. This can lead to data loss (thinking a file was saved even it was not) and segfault (when no component is selected).
## Steps to Reproduce
Open two masks (e.g. skull-binary.stl and head-binary from testdata).
Using action Reconstruction to create a mesh from each mask.
- Scenario 1
- Select both meshes
- Click on "Save All" from the File menu
- In the first Save As window, save as Mesh1.obj
- In the second window, save as Mesh2.obj
- Scenario 2
- Deselect all components
- Click on "Save All" from the File menu
## Actual VS Expected Result
- Scenario 1
- Expected: both meshes are saved in their own file, each now has a filename set to the one that was used to save them
- Actual: only one of the meshes was saved in both files. This mesh now has a filename set to the latest file saved. The other mesh is ignored and not saved
- Scenario 2
- Expected: both meshes are saved in their own file
- Actual result: CamiTK crashes, all work is lost
## Interpretation & Possible fixes
- `SaveAllAction::apply` calls `Application::save` on all top-level components.
- `Application::save` checks if the filename is empty. If it is, it calls
- `getAction("Save As")->apply()`.
The problem here is that the `SaveAsAction::apply` function does not know which component it must save, as this is not a parameter of `apply`.
It will try to save the last selected component, which is probably not the one we are trying to save.
`Component* comp = Application::getSelectedComponents().last();`
If there is no selected component (Scenario 2), this tries to get a Component from an empty list and crashes (qt_assert in debug mode).
If there is at least a selected component, SaveAll will save the last selected component over and over again.
**To fix this**
Modify action "Save As" so we can set a componentToSave parameter, apply it, then reset ComponentToSave to null_ptr. Apply would then check for this parameter, revert to the current behaviour if it is empty, and check if there are selectedComponents before getting the last element.
## CamiTK Version
CamiTK 5.2.0.158-camitk-file-format-metadata-scenes-processing-scenarios.c46342cd
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjee