Commit e15cca20 authored by Genial-O's avatar Genial-O
Browse files

merge(dev): release 20.0.0

parents 88fb3a95 4797bd6e
......@@ -16,10 +16,15 @@ syntax: glob
# reject and backup file
*.rej
*.orig
# macos
.DS_Store
# vs 2017 cmake project files
\.vs*
# VisualStudio
.vs/
CMakeSettings\.json
# VSCode
*.code-workspace
.vscode/
# JetBrains IDEs
.idea/
# Just for the CI
sight-git
\ No newline at end of file
This diff is collapsed.
......@@ -13,7 +13,7 @@
* Compiler: (gcc/clang/... & version)
* Build type: (debug/release)
* Commit: (current commit or tag)
* (Any related repository commit/tag e.g fw4spl-deps, fw4spl, fw4spl-ar ...)
* (Any related repository commit/tag e.g conan, sight, sight-doc ...)
### What is the current *bug* behavior?
......
### Description
(Description of the feature to be implemented as a story: task of a project work package, associated deliverable ...)
### Task list
(The complete task list must be created at the issue creation and then the associated issue links must be appended to each associated task)
- [ ] Task 1
- [ ] Task 2
- [ ] ...
/label ~"Type:story"
## What does this MR do?
## Description
(Briefly describe what this MR is about)
Closes #number
## How to test it?
(Describe how to test this feature step by step)
......@@ -20,13 +22,3 @@
- [ ] Build on Windows
- [ ] ...
## Associated Issues/Merge Requests
- Issues
- Fixes repo#number
- [ ] depends on repo#number
- Merge requests
- See also repo!number
- [ ] depends on repo!number
fwLoadProperties()
generic_install()
\ No newline at end of file
set( NAME ARCalibration )
set( VERSION 0.7 )
set( TYPE APP )
set( DEPENDENCIES )
set( REQUIREMENTS
dataReg
arDataReg
servicesReg
patchMedicalData
arPatchMedicalData
gui
guiQt
ioAtoms
ioCalibration
ioActivity
uiIO
uiGenericQt
uiMedDataQt
media
arMedia
activities
calibrationActivity
trackedCameraRegistrationActivity
toolCalibrationActivity
appXml
fwlauncher
memory
preferences
uiPreferences
)
bundleParam(appXml PARAM_LIST config parameters PARAM_VALUES ARCalibrationBase ARCalibrationAppBase)
<extension implements="::fwServices::registry::AppConfig">
<id>activitySelector</id>
<parameters>
<param name="SERIESDB" />
<param name="LOADING_SERIESDB" />
<param name="WID_PARENT" />
<param name="CREATE_ACTIVITY_CHANNEL" />
<param name="LAUNCH_ACTIVITY_CHANNEL" />
<param name="LAUNCH_ACTIVITY_SERIES_CHANNEL" />
<param name="LOAD_ACTIVITY_CHANNEL" />
<param name="ICON_PATH" />
</parameters>
<config>
<object uid="${SERIESDB}" type="::fwMedData::SeriesDB" src="ref"/>
<object uid="${LOADING_SERIESDB}" type="::fwMedData::SeriesDB" src="ref" />
<service uid="mainview" type="::gui::view::SDefaultView">
<gui>
<layout type="::fwGui::CardinalLayoutManager">
<view align="center" minWidth="200" visible="false" />
<view align="bottom" />
</layout>
</gui>
<registry>
<parent wid="${WID_PARENT}" />
<view sid="activityCreator" start="yes" />
<view sid="selector" start="yes" />
</registry>
</service>
<!-- Editor to create/update an activity. -->
<service uid="activityCreator" type="::uiMedDataQt::editor::SActivityWizard" >
<inout key="seriesDB" uid="${SERIESDB}" />
<ioSelectorConfig>SDBReaderIOSelectorConfig</ioSelectorConfig>
<sdbIoSelectorConfig>FullSDBReaderIOSelectorConfig</sdbIoSelectorConfig>
<confirm>false</confirm>
<icons>
<icon type="::fwMedData::ImageSeries" icon="media-0.1/icons/ImageSeries.svg" />
<icon type="::fwMedData::ModelSeries" icon="media-0.1/icons/ModelSeries.svg" />
<icon type="::arData::CameraSeries" icon="arMedia-0.1/icons/CameraSeries.svg" />
</icons>
</service>
<!-- Editor to select an activity. -->
<service uid="selector" type="::activities::editor::SCreateActivity">
<filter>
<mode>include</mode>
<id>Calibration</id>
<id>CalibrationCharuco</id>
<id>RGBDCalibration</id>
<id>calibrationEdition</id>
<id>TrackedCameraRegistration</id>
<id>toolCalibrationActivity</id>
</filter>
</service>
<service uid="seriesSignal" type="::activities::SSeriesSignal" autoConnect="yes">
<in key="seriesDB" uid="${LOADING_SERIESDB}" />
<filter>
<mode>include</mode>
<type>::fwMedData::ActivitySeries</type>
</filter>
</service>
<!-- When an activity is opened: it calls the creator's update activity slot. -->
<connect channel="${LAUNCH_ACTIVITY_SERIES_CHANNEL}">
<signal>seriesSignal/seriesAdded</signal>
</connect>
<!-- Hide the creator editor when the activity creation is canceled. -->
<connect>
<signal>activityCreator/canceled</signal>
<slot>activityCreator/hide</slot>
<slot>selector/show</slot>
</connect>
<!-- connect to hide the creator editor when the activity is created/updated. -->
<connect channel="hide_activity_creator_channel">
<signal>selector/activityIDSelected</signal>
<signal>activityCreator/activityCreated</signal>
<signal>activityCreator/activityUpdated</signal>
<slot>activityCreator/hide</slot>
</connect>
<!-- connect to show the creator editor when the activity should be created. -->
<connect channel="${CREATE_ACTIVITY_CHANNEL}">
<signal>selector/activityIDSelected</signal>
<slot>activityCreator/createActivity</slot>
<slot>selector/hide</slot>
</connect>
<!-- connect to launch the activity when it is created/updated. -->
<connect channel="${LAUNCH_ACTIVITY_CHANNEL}">
<signal>activityCreator/activityCreated</signal>
<signal>activityCreator/activityUpdated</signal>
<slot>selector/show</slot>
</connect>
<!-- connect to load the activity . -->
<connect channel="${LOAD_ACTIVITY_CHANNEL}">
<signal>selector/loadRequested</signal>
</connect>
<start uid="mainview" />
<start uid="seriesSignal" />
</config>
</extension>
<extension implements="::fwServices::registry::AppConfig">
<id>SDBARCalibration</id>
<parameters>
<param name="SERIESDB" />
<param name="WID_PARENT" />
<param name="DYNAMICVIEW_CHANNEL" default="channel" />
<param name="ICON_PATH" />
</parameters>
<config>
<object uid="${SERIESDB}" type="::fwMedData::SeriesDB" src="ref"/>
<object uid="selections" type="::fwData::Vector" />
<service uid="mainview" type="::gui::view::SDefaultView">
<gui>
<layout type="::fwGui::CardinalLayoutManager">
<view caption="Information" align="center" minWidth="200" />
</layout>
</gui>
<registry>
<parent wid="${WID_PARENT}" />
<view sid="selector" start="yes" />
</registry>
</service>
<service uid="selector" type="::uiMedDataQt::editor::SSelector" autoConnect="yes">
<inout key="seriesDB" uid="${SERIESDB}" />
<inout key="selection" uid="selections" />
<icons>
<icon series="::arData::CameraSeries" icon="arMedia-0.1/icons/calibrationActivity.svg" />
</icons>
</service>
<start uid="mainview" />
</config>
</extension>
fwLoadProperties()
generic_install()
set( NAME OgreViewer )
set( VERSION 0.3 )
set( TYPE APP )
set( DEPENDENCIES )
set( REQUIREMENTS
fwlauncher # Just to build the launcher
appXml # XML configurations
preferences # Start the bundle, load file location or window preferences
visuOgre # Start the bundle, redirect Ogre's log to Sight log
material # Start the bundle, load Ogre's materials
visuVTKQt # Start the bundle, allow vtk to be displayed in QT.
visuOgreQt # Allow Ogre to be displayed in QT.
# Objects declaration
fwData
fwMedData
# UI declaration/Actions
gui
media
arMedia
guiQt
# Configuration launchers
fwServices
ogreConfig
# Services
ctrlSelection
uiVisuOgre
uiIO
ioAtoms
videoTools
uiImageQt
videoQt
ctrlCamp
uiMeasurement
# Generic Scene
fwRenderOgre
fwRenderVTK
visuOgreAdaptor
visuVTKAdaptor
visuVTKVRAdaptor
arDataReg
dataReg
servicesReg
)
bundleParam(appXml PARAM_LIST config PARAM_VALUES OgreViewer_Extension)
<extension implements="::fwServices::registry::AppConfig">
<id>OgreGenericScene</id>
<parameters>
<param name="WID_PARENT" />
<param name="COMPOSITOR_CHANEL" />
<param name="modelSeries" />
<param name="image" />
<param name="volumeTF" />
<param name="landmarks" />
</parameters>
<config>
<!-- ******************************* Objects declaration ****************************** -->
<object uid="${modelSeries}" type="::fwMedData::ModelSeries" src="ref" />
<object uid="${image}" type="::fwData::Image" src="ref" />
<object uid="${volumeTF}" type="::fwData::TransferFunction" src="deferred" />
<object uid="${landmarks}" type="::fwData::Landmarks" src="ref" />
<object uid="frameTL" type="::arData::FrameTL" />
<object uid="videoImage" type="::fwData::Image" />
<object uid="camera" type="::arData::Camera" />
<object uid="pointList" type="::fwData::PointList" />
<object uid="volumeClippingMatrix" type="::fwData::TransformationMatrix3D" />
<object uid="identityMatrix" type="::fwData::TransformationMatrix3D" />
<!-- ******************************* UI declaration *********************************** -->
<service uid="mainView" type="::gui::view::SDefaultView">
<gui>
<layout type="::fwGui::LineLayoutManager">
<orientation value="vertical" />
<view proportion="1" />
<view proportion="0" />
<view proportion="0" />
</layout>
<toolBar/>
</gui>
<registry>
<parent wid="${WID_PARENT}" />
<toolBar sid="toolBarView" start="yes" />
<view sid="genericSceneSrv" start="yes" />
<view sid="3DNegatoEditorView" start="yes" />
<view sid="volumeRenderingMainEditorView" start="yes" />
</registry>
</service>
<service uid="toolBarView" type="::gui::aspect::SDefaultToolBar">
<gui>
<layout>
<menuItem name="Show/Hide vr editor" icon="OgreViewer-@PROJECT_VERSION@/icons/hide-view_horizontal.png" style="check" />
<separator/>
<menuItem name="Show volume" icon="media-0.1/icons/icon-VR.png" style="check" />
<menuItem name="Show negato" icon="media-0.1/icons/icon-2D.png" style="check" />
<separator/>
<menuItem name="Show/hide box cropping" icon="media-0.1/icons/icon-box.png" style="check" />
<menuItem name="Reset box cropping" icon="media-0.1/icons/icon-box-reset.png" />
<separator/>
<editor/>
<menuItem name="Play" icon="arMedia-0.1/icons/start-cam.svg" />
<menuItem name="Pause" icon="arMedia-0.1/icons/pause-cam.svg" />
<menuItem name="Stop" icon="arMedia-0.1/icons/stop-cam.svg" />
</layout>
</gui>
<registry>
<menuItem sid="volumeRenderingEditorAct" start="yes" />
<menuItem sid="volumeVisibilityAct" start="yes" />
<menuItem sid="negatoVisibilityAct" start="yes" />
<menuItem sid="boxWidgetVisibilityAct" start="yes" />
<menuItem sid="boxWidgetResetAct" start="yes" />
<editor sid="videoSelectorSrv" start="yes" />
<menuItem sid="actionStartVideo" start="yes" />
<menuItem sid="pauseVideoAct" start="yes" />
<menuItem sid="stopVideoAct" start="yes" />
</registry>
</service>
<service uid="3DNegatoEditorView" type="::gui::view::SDefaultView">
<gui>
<layout type="::fwGui::LineLayoutManager">
<orientation value="vertical" />
<view proportion="1" />
</layout>
</gui>
<registry>
<view sid="3DNegatoSlicerSrv" start="yes" />
</registry>
</service>
<service uid="volumeRenderingMainEditorView" type="::gui::view::SDefaultView" >
<gui>
<layout type="::fwGui::LineLayoutManager">
<orientation value="horizontal" />
<view proportion="0" />
<view proportion="0" />
</layout>
</gui>
<registry>
<view sid="volumeRenderingBasicEditorView" start="yes" />
<view sid="volumeRenderingAdvancedEditorView" start="yes" />
</registry>
</service>
<service uid="volumeRenderingBasicEditorView" type="::guiQt::editor::SParameters" >
<parameters>
<param type="int" name="Samples" key="sampling" defaultValue="512" min="128" max="8192" />
<param type="int" name="Opacity correction" key="opacityCorrection" defaultValue="200" min="1" max="200" />
<param type="bool" name="Pre-integration" key="preIntegration" defaultValue="false" />
<param type="bool" name="Ambient occlusion" key="ambientOcclusion" defaultValue="false" />
<param type="bool" name="Color bleeding" key="colorBleeding" defaultValue="false" />
</parameters>
</service>
<service uid="volumeRenderingAdvancedEditorView" type="::guiQt::editor::SParameters" >
<parameters>
<param type="double" name="AO factor" key="aoFactor" defaultValue="1.0" min="0.1" max="10.0" />
<param type="double" name="Color bleeding factor" key="colorBleedingFactor" defaultValue="1.0" min="0.1" max="10.0" />
<param type="int" name="SAT size ratio" key="satSizeRatio" defaultValue="1" min="1" max="4" />
<param type="int" name="AO shells number" key="satShellsNumber" defaultValue="4" min="1" max="10" />
<param type="int" name="AO shell radius" key="satShellRadius" defaultValue="4" min="1" max="10" />
<param type="bool" name="Soft shadows" key="shadows" defaultValue="false" />
<param type="int" name="Shadow cone angle" key="satConeAngle" defaultValue="10" min="10" max="100" />
<param type="int" name="Shadow cone samples" key="satConeSamples" defaultValue="50" min="10" max="100" />
</parameters>
</service>
<!-- ************************************* Actions ************************************ -->
<service uid="volumeRenderingEditorAct" type="::gui::action::SModifyLayout">
<config>
<show_or_hide sid="volumeRenderingMainEditorView" />
</config>
</service>
<service uid="volumeVisibilityAct" type="::gui::action::SBooleanSlotCaller">
<slots>
<slot>volumeAdp/updateVisibility</slot>
</slots>
<state active="true" />
</service>
<service uid="negatoVisibilityAct" type="::gui::action::SBooleanSlotCaller">
<slots>
<slot>3DNegatoAdp/setVisibility</slot>
</slots>
<state active="true" />
</service>
<service uid="boxWidgetVisibilityAct" type="::gui::action::SBooleanSlotCaller">
<slots>
<slot>volumeAdp/toggleWidgets</slot>
</slots>
</service>
<service uid="boxWidgetResetAct" type="::gui::action::SSlotCaller">
<slots>
<slot>clippingBoxResetSrv/update</slot>
<slot>volumeAdp/updateClippingBox</slot>
</slots>
</service>
<service uid="actionStartVideo" type="::gui::action::SSlotCaller">
<slots>
<slot>frameGrabberSrv/startCamera</slot>
</slots>
</service>
<service uid="pauseVideoAct" type="::gui::action::SSlotCaller">
<slots>
<slot>frameGrabberSrv/pauseCamera</slot>
</slots>
</service>
<service uid="stopVideoAct" type="::gui::action::SSlotCaller">
<slots>
<slot>frameGrabberSrv/stopCamera</slot>
</slots>
</service>
<!-- ******************************* Begin Generic Scene ******************************* -->
<service uid="genericSceneSrv" type="::fwRenderOgre::SRender">
<scene overlays="LogoOverlay">
<background topColor="#DDDDDD" bottomColor="#43958D" topScale="0.7" bottomScale="1.0" />
<layer id="video" depth="1" />
<layer id="default" depth="2" transparency="HybridTransparency" numPeels="3"/>
<adaptor uid="videoAdp" />
<adaptor uid="videoInteractorAdp" />
<adaptor uid="defaultInteractorAdp" />
<adaptor uid="defaultPickerAdp" />
<adaptor uid="modeSeriesAdp" />
<adaptor uid="3DNegatoAdp" />
<adaptor uid="volumeAdp" />
<adaptor uid="pointListAdp" />
<adaptor uid="landmarksAdp" />
<adaptor uid="renderStatsAdp" />
</scene>
</service>
<service uid="videoAdp" type="::visuOgreAdaptor::SVideo">
<in key="image" uid="videoImage" autoConnect="yes" />
<in key="camera" uid="camera" />
<config layer="video" />
</service>
<service uid="videoInteractorAdp" type="::visuOgreAdaptor::SInteractorStyle">
<in key="object" uid="camera" />
<config layer="video" movement="Fixed" />
</service>
<service uid="defaultInteractorAdp" type="::visuOgreAdaptor::SInteractorStyle">
<config layer="default" movement="VR" />
</service>
<service uid="defaultPickerAdp" type="::visuOgreAdaptor::SInteractorStyle">
<config layer="default" picker="Mesh" queryFlags="1"/>
</service>
<service uid="modeSeriesAdp" type="::visuOgreAdaptor::SModelSeries" autoConnect="yes">
<in key="model" uid="${modelSeries}" />
<config layer="default" />
</service>
<service uid="volumeAdp" type="::visuOgreAdaptor::SVolumeRender">
<inout key="image" uid="${image}" autoConnect="yes" />
<inout key="tf" uid="${volumeTF}" optional="yes" />
<inout key="clippingMatrix" uid="volumeClippingMatrix" autoConnect="yes" />
<config layer="default" widgets="no" preintegration="no" autoresetcamera="yes" samples="1024"/>
</service>
<service uid="3DNegatoAdp" type="::visuOgreAdaptor::SNegato3D">
<inout key="image" uid="${image}" autoConnect="yes" />
<inout key="tf" uid="${volumeTF}" optional="yes" />
<config layer="default" />
</service>
<service uid="pointListAdp" type="::visuOgreAdaptor::SPointList" autoConnect="yes">
<in key="pointList" uid="pointList" />
<config layer="default" autoresetcamera="no" color="#ff0000" radius="1" fixedSize="true" queryFlags="1"/>
</service>
<service uid="landmarksAdp" type="::visuOgreAdaptor::SLandmarks" autoConnect="yes">
<in key="landmarks" uid="${landmarks}" />
<config layer="default" />
</service>
<service uid="renderStatsAdp" type="::visuOgreAdaptor::SRenderStats">
<config layer="default" color="#ff0000" height="0.02"/>
</service>
<!-- ************************************* Services ************************************ -->
<service uid="synchronizerSrv" type="::videoTools::SFrameMatrixSynchronizer" worker="videoWorker">
<in group="frameTL">
<key uid="frameTL" />
</in>
<inout group="image">
<key uid="videoImage" />
</inout>
<framerate>30</framerate>
</service>
<service uid="3DNegatoSlicerSrv" type="::uiImageQt::SliceIndexPositionEditor" autoConnect="yes">
<inout key="image" uid="${image}" />
<sliceIndex>Sagittal</sliceIndex>
</service>
<service uid="frameGrabberSrv" type="::videoQt::SFrameGrabber">
<in key="camera" uid="camera" />
<inout key="frameTL" uid="frameTL" />
</service>
<service uid="videoSelectorSrv" type="::videoQt::editor::SCamera">
<inout key="camera" uid="camera" />
<videoSupport>yes</videoSupport>
</service>