From 6c1368106f6f5ada2fd9b59bbeb3c97bf5ffd221 Mon Sep 17 00:00:00 2001 From: Mathieu Westphal Date: Wed, 8 Jan 2025 19:17:15 +0100 Subject: [PATCH 1/9] Updating version to 3.0.0-RC2 (#1894) --- CMakeLists.txt | 2 +- pyproject.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 82d46d03ac..b586914007 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,7 +34,7 @@ set(F3D_MINOR_VERSION 0) set(F3D_PATCH_VERSION 0) set(F3D_VERSION ${F3D_MAJOR_VERSION}.${F3D_MINOR_VERSION}.${F3D_PATCH_VERSION}) -set(F3D_PATCH_VERSION_EXTRA "RC1") +set(F3D_PATCH_VERSION_EXTRA "RC2") if(F3D_PATCH_VERSION_EXTRA STREQUAL "") set(F3D_VERSION_FULL ${F3D_VERSION}) else() diff --git a/pyproject.toml b/pyproject.toml index 04df801888..a13739118f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -52,7 +52,7 @@ wheel.packages = [] version_file = "_version.py" version_scheme = "no-guess-dev" local_scheme = "no-local-version" -fallback_version = "3.0.0-RC1" +fallback_version = "3.0.0-RC2" [tool.scikit-build.cmake.define] CMAKE_OSX_DEPLOYMENT_TARGET = "10.15" From b019130e6fbaf55a947f290f8610f2f631161352 Mon Sep 17 00:00:00 2001 From: Mathieu Westphal Date: Fri, 10 Jan 2025 19:53:14 +0100 Subject: [PATCH 2/9] window: Restore window name on creation (#1898) --- library/src/window_impl.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/library/src/window_impl.cxx b/library/src/window_impl.cxx index 21c3092acb..4a48d22858 100644 --- a/library/src/window_impl.cxx +++ b/library/src/window_impl.cxx @@ -178,6 +178,7 @@ window_impl::window_impl(const options& options, const std::optional& type #endif this->Internals->RenWin->SetMultiSamples(0); // Disable hardware antialiasing this->Internals->RenWin->SetOffScreenRendering(offscreen); + this->Internals->RenWin->SetWindowName("f3d"); this->Internals->RenWin->AddRenderer(this->Internals->Renderer); this->Internals->Camera = std::make_unique(); this->Internals->Camera->SetVTKRenderer(this->Internals->Renderer); From 456f0f23cf299256290795d8d88c537d298143fe Mon Sep 17 00:00:00 2001 From: Mathieu Westphal Date: Sat, 11 Jan 2025 09:05:20 +0100 Subject: [PATCH 3/9] Console: Run console provided command in eventLoop using a buffer (#1899) - Add an internal API to setCommandBuffer - Use the API when trigger a command from console - actuall call triggerCommand in the event loop - Extensive testing - reload_current_file_groups - toggle_volume_rendering - set_camera top --- application/testing/CMakeLists.txt | 4 + library/private/interactor_impl.h | 5 + library/src/interactor_impl.cxx | 16 ++- .../TestInteractionConsoleCamera.png | 3 + .../TestInteractionConsoleLoadNext.png | 3 + .../TestInteractionConsoleReload.png | 3 + .../TestInteractionConsoleRender.png | 3 + .../TestInteractionConsoleCamera.log | 74 +++++++++++ .../TestInteractionConsoleClear.log | 1 + .../TestInteractionConsoleInvalidCommand.log | 2 + .../TestInteractionConsoleInvalidOption.log | 2 + .../TestInteractionConsoleLoadNext.log | 98 +++++++++++++++ .../TestInteractionConsoleOpenExit.log | 2 + .../TestInteractionConsoleReload.log | 118 ++++++++++++++++++ .../TestInteractionConsoleReload2.log | 118 ++++++++++++++++++ .../TestInteractionConsoleRender.log | 110 ++++++++++++++++ .../TestInteractionConsoleTypingSceneInfo.log | 2 + 17 files changed, 563 insertions(+), 1 deletion(-) create mode 100644 testing/baselines/TestInteractionConsoleCamera.png create mode 100644 testing/baselines/TestInteractionConsoleLoadNext.png create mode 100644 testing/baselines/TestInteractionConsoleReload.png create mode 100644 testing/baselines/TestInteractionConsoleRender.png create mode 100644 testing/recordings/TestInteractionConsoleCamera.log create mode 100644 testing/recordings/TestInteractionConsoleLoadNext.log create mode 100644 testing/recordings/TestInteractionConsoleReload.log create mode 100644 testing/recordings/TestInteractionConsoleReload2.log create mode 100644 testing/recordings/TestInteractionConsoleRender.log diff --git a/application/testing/CMakeLists.txt b/application/testing/CMakeLists.txt index 0bbc1f6684..a6fe930085 100644 --- a/application/testing/CMakeLists.txt +++ b/application/testing/CMakeLists.txt @@ -841,6 +841,10 @@ f3d_test(NAME TestInteractionConsoleInvalidCommand DATA f3d.glb INTERACTION UI) f3d_test(NAME TestInteractionConsoleInvalidOption DATA f3d.glb INTERACTION UI) #Escape;toggle foo;Return f3d_test(NAME TestInteractionConsoleClear DATA dragon.vtu INTERACTION UI) #Escape;e;Escape;printt;BackSpace;_scee;Left;n;Right;_info;Return;clear;Return f3d_test(NAME TestInteractionConsoleTypingSceneInfo DATA f3d.glb INTERACTION UI) #Escape;e;Escape;printt;BackSpace;_scee;Left;Right;_info;Return +f3d_test(NAME TestInteractionConsoleReload DATA f3d.glb INTERACTION UI) #Escape;reload_current_file_group;Return +f3d_test(NAME TestInteractionConsoleLoadNext DATA f3d.glb cow.vtp INTERACTION UI) #Escape;load_next_file_group;Return +f3d_test(NAME TestInteractionConsoleRender ARGS --coloring-by-cells DATA waveletMaterial.vti INTERACTION UI) #Escape;toggle_volume_rendering;Return +f3d_test(NAME TestInteractionConsoleCamera DATA f3d.glb INTERACTION UI) #Escape;set_camera top;Return if (F3D_MODULE_TINYFILEDIALOGS) f3d_test(NAME TestInteractionFileOpen INTERACTION NO_BASELINE ENV CTEST_OPEN_DIALOG_FILE=${F3D_SOURCE_DIR}/testing/data/cow.vtp) diff --git a/library/private/interactor_impl.h b/library/private/interactor_impl.h index 69ee46afc6..88458c6158 100644 --- a/library/private/interactor_impl.h +++ b/library/private/interactor_impl.h @@ -106,6 +106,11 @@ class interactor_impl : public interactor */ void EventLoop(); + /** + * Set a command to be run on the next event loop + */ + void SetCommandBuffer(const char* command); + /** * An exception that can be thrown by certain command callbacks * when the arguments of the callback are incorrect and expected diff --git a/library/src/interactor_impl.cxx b/library/src/interactor_impl.cxx index 0ee5d4c069..521f86e9c4 100644 --- a/library/src/interactor_impl.cxx +++ b/library/src/interactor_impl.cxx @@ -237,7 +237,7 @@ class interactor_impl::internals if (event == vtkF3DConsoleOutputWindow::TriggerEvent) { const char* commandWithArgs = static_cast(data); - self->Interactor.triggerCommand(commandWithArgs); + self->Interactor.SetCommandBuffer(commandWithArgs); } else if (event == vtkF3DConsoleOutputWindow::ShowEvent || event == vtkF3DConsoleOutputWindow::HideEvent) @@ -516,6 +516,12 @@ class interactor_impl::internals this->EventLoopUserCallBack(); } + if (this->CommandBuffer.has_value()) + { + this->Interactor.triggerCommand(this->CommandBuffer.value()); + this->CommandBuffer.reset(); + } + this->AnimationManager->Tick(); if (this->RenderRequested) @@ -543,6 +549,7 @@ class interactor_impl::internals std::map>> TimerCallBacks; std::map&)>> Commands; + std::optional CommandBuffer; std::map Bindings; std::multimap GroupedBinds; @@ -1254,6 +1261,13 @@ void interactor_impl::UpdateRendererAfterInteraction() this->Internals->Style->UpdateRendererAfterInteraction(); } +//---------------------------------------------------------------------------- +void interactor_impl::SetCommandBuffer(const char* command) +{ + // XXX This replace previous command buffer, it should be improved + this->Internals->CommandBuffer = command; +} + //---------------------------------------------------------------------------- interactor_impl::invalid_args_exception::invalid_args_exception(const std::string& what) : exception(what) diff --git a/testing/baselines/TestInteractionConsoleCamera.png b/testing/baselines/TestInteractionConsoleCamera.png new file mode 100644 index 0000000000..f19fe38665 --- /dev/null +++ b/testing/baselines/TestInteractionConsoleCamera.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c08f2d20734e52d4c1ba8a79a8640ba4fd1a59a563fb8b695dc8570fd7107bb +size 2183 diff --git a/testing/baselines/TestInteractionConsoleLoadNext.png b/testing/baselines/TestInteractionConsoleLoadNext.png new file mode 100644 index 0000000000..88639a1cae --- /dev/null +++ b/testing/baselines/TestInteractionConsoleLoadNext.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6294c9979ff8f55ba879a6802fa2ebbfd84089944ef46f8c774c82b4164d8549 +size 18646 diff --git a/testing/baselines/TestInteractionConsoleReload.png b/testing/baselines/TestInteractionConsoleReload.png new file mode 100644 index 0000000000..677455f95b --- /dev/null +++ b/testing/baselines/TestInteractionConsoleReload.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48c3404e4042e16e6001231955a79779a8f8dd5fa3022547ddab3b0352bf2068 +size 2289 diff --git a/testing/baselines/TestInteractionConsoleRender.png b/testing/baselines/TestInteractionConsoleRender.png new file mode 100644 index 0000000000..c8b6cc3e54 --- /dev/null +++ b/testing/baselines/TestInteractionConsoleRender.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:917d020d84fb71ccb3fe58efe65dff4379b090f0b8e911ceaa32fc3aafdfcee6 +size 25576 diff --git a/testing/recordings/TestInteractionConsoleCamera.log b/testing/recordings/TestInteractionConsoleCamera.log new file mode 100644 index 0000000000..0570b35a74 --- /dev/null +++ b/testing/recordings/TestInteractionConsoleCamera.log @@ -0,0 +1,74 @@ +# StreamVersion 1.2 +ConfigureEvent 1249 1374 0 0 0 0 0 +ExposeEvent 0 1406 0 0 0 0 0 +RenderEvent 0 1406 0 0 0 0 0 + +KeyPressEvent -763 401 0 27 1 Escape 0 +CharEvent -763 401 0 27 1 Escape 0 +KeyReleaseEvent -763 401 0 27 1 Escape 0 + +KeyPressEvent -763 401 0 115 1 s 0 +CharEvent -763 401 0 115 1 s 0 +KeyReleaseEvent -763 401 0 115 1 s 0 + +KeyPressEvent -763 401 0 101 1 e 0 +CharEvent -763 401 0 101 1 e 0 +KeyReleaseEvent -763 401 0 101 1 e 0 + +KeyPressEvent -763 401 0 116 1 t 0 +CharEvent -763 401 0 116 1 t 0 +KeyReleaseEvent -763 401 0 116 1 t 0 + +KeyPressEvent -763 401 1 95 1 underscore 0 +CharEvent -763 401 1 95 1 underscore 0 +KeyReleaseEvent -763 401 1 95 1 underscore 0 + +KeyPressEvent -763 401 0 99 1 c 0 +CharEvent -763 401 0 99 1 c 0 +KeyReleaseEvent -763 401 0 99 1 c 0 + +KeyPressEvent -763 401 0 97 1 a 0 +CharEvent -763 401 0 97 1 a 0 +KeyReleaseEvent -763 401 0 97 1 a 0 + +KeyPressEvent -763 401 0 109 1 m 0 +CharEvent -763 401 0 109 1 m 0 +KeyReleaseEvent -763 401 0 109 1 m 0 + +KeyPressEvent -763 401 0 101 1 e 0 +CharEvent -763 401 0 101 1 e 0 +KeyReleaseEvent -763 401 0 101 1 e 0 + +KeyPressEvent -763 401 0 114 1 r 0 +CharEvent -763 401 0 114 1 r 0 +KeyReleaseEvent -763 401 0 114 1 r 0 + +KeyPressEvent -763 401 0 97 1 a 0 +CharEvent -763 401 0 97 1 a 0 +KeyReleaseEvent -763 401 0 97 1 a 0 + +KeyPressEvent -763 401 0 32 1 space 0 +CharEvent -763 401 0 32 1 space 0 +KeyReleaseEvent -763 401 0 32 1 space 0 + +KeyPressEvent -763 401 0 116 1 t 0 +CharEvent -763 401 0 116 1 t 0 +KeyReleaseEvent -763 401 0 116 1 t 0 + +KeyPressEvent -763 401 0 111 1 o 0 +CharEvent -763 401 0 111 1 o 0 +KeyReleaseEvent -763 401 0 111 1 o 0 + +KeyPressEvent -763 401 0 112 1 p 0 +CharEvent -763 401 0 112 1 p 0 +KeyReleaseEvent -763 401 0 112 1 p 0 + +KeyPressEvent -763 401 0 13 1 Return 0 +CharEvent -763 401 0 13 1 Return 0 +KeyReleaseEvent -763 401 0 13 1 Return 0 + +KeyPressEvent -763 401 0 27 1 Escape 0 +CharEvent -763 401 0 27 1 Escape 0 +KeyReleaseEvent -763 401 0 27 1 Escape 0 + +TimerEvent 212 76 0 27 1 Escape 0 diff --git a/testing/recordings/TestInteractionConsoleClear.log b/testing/recordings/TestInteractionConsoleClear.log index dcacde83c2..4a6509df2c 100644 --- a/testing/recordings/TestInteractionConsoleClear.log +++ b/testing/recordings/TestInteractionConsoleClear.log @@ -123,3 +123,4 @@ KeyPressEvent 0 0 0 13 1 Return 0 CharEvent 0 0 0 13 1 Return 0 KeyReleaseEvent 0 0 0 13 1 Return 0 +TimerEvent 351 169 0 0 0 0 0 diff --git a/testing/recordings/TestInteractionConsoleInvalidCommand.log b/testing/recordings/TestInteractionConsoleInvalidCommand.log index 4fb4342b0a..8adb826b58 100644 --- a/testing/recordings/TestInteractionConsoleInvalidCommand.log +++ b/testing/recordings/TestInteractionConsoleInvalidCommand.log @@ -20,3 +20,5 @@ KeyReleaseEvent 0 0 0 111 1 o 0 KeyPressEvent 0 0 0 13 1 Return 0 CharEvent 0 0 0 13 1 Return 0 KeyReleaseEvent 0 0 0 13 1 Return 0 + +TimerEvent 351 169 0 0 0 0 0 diff --git a/testing/recordings/TestInteractionConsoleInvalidOption.log b/testing/recordings/TestInteractionConsoleInvalidOption.log index 07d0214d22..4fc7f8ca2d 100644 --- a/testing/recordings/TestInteractionConsoleInvalidOption.log +++ b/testing/recordings/TestInteractionConsoleInvalidOption.log @@ -48,3 +48,5 @@ KeyReleaseEvent 0 0 0 111 1 o 0 KeyPressEvent 0 0 0 13 1 Return 0 CharEvent 0 0 0 13 1 Return 0 KeyReleaseEvent 0 0 0 13 1 Return 0 + +TimerEvent 351 169 0 0 0 0 0 diff --git a/testing/recordings/TestInteractionConsoleLoadNext.log b/testing/recordings/TestInteractionConsoleLoadNext.log new file mode 100644 index 0000000000..719ff3d406 --- /dev/null +++ b/testing/recordings/TestInteractionConsoleLoadNext.log @@ -0,0 +1,98 @@ +# StreamVersion 1.2 +ConfigureEvent 1249 1374 0 0 0 0 0 +ExposeEvent 0 1406 0 0 0 0 0 +RenderEvent 0 1406 0 0 0 0 0 + +KeyPressEvent -179 393 0 27 1 Escape 0 +CharEvent -179 393 0 27 1 Escape 0 +KeyReleaseEvent -179 393 0 27 1 Escape 0 + +KeyPressEvent -179 393 0 108 1 l 0 +CharEvent -179 393 0 108 1 l 0 +KeyReleaseEvent -179 393 0 108 1 l 0 + +KeyPressEvent -179 393 0 111 1 o 0 +CharEvent -179 393 0 111 1 o 0 +KeyReleaseEvent -179 393 0 111 1 o 0 + +KeyPressEvent -179 393 0 97 1 a 0 +CharEvent -179 393 0 97 1 a 0 +KeyReleaseEvent -179 393 0 97 1 a 0 + +KeyPressEvent -179 393 0 100 1 d 0 +CharEvent -179 393 0 100 1 d 0 +KeyReleaseEvent -179 393 0 100 1 d 0 + +KeyPressEvent -179 393 1 95 1 underscore 0 +CharEvent -179 393 1 95 1 underscore 0 +KeyReleaseEvent -179 393 1 95 1 underscore 0 + +KeyPressEvent -179 393 0 110 1 n 0 +CharEvent -179 393 0 110 1 n 0 +KeyReleaseEvent -179 393 0 110 1 n 0 + +KeyPressEvent -179 393 0 101 1 e 0 +CharEvent -179 393 0 101 1 e 0 +KeyReleaseEvent -179 393 0 101 1 e 0 + +KeyPressEvent -179 393 0 120 1 x 0 +CharEvent -179 393 0 120 1 x 0 +KeyReleaseEvent -179 393 0 120 1 x 0 + +KeyPressEvent -179 393 0 116 1 t 0 +CharEvent -179 393 0 116 1 t 0 +KeyReleaseEvent -179 393 0 116 1 t 0 + +KeyPressEvent -179 393 1 95 1 underscore 0 +CharEvent -179 393 1 95 1 underscore 0 +KeyReleaseEvent -179 393 1 95 1 underscore 0 + +KeyPressEvent -179 393 0 102 1 f 0 +CharEvent -179 393 0 102 1 f 0 +KeyReleaseEvent -179 393 0 102 1 f 0 + +KeyPressEvent -179 393 0 105 1 i 0 +CharEvent -179 393 0 105 1 i 0 +KeyReleaseEvent -179 393 0 105 1 i 0 + +KeyPressEvent -179 393 0 108 1 l 0 +CharEvent -179 393 0 108 1 l 0 +KeyReleaseEvent -179 393 0 108 1 l 0 + +KeyPressEvent -179 393 0 101 1 e 0 +CharEvent -179 393 0 101 1 e 0 +KeyReleaseEvent -179 393 0 101 1 e 0 + +KeyPressEvent -179 393 1 95 1 underscore 0 +CharEvent -179 393 1 95 1 underscore 0 +KeyReleaseEvent -179 393 1 95 1 underscore 0 + +KeyPressEvent -179 393 0 103 1 g 0 +CharEvent -179 393 0 103 1 g 0 +KeyReleaseEvent -179 393 0 103 1 g 0 + +KeyPressEvent -179 393 0 114 1 r 0 +CharEvent -179 393 0 114 1 r 0 +KeyReleaseEvent -179 393 0 114 1 r 0 + +KeyPressEvent -179 393 0 111 1 o 0 +CharEvent -179 393 0 111 1 o 0 +KeyReleaseEvent -179 393 0 111 1 o 0 + +KeyPressEvent -179 393 0 117 1 u 0 +CharEvent -179 393 0 117 1 u 0 +KeyReleaseEvent -179 393 0 117 1 u 0 + +KeyPressEvent -179 393 0 112 1 p 0 +CharEvent -179 393 0 112 1 p 0 +KeyReleaseEvent -179 393 0 112 1 p 0 + +KeyPressEvent -179 393 0 13 1 Return 0 +CharEvent -179 393 0 13 1 Return 0 +KeyReleaseEvent -179 393 0 13 1 Return 0 + +KeyPressEvent -179 393 0 27 1 Escape 0 +CharEvent -179 393 0 27 1 Escape 0 +KeyReleaseEvent -179 393 0 27 1 Escape 0 + +TimerEvent 212 76 0 27 1 Escape 0 diff --git a/testing/recordings/TestInteractionConsoleOpenExit.log b/testing/recordings/TestInteractionConsoleOpenExit.log index dc7251e4d0..618a61ba29 100644 --- a/testing/recordings/TestInteractionConsoleOpenExit.log +++ b/testing/recordings/TestInteractionConsoleOpenExit.log @@ -25,3 +25,5 @@ KeyReleaseEvent 199 142 0 116 1 t 0 KeyPressEvent 199 142 0 13 1 Return 0 CharEvent 199 142 0 13 1 Return 0 KeyReleaseEvent 199 142 0 13 1 Return 0 + +TimerEvent 351 169 0 0 0 0 0 diff --git a/testing/recordings/TestInteractionConsoleReload.log b/testing/recordings/TestInteractionConsoleReload.log new file mode 100644 index 0000000000..437caa4a2f --- /dev/null +++ b/testing/recordings/TestInteractionConsoleReload.log @@ -0,0 +1,118 @@ +# StreamVersion 1.2 +ConfigureEvent 1249 1374 0 0 0 0 0 +ExposeEvent 0 1406 0 0 0 0 0 +RenderEvent 0 1406 0 0 0 0 0 + +KeyPressEvent -740 995 0 27 1 Escape 0 +CharEvent -740 995 0 27 1 Escape 0 +KeyReleaseEvent -740 995 0 27 1 Escape 0 + +KeyPressEvent -740 995 0 114 1 r 0 +CharEvent -740 995 0 114 1 r 0 +KeyReleaseEvent -740 995 0 114 1 r 0 + +KeyPressEvent -740 995 0 101 1 e 0 +CharEvent -740 995 0 101 1 e 0 +KeyReleaseEvent -740 995 0 101 1 e 0 + +KeyPressEvent -740 995 0 108 1 l 0 +CharEvent -740 995 0 108 1 l 0 +KeyReleaseEvent -740 995 0 108 1 l 0 + +KeyPressEvent -740 995 0 111 1 o 0 +CharEvent -740 995 0 111 1 o 0 +KeyReleaseEvent -740 995 0 111 1 o 0 + +KeyPressEvent -740 995 0 97 1 a 0 +CharEvent -740 995 0 97 1 a 0 +KeyReleaseEvent -740 995 0 97 1 a 0 + +KeyPressEvent -740 995 0 100 1 d 0 +CharEvent -740 995 0 100 1 d 0 +KeyReleaseEvent -740 995 0 100 1 d 0 + +KeyPressEvent -740 995 1 95 1 underscore 0 +CharEvent -740 995 1 95 1 underscore 0 +KeyReleaseEvent -740 995 1 95 1 underscore 0 + +KeyPressEvent -740 995 0 99 1 c 0 +CharEvent -740 995 0 99 1 c 0 +KeyReleaseEvent -740 995 0 99 1 c 0 + +KeyPressEvent -740 995 0 117 1 u 0 +CharEvent -740 995 0 117 1 u 0 +KeyReleaseEvent -740 995 0 117 1 u 0 + +KeyPressEvent -740 995 0 114 1 r 0 +CharEvent -740 995 0 114 1 r 0 +KeyReleaseEvent -740 995 0 114 1 r 0 + +KeyPressEvent -740 995 0 114 1 r 0 +CharEvent -740 995 0 114 1 r 0 +KeyReleaseEvent -740 995 0 114 1 r 0 + +KeyPressEvent -740 995 0 101 1 e 0 +CharEvent -740 995 0 101 1 e 0 +KeyReleaseEvent -740 995 0 101 1 e 0 + +KeyPressEvent -740 995 0 110 1 n 0 +CharEvent -740 995 0 110 1 n 0 +KeyReleaseEvent -740 995 0 110 1 n 0 + +KeyPressEvent -740 995 0 116 1 t 0 +CharEvent -740 995 0 116 1 t 0 +KeyReleaseEvent -740 995 0 116 1 t 0 + +KeyPressEvent -740 995 1 95 1 underscore 0 +CharEvent -740 995 1 95 1 underscore 0 +KeyReleaseEvent -740 995 1 95 1 underscore 0 + +KeyPressEvent -740 995 0 102 1 f 0 +CharEvent -740 995 0 102 1 f 0 +KeyReleaseEvent -740 995 0 102 1 f 0 + +KeyPressEvent -740 995 0 105 1 i 0 +CharEvent -740 995 0 105 1 i 0 +KeyReleaseEvent -740 995 0 105 1 i 0 + +KeyPressEvent -740 995 0 108 1 l 0 +CharEvent -740 995 0 108 1 l 0 +KeyReleaseEvent -740 995 0 108 1 l 0 + +KeyPressEvent -740 995 0 101 1 e 0 +CharEvent -740 995 0 101 1 e 0 +KeyReleaseEvent -740 995 0 101 1 e 0 + +KeyPressEvent -740 995 1 95 1 underscore 0 +CharEvent -740 995 1 95 1 underscore 0 +KeyReleaseEvent -740 995 1 95 1 underscore 0 + +KeyPressEvent -740 995 0 103 1 g 0 +CharEvent -740 995 0 103 1 g 0 +KeyReleaseEvent -740 995 0 103 1 g 0 + +KeyPressEvent -740 995 0 114 1 r 0 +CharEvent -740 995 0 114 1 r 0 +KeyReleaseEvent -740 995 0 114 1 r 0 + +KeyPressEvent -740 995 0 111 1 o 0 +CharEvent -740 995 0 111 1 o 0 +KeyReleaseEvent -740 995 0 111 1 o 0 + +KeyPressEvent -740 995 0 117 1 u 0 +CharEvent -740 995 0 117 1 u 0 +KeyReleaseEvent -740 995 0 117 1 u 0 + +KeyPressEvent -740 995 0 112 1 p 0 +CharEvent -740 995 0 112 1 p 0 +KeyReleaseEvent -740 995 0 112 1 p 0 + +KeyPressEvent -740 995 0 13 1 Return 0 +CharEvent -740 995 0 13 1 Return 0 +KeyReleaseEvent -740 995 0 13 1 Return 0 + +KeyPressEvent -740 995 0 27 1 Escape 0 +CharEvent -740 995 0 27 1 Escape 0 +KeyReleaseEvent -740 995 0 27 1 Escape 0 + +TimerEvent 212 76 0 27 1 Escape 0 diff --git a/testing/recordings/TestInteractionConsoleReload2.log b/testing/recordings/TestInteractionConsoleReload2.log new file mode 100644 index 0000000000..437caa4a2f --- /dev/null +++ b/testing/recordings/TestInteractionConsoleReload2.log @@ -0,0 +1,118 @@ +# StreamVersion 1.2 +ConfigureEvent 1249 1374 0 0 0 0 0 +ExposeEvent 0 1406 0 0 0 0 0 +RenderEvent 0 1406 0 0 0 0 0 + +KeyPressEvent -740 995 0 27 1 Escape 0 +CharEvent -740 995 0 27 1 Escape 0 +KeyReleaseEvent -740 995 0 27 1 Escape 0 + +KeyPressEvent -740 995 0 114 1 r 0 +CharEvent -740 995 0 114 1 r 0 +KeyReleaseEvent -740 995 0 114 1 r 0 + +KeyPressEvent -740 995 0 101 1 e 0 +CharEvent -740 995 0 101 1 e 0 +KeyReleaseEvent -740 995 0 101 1 e 0 + +KeyPressEvent -740 995 0 108 1 l 0 +CharEvent -740 995 0 108 1 l 0 +KeyReleaseEvent -740 995 0 108 1 l 0 + +KeyPressEvent -740 995 0 111 1 o 0 +CharEvent -740 995 0 111 1 o 0 +KeyReleaseEvent -740 995 0 111 1 o 0 + +KeyPressEvent -740 995 0 97 1 a 0 +CharEvent -740 995 0 97 1 a 0 +KeyReleaseEvent -740 995 0 97 1 a 0 + +KeyPressEvent -740 995 0 100 1 d 0 +CharEvent -740 995 0 100 1 d 0 +KeyReleaseEvent -740 995 0 100 1 d 0 + +KeyPressEvent -740 995 1 95 1 underscore 0 +CharEvent -740 995 1 95 1 underscore 0 +KeyReleaseEvent -740 995 1 95 1 underscore 0 + +KeyPressEvent -740 995 0 99 1 c 0 +CharEvent -740 995 0 99 1 c 0 +KeyReleaseEvent -740 995 0 99 1 c 0 + +KeyPressEvent -740 995 0 117 1 u 0 +CharEvent -740 995 0 117 1 u 0 +KeyReleaseEvent -740 995 0 117 1 u 0 + +KeyPressEvent -740 995 0 114 1 r 0 +CharEvent -740 995 0 114 1 r 0 +KeyReleaseEvent -740 995 0 114 1 r 0 + +KeyPressEvent -740 995 0 114 1 r 0 +CharEvent -740 995 0 114 1 r 0 +KeyReleaseEvent -740 995 0 114 1 r 0 + +KeyPressEvent -740 995 0 101 1 e 0 +CharEvent -740 995 0 101 1 e 0 +KeyReleaseEvent -740 995 0 101 1 e 0 + +KeyPressEvent -740 995 0 110 1 n 0 +CharEvent -740 995 0 110 1 n 0 +KeyReleaseEvent -740 995 0 110 1 n 0 + +KeyPressEvent -740 995 0 116 1 t 0 +CharEvent -740 995 0 116 1 t 0 +KeyReleaseEvent -740 995 0 116 1 t 0 + +KeyPressEvent -740 995 1 95 1 underscore 0 +CharEvent -740 995 1 95 1 underscore 0 +KeyReleaseEvent -740 995 1 95 1 underscore 0 + +KeyPressEvent -740 995 0 102 1 f 0 +CharEvent -740 995 0 102 1 f 0 +KeyReleaseEvent -740 995 0 102 1 f 0 + +KeyPressEvent -740 995 0 105 1 i 0 +CharEvent -740 995 0 105 1 i 0 +KeyReleaseEvent -740 995 0 105 1 i 0 + +KeyPressEvent -740 995 0 108 1 l 0 +CharEvent -740 995 0 108 1 l 0 +KeyReleaseEvent -740 995 0 108 1 l 0 + +KeyPressEvent -740 995 0 101 1 e 0 +CharEvent -740 995 0 101 1 e 0 +KeyReleaseEvent -740 995 0 101 1 e 0 + +KeyPressEvent -740 995 1 95 1 underscore 0 +CharEvent -740 995 1 95 1 underscore 0 +KeyReleaseEvent -740 995 1 95 1 underscore 0 + +KeyPressEvent -740 995 0 103 1 g 0 +CharEvent -740 995 0 103 1 g 0 +KeyReleaseEvent -740 995 0 103 1 g 0 + +KeyPressEvent -740 995 0 114 1 r 0 +CharEvent -740 995 0 114 1 r 0 +KeyReleaseEvent -740 995 0 114 1 r 0 + +KeyPressEvent -740 995 0 111 1 o 0 +CharEvent -740 995 0 111 1 o 0 +KeyReleaseEvent -740 995 0 111 1 o 0 + +KeyPressEvent -740 995 0 117 1 u 0 +CharEvent -740 995 0 117 1 u 0 +KeyReleaseEvent -740 995 0 117 1 u 0 + +KeyPressEvent -740 995 0 112 1 p 0 +CharEvent -740 995 0 112 1 p 0 +KeyReleaseEvent -740 995 0 112 1 p 0 + +KeyPressEvent -740 995 0 13 1 Return 0 +CharEvent -740 995 0 13 1 Return 0 +KeyReleaseEvent -740 995 0 13 1 Return 0 + +KeyPressEvent -740 995 0 27 1 Escape 0 +CharEvent -740 995 0 27 1 Escape 0 +KeyReleaseEvent -740 995 0 27 1 Escape 0 + +TimerEvent 212 76 0 27 1 Escape 0 diff --git a/testing/recordings/TestInteractionConsoleRender.log b/testing/recordings/TestInteractionConsoleRender.log new file mode 100644 index 0000000000..d7bae08968 --- /dev/null +++ b/testing/recordings/TestInteractionConsoleRender.log @@ -0,0 +1,110 @@ +# StreamVersion 1.2 +ConfigureEvent 1249 1374 0 0 0 0 0 +ExposeEvent 0 1406 0 0 0 0 0 +RenderEvent 0 1406 0 0 0 0 0 + +KeyPressEvent -300 299 0 27 1 Escape 0 +CharEvent -300 299 0 27 1 Escape 0 +KeyReleaseEvent -300 299 0 27 1 Escape 0 + +KeyPressEvent -300 299 0 116 1 t 0 +CharEvent -300 299 0 116 1 t 0 +KeyReleaseEvent -300 299 0 116 1 t 0 + +KeyPressEvent -300 299 0 111 1 o 0 +CharEvent -300 299 0 111 1 o 0 +KeyReleaseEvent -300 299 0 111 1 o 0 + +KeyPressEvent -300 299 0 103 1 g 0 +CharEvent -300 299 0 103 1 g 0 +KeyReleaseEvent -300 299 0 103 1 g 0 + +KeyPressEvent -300 299 0 103 1 g 0 +CharEvent -300 299 0 103 1 g 0 +KeyReleaseEvent -300 299 0 103 1 g 0 + +KeyPressEvent -300 299 0 108 1 l 0 +CharEvent -300 299 0 108 1 l 0 +KeyReleaseEvent -300 299 0 108 1 l 0 + +KeyPressEvent -300 299 0 101 1 e 0 +CharEvent -300 299 0 101 1 e 0 +KeyReleaseEvent -300 299 0 101 1 e 0 + +KeyPressEvent -300 299 1 95 1 underscore 0 +CharEvent -300 299 1 95 1 underscore 0 +KeyReleaseEvent -300 299 1 95 1 underscore 0 + +KeyPressEvent -300 299 0 118 1 v 0 +CharEvent -300 299 0 118 1 v 0 +KeyReleaseEvent -300 299 0 118 1 v 0 + +KeyPressEvent -300 299 0 111 1 o 0 +CharEvent -300 299 0 111 1 o 0 +KeyReleaseEvent -300 299 0 111 1 o 0 + +KeyPressEvent -300 299 0 108 1 l 0 +CharEvent -300 299 0 108 1 l 0 +KeyReleaseEvent -300 299 0 108 1 l 0 + +KeyPressEvent -300 299 0 117 1 u 0 +CharEvent -300 299 0 117 1 u 0 +KeyReleaseEvent -300 299 0 117 1 u 0 + +KeyPressEvent -300 299 0 109 1 m 0 +CharEvent -300 299 0 109 1 m 0 +KeyReleaseEvent -300 299 0 109 1 m 0 + +KeyPressEvent -300 299 0 101 1 e 0 +CharEvent -300 299 0 101 1 e 0 +KeyReleaseEvent -300 299 0 101 1 e 0 + +KeyPressEvent -300 299 1 95 1 underscore 0 +CharEvent -300 299 1 95 1 underscore 0 +KeyReleaseEvent -300 299 1 95 1 underscore 0 + +KeyPressEvent -300 299 0 114 1 r 0 +CharEvent -300 299 0 114 1 r 0 +KeyReleaseEvent -300 299 0 114 1 r 0 + +KeyPressEvent -300 299 0 101 1 e 0 +CharEvent -300 299 0 101 1 e 0 +KeyReleaseEvent -300 299 0 101 1 e 0 + +KeyPressEvent -300 299 0 110 1 n 0 +CharEvent -300 299 0 110 1 n 0 +KeyReleaseEvent -300 299 0 110 1 n 0 + +KeyPressEvent -300 299 0 100 1 d 0 +CharEvent -300 299 0 100 1 d 0 +KeyReleaseEvent -300 299 0 100 1 d 0 + +KeyPressEvent -300 299 0 101 1 e 0 +CharEvent -300 299 0 101 1 e 0 +KeyReleaseEvent -300 299 0 101 1 e 0 + +KeyPressEvent -300 299 0 114 1 r 0 +CharEvent -300 299 0 114 1 r 0 +KeyReleaseEvent -300 299 0 114 1 r 0 + +KeyPressEvent -300 299 0 105 1 i 0 +CharEvent -300 299 0 105 1 i 0 +KeyReleaseEvent -300 299 0 105 1 i 0 + +KeyPressEvent -300 299 0 110 1 n 0 +CharEvent -300 299 0 110 1 n 0 +KeyReleaseEvent -300 299 0 110 1 n 0 + +KeyPressEvent -300 299 0 103 1 g 0 +CharEvent -300 299 0 103 1 g 0 +KeyReleaseEvent -300 299 0 103 1 g 0 + +KeyPressEvent -300 299 0 13 1 Return 0 +CharEvent -300 299 0 13 1 Return 0 +KeyReleaseEvent -300 299 0 13 1 Return 0 + +KeyPressEvent -300 299 0 27 1 Escape 0 +CharEvent -300 299 0 27 1 Escape 0 +KeyReleaseEvent -300 299 0 27 1 Escape 0 + +TimerEvent 212 76 0 27 1 Escape 0 diff --git a/testing/recordings/TestInteractionConsoleTypingSceneInfo.log b/testing/recordings/TestInteractionConsoleTypingSceneInfo.log index ffd7acdf6d..fa426d5bf3 100644 --- a/testing/recordings/TestInteractionConsoleTypingSceneInfo.log +++ b/testing/recordings/TestInteractionConsoleTypingSceneInfo.log @@ -98,3 +98,5 @@ KeyReleaseEvent 0 0 0 111 1 o 0 KeyPressEvent 0 0 0 13 1 Return 0 CharEvent 0 0 0 13 1 Return 0 KeyReleaseEvent 0 0 0 13 1 Return 0 + +TimerEvent 351 169 0 0 0 0 0 From a79a648556eb8475a773258ea1ff6a2c3e57af6f Mon Sep 17 00:00:00 2001 From: Michael MIGLIORE Date: Sat, 11 Jan 2025 16:06:40 +0100 Subject: [PATCH 4/9] Fix macOS multi file (#1902) --- application/F3DNSDelegate.mm | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/application/F3DNSDelegate.mm b/application/F3DNSDelegate.mm index 3802d04d81..16a6072e17 100644 --- a/application/F3DNSDelegate.mm +++ b/application/F3DNSDelegate.mm @@ -14,18 +14,26 @@ // This is a subclass of NSApplicationDelegate. @interface F3DNSDelegateInternal : NSObject @property F3DStarter* Starter; +@property BOOL ShouldHandleFileOpening; @end @implementation F3DNSDelegateInternal @synthesize Starter; +@synthesize ShouldHandleFileOpening; // ---------------------------------------------------------------------------- - (BOOL)application:(NSApplication*)theApplication openFile:(NSString*)filename { (void)theApplication; - Starter->AddFile([filename UTF8String]); - Starter->LoadFileGroup(); - Starter->Render(); + if (ShouldHandleFileOpening) + { + int index = Starter->AddFile([filename UTF8String]); + if (index > -1) + { + Starter->LoadFileGroup(index); + } + Starter->Render(); + } return YES; } @@ -105,6 +113,13 @@ - (void)applicationWillFinishLaunching:(NSNotification *)notification action:@selector(toggleFullScreen:) keyEquivalent:@"f"] setKeyEquivalentModifierMask:NSEventModifierFlagControl | NSEventModifierFlagCommand]; + + ShouldHandleFileOpening = false; +} + +- (void)applicationDidFinishLaunching:(NSNotification *)notification +{ + ShouldHandleFileOpening = true; } @end From 498e4224b5ed21b653b5b899733ccc94ada5f76a Mon Sep 17 00:00:00 2001 From: Mathieu Westphal Date: Sat, 11 Jan 2025 16:52:29 +0100 Subject: [PATCH 5/9] vtkF3DRenderPass: Fix an issue with armature showing up outside of model --- vtkext/private/module/vtkF3DRenderPass.cxx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/vtkext/private/module/vtkF3DRenderPass.cxx b/vtkext/private/module/vtkF3DRenderPass.cxx index 1cc45cf583..5e903b9334 100644 --- a/vtkext/private/module/vtkF3DRenderPass.cxx +++ b/vtkext/private/module/vtkF3DRenderPass.cxx @@ -100,9 +100,12 @@ void vtkF3DRenderPass::Initialize(const vtkRenderState* s) { // armature vtkInformation* info = prop->GetPropertyKeys(); - if (this->ArmatureVisible && info && info->Has(vtkF3DImporter::ACTOR_IS_ARMATURE())) + if (info && info->Has(vtkF3DImporter::ACTOR_IS_ARMATURE())) { - this->MainOnTopProps.push_back(prop); + if (this->ArmatureVisible) + { + this->MainOnTopProps.push_back(prop); + } } else { From ff4868452840d6c621ef9b2d07ca432dad14122b Mon Sep 17 00:00:00 2001 From: Mathieu Westphal Date: Sat, 11 Jan 2025 16:52:53 +0100 Subject: [PATCH 6/9] vtkF3DRenderer: Fix an issue with armature not showing with opacity --- vtkext/private/module/vtkF3DRenderer.cxx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/vtkext/private/module/vtkF3DRenderer.cxx b/vtkext/private/module/vtkF3DRenderer.cxx index 8d590f05d8..4d30062b35 100644 --- a/vtkext/private/module/vtkF3DRenderer.cxx +++ b/vtkext/private/module/vtkF3DRenderer.cxx @@ -1840,8 +1840,12 @@ void vtkF3DRenderer::ConfigureActorsProperties() if (this->Opacity.has_value()) { - actor->GetProperty()->SetOpacity(this->Opacity.value()); - originalActor->GetProperty()->SetOpacity(this->Opacity.value()); + vtkInformation* info = originalActor->GetPropertyKeys(); + if (!info || !info->Has(vtkF3DImporter::ACTOR_IS_ARMATURE())) + { + actor->GetProperty()->SetOpacity(this->Opacity.value()); + originalActor->GetProperty()->SetOpacity(this->Opacity.value()); + } } if (this->Roughness.has_value()) From 9ea40db15309b699d51f04b478c1c96b53edc4af Mon Sep 17 00:00:00 2001 From: Mathieu Westphal Date: Sat, 11 Jan 2025 16:55:09 +0100 Subject: [PATCH 7/9] Tests: Adding armature tests --- application/testing/CMakeLists.txt | 3 ++- testing/baselines/TestGLTFRigArmatureNoArmature.png | 3 +++ testing/baselines/TestGLTFRigArmatureWithOpacity.png | 3 +++ testing/baselines/TestGLTFRigNoArmature.png | 3 --- 4 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 testing/baselines/TestGLTFRigArmatureNoArmature.png create mode 100644 testing/baselines/TestGLTFRigArmatureWithOpacity.png delete mode 100644 testing/baselines/TestGLTFRigNoArmature.png diff --git a/application/testing/CMakeLists.txt b/application/testing/CMakeLists.txt index 0bbc1f6684..a48c72110b 100644 --- a/application/testing/CMakeLists.txt +++ b/application/testing/CMakeLists.txt @@ -417,9 +417,10 @@ f3d_test(NAME TestVerboseAnimationWrongAnimationTimeHigh DATA BoxAnimated.gltf A f3d_test(NAME TestVerboseAnimationWrongAnimationTimeLow DATA BoxAnimated.gltf ARGS --animation-time=-5 --verbose REGEXP "Animation time -5 is outside of range \\[0, 3\\.70833\\], using 0" NO_BASELINE) # Armature test -f3d_test(NAME TestGLTFRigNoArmature DATA RiggedFigure.glb ARGS --animation-time=1) +f3d_test(NAME TestGLTFRigArmatureNoArmature DATA RiggedFigure.glb ARGS --animation-time=1 --opacity=0.5 -p) if(VTK_VERSION VERSION_GREATER_EQUAL 9.4.20241219) f3d_test(NAME TestGLTFRigArmature DATA RiggedFigure.glb ARGS --animation-time=1 --armature) + f3d_test(NAME TestGLTFRigArmatureWithOpacity DATA RiggedFigure.glb ARGS --animation-time=1 --armature --opacity=0.5 -p) f3d_test(NAME TestGLTFRigArmatureSphereTube DATA RiggedFigure.glb ARGS --animation-time=1 --armature --point-size=20 --line-width=5) endif() diff --git a/testing/baselines/TestGLTFRigArmatureNoArmature.png b/testing/baselines/TestGLTFRigArmatureNoArmature.png new file mode 100644 index 0000000000..30e95593dd --- /dev/null +++ b/testing/baselines/TestGLTFRigArmatureNoArmature.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47d21ecc456b88b7687efb70eb4c5e1e1595fbe8c5d91c1a24a2b88461e652d7 +size 3764 diff --git a/testing/baselines/TestGLTFRigArmatureWithOpacity.png b/testing/baselines/TestGLTFRigArmatureWithOpacity.png new file mode 100644 index 0000000000..c29515571a --- /dev/null +++ b/testing/baselines/TestGLTFRigArmatureWithOpacity.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9d35c475622bfabc99a46fc9d1ac8ef7db19d8461448fcc8a910e49ce2b82ab +size 4448 diff --git a/testing/baselines/TestGLTFRigNoArmature.png b/testing/baselines/TestGLTFRigNoArmature.png deleted file mode 100644 index 2d12b4a6db..0000000000 --- a/testing/baselines/TestGLTFRigNoArmature.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:86adce1d4834579279d5a662335f850b84db50b9fbb84e972ae9c1309041677f -size 4543 From b68c6d2efdbde589411ef718ef2076e12970def6 Mon Sep 17 00:00:00 2001 From: Mathieu Westphal Date: Sat, 11 Jan 2025 17:02:43 +0100 Subject: [PATCH 8/9] Config: Change Point size and line width defaut --- .github/baselines/install_example_plugin_output.png | 4 ++-- application/testing/CMakeLists.txt | 4 ++++ resources/configs/config.d/05_all.json | 4 +++- testing/baselines/TestDefaultConfigFileArmature.png | 3 +++ 4 files changed, 12 insertions(+), 3 deletions(-) create mode 100644 testing/baselines/TestDefaultConfigFileArmature.png diff --git a/.github/baselines/install_example_plugin_output.png b/.github/baselines/install_example_plugin_output.png index 61d5667df5..bb65a19f6e 100644 --- a/.github/baselines/install_example_plugin_output.png +++ b/.github/baselines/install_example_plugin_output.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:19015fcf64a550bef6a3313a8fff706465a4c2c20c4cc7c73ad963c2471b09c9 -size 40603 +oid sha256:4f50a6dc10f4b5a312a869efb31e62ddd0c16ea582f1a930895290b7b1fe13b0 +size 41817 diff --git a/application/testing/CMakeLists.txt b/application/testing/CMakeLists.txt index a48c72110b..015991bc66 100644 --- a/application/testing/CMakeLists.txt +++ b/application/testing/CMakeLists.txt @@ -373,6 +373,10 @@ if(NOT F3D_MACOS_BUNDLE) f3d_test(NAME TestDefaultConfigFileAndCommand DATA suzanne.stl ARGS --up=-Y --camera-direction=-1,0.5,-1 CONFIG config_build LONG_TIMEOUT TONE_MAPPING UI) f3d_test(NAME TestDefaultConfigTranslucent DATA red_translucent_monkey.gltf CONFIG config_build LONG_TIMEOUT TONE_MAPPING UI) +if(VTK_VERSION VERSION_GREATER_EQUAL 9.4.20241219) + f3d_test(NAME TestDefaultConfigFileArmature DATA RiggedFigure.glb ARGS --animation-time=1 --armature CONFIG config_build LONG_TIMEOUT TONE_MAPPING UI) +endif() + file(COPY "${F3D_SOURCE_DIR}/resources/configs/thumbnail.d/" "${F3D_SOURCE_DIR}/plugins/native/configs/thumbnail.d/" DESTINATION "${CMAKE_BINARY_DIR}/share/f3d/configs/thumbnail_build.d") f3d_test(NAME TestThumbnailConfigFileVTU DATA dragon.vtu CONFIG thumbnail_build LONG_TIMEOUT TONE_MAPPING) f3d_test(NAME TestThumbnailConfigFileVTI DATA vase_4comp.vti CONFIG thumbnail_build LONG_TIMEOUT TONE_MAPPING) diff --git a/resources/configs/config.d/05_all.json b/resources/configs/config.d/05_all.json index 2c9ac39a57..fdd7ebc78f 100644 --- a/resources/configs/config.d/05_all.json +++ b/resources/configs/config.d/05_all.json @@ -11,7 +11,9 @@ "camera-direction": "-1,-0.5,-1", "hdri-ambient": true, "translucency-support": true, - "animation-progress": true + "animation-progress": true, + "point-size": 5, + "line-width": 2 } } ] diff --git a/testing/baselines/TestDefaultConfigFileArmature.png b/testing/baselines/TestDefaultConfigFileArmature.png new file mode 100644 index 0000000000..c59c00550b --- /dev/null +++ b/testing/baselines/TestDefaultConfigFileArmature.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bff0668b461d79992bd2844ba357f3a17b916c666e75d576c430a9ab39c4691 +size 46780 From 8d04b920637e9a6a5bdb3346713f92699ebea62d Mon Sep 17 00:00:00 2001 From: Mathieu Westphal Date: Sat, 11 Jan 2025 18:59:27 +0100 Subject: [PATCH 9/9] doc: Update about default scene --- doc/user/QUICKSTART.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/user/QUICKSTART.md b/doc/user/QUICKSTART.md index 68bac5a587..be2385458b 100644 --- a/doc/user/QUICKSTART.md +++ b/doc/user/QUICKSTART.md @@ -58,7 +58,7 @@ For **default scene** formats, certain default values are set automatically: - roughness: 0.3 - camera-orthographic: false -They will be overridden when using corresponding [options](OPTIONS.md). +They will be overridden when using corresponding [options](OPTIONS.md), either from command line or [configuration file](CONFIGURATION_FILE.md). ## Interacting with your scene