LICENSE
README.md
pyproject.toml
src/rfviser/__init__.py
src/rfviser/_client_autobuild.py
src/rfviser/_gui_api.py
src/rfviser/_gui_handles.py
src/rfviser/_icons.py
src/rfviser/_icons_enum.py
src/rfviser/_icons_enum.pyi
src/rfviser/_icons_generate_enum.py
src/rfviser/_messages.py
src/rfviser/_notification_handle.py
src/rfviser/_scene_api.py
src/rfviser/_scene_handles.py
src/rfviser/_tunnel.py
src/rfviser/_viser.py
src/rfviser/py.typed
src/rfviser.egg-info/PKG-INFO
src/rfviser.egg-info/SOURCES.txt
src/rfviser.egg-info/dependency_links.txt
src/rfviser.egg-info/entry_points.txt
src/rfviser.egg-info/requires.txt
src/rfviser.egg-info/top_level.txt
src/rfviser/_icons/tabler-icons.zip
src/rfviser/client/.eslintrc.js
src/rfviser/client/.gitignore
src/rfviser/client/index.html
src/rfviser/client/package.json
src/rfviser/client/postcss.config.cjs
src/rfviser/client/tsconfig.json
src/rfviser/client/vite-env.d.ts
src/rfviser/client/vite.config.mts
src/rfviser/client/yarn.lock
src/rfviser/client/build/Inter-VariableFont_slnt,wght.ttf
src/rfviser/client/build/index.html
src/rfviser/client/build/logo.svg
src/rfviser/client/build/manifest.json
src/rfviser/client/build/robots.txt
src/rfviser/client/build/assets/Sorter-Df0J3ZWJ.wasm
src/rfviser/client/build/assets/SplatSortWorker-B2s40nWE.js
src/rfviser/client/build/assets/WebsocketServerWorker-2xce1CWr.js
src/rfviser/client/build/assets/index-B58-muce.css
src/rfviser/client/build/assets/index-VqSYYh5e.js
src/rfviser/client/build/hdri/dikhololo_night_1k.hdr
src/rfviser/client/build/hdri/empty_warehouse_01_1k.hdr
src/rfviser/client/build/hdri/forest_slope_1k.hdr
src/rfviser/client/build/hdri/kiara_1_dawn_1k.hdr
src/rfviser/client/build/hdri/lebombo_1k.hdr
src/rfviser/client/build/hdri/potsdamer_platz_1k.hdr
src/rfviser/client/build/hdri/rooitou_park_1k.hdr
src/rfviser/client/build/hdri/st_fagans_interior_1k.hdr
src/rfviser/client/build/hdri/studio_small_03_1k.hdr
src/rfviser/client/build/hdri/venice_sunset_1k.hdr
src/rfviser/client/node_modules/flatted/python/flatted.py
src/rfviser/client/node_modules/flatted/python/test.py
src/rfviser/client/public/Inter-VariableFont_slnt,wght.ttf
src/rfviser/client/public/logo.svg
src/rfviser/client/public/manifest.json
src/rfviser/client/public/robots.txt
src/rfviser/client/public/hdri/dikhololo_night_1k.hdr
src/rfviser/client/public/hdri/empty_warehouse_01_1k.hdr
src/rfviser/client/public/hdri/forest_slope_1k.hdr
src/rfviser/client/public/hdri/kiara_1_dawn_1k.hdr
src/rfviser/client/public/hdri/lebombo_1k.hdr
src/rfviser/client/public/hdri/potsdamer_platz_1k.hdr
src/rfviser/client/public/hdri/rooitou_park_1k.hdr
src/rfviser/client/public/hdri/st_fagans_interior_1k.hdr
src/rfviser/client/public/hdri/studio_small_03_1k.hdr
src/rfviser/client/public/hdri/venice_sunset_1k.hdr
src/rfviser/client/src/App.css.ts
src/rfviser/client/src/App.tsx
src/rfviser/client/src/AppTheme.ts
src/rfviser/client/src/BrowserWarning.tsx
src/rfviser/client/src/CameraControls.tsx
src/rfviser/client/src/ClickUtils.tsx
src/rfviser/client/src/FilePlayback.tsx
src/rfviser/client/src/Markdown.tsx
src/rfviser/client/src/MessageHandler.tsx
src/rfviser/client/src/Modal.tsx
src/rfviser/client/src/Outlines.tsx
src/rfviser/client/src/SceneTree.tsx
src/rfviser/client/src/SceneTreeState.tsx
src/rfviser/client/src/SearchParamsUtils.tsx
src/rfviser/client/src/ThreeAssets.tsx
src/rfviser/client/src/Titlebar.tsx
src/rfviser/client/src/Utils.ts
src/rfviser/client/src/WebsocketFunctions.tsx
src/rfviser/client/src/WebsocketInterface.tsx
src/rfviser/client/src/WebsocketMessages.ts
src/rfviser/client/src/WebsocketServerWorker.ts
src/rfviser/client/src/WorldTransformUtils.ts
src/rfviser/client/src/index.css
src/rfviser/client/src/index.tsx
src/rfviser/client/src/react-app-env.d.ts
src/rfviser/client/src/ControlPanel/BottomPanel.tsx
src/rfviser/client/src/ControlPanel/ControlPanel.tsx
src/rfviser/client/src/ControlPanel/FloatingPanel.tsx
src/rfviser/client/src/ControlPanel/Generated.tsx
src/rfviser/client/src/ControlPanel/GuiComponentContext.tsx
src/rfviser/client/src/ControlPanel/GuiState.tsx
src/rfviser/client/src/ControlPanel/SceneTreeTable.css.ts
src/rfviser/client/src/ControlPanel/SceneTreeTable.tsx
src/rfviser/client/src/ControlPanel/ServerControls.tsx
src/rfviser/client/src/ControlPanel/SidebarPanel.tsx
src/rfviser/client/src/Splatting/GaussianSplats.tsx
src/rfviser/client/src/Splatting/SplatSortWorker.ts
src/rfviser/client/src/Splatting/WasmSorter/Sorter.mjs
src/rfviser/client/src/Splatting/WasmSorter/Sorter.wasm
src/rfviser/client/src/Splatting/WasmSorter/build.sh
src/rfviser/client/src/Splatting/WasmSorter/sorter.cpp
src/rfviser/client/src/components/Button.tsx
src/rfviser/client/src/components/ButtonGroup.tsx
src/rfviser/client/src/components/Checkbox.tsx
src/rfviser/client/src/components/ComponentStyles.css.ts
src/rfviser/client/src/components/Dropdown.tsx
src/rfviser/client/src/components/Folder.css.ts
src/rfviser/client/src/components/Folder.tsx
src/rfviser/client/src/components/ImageViewer.module.css
src/rfviser/client/src/components/ImageViewer.tsx
src/rfviser/client/src/components/Markdown.tsx
src/rfviser/client/src/components/MultiSlider.tsx
src/rfviser/client/src/components/NumberInput.tsx
src/rfviser/client/src/components/PlotlyComponent.tsx
src/rfviser/client/src/components/ProgressBar.tsx
src/rfviser/client/src/components/Rgb.tsx
src/rfviser/client/src/components/Rgba.tsx
src/rfviser/client/src/components/Slider.tsx
src/rfviser/client/src/components/TabGroup.tsx
src/rfviser/client/src/components/TextInput.tsx
src/rfviser/client/src/components/UploadButton.tsx
src/rfviser/client/src/components/Vector2.tsx
src/rfviser/client/src/components/Vector3.tsx
src/rfviser/client/src/components/common.tsx
src/rfviser/client/src/components/utils.tsx
src/rfviser/client/src/components/MultiSliderPrimitive/LICENSE
src/rfviser/client/src/components/MultiSliderPrimitive/Slider.context.ts
src/rfviser/client/src/components/MultiSliderPrimitive/Slider.module.css
src/rfviser/client/src/components/MultiSliderPrimitive/index.ts
src/rfviser/client/src/components/MultiSliderPrimitive/Marks/Marks.tsx
src/rfviser/client/src/components/MultiSliderPrimitive/MultiSlider/MultiSlider.tsx
src/rfviser/client/src/components/MultiSliderPrimitive/SliderRoot/SliderRoot.tsx
src/rfviser/client/src/components/MultiSliderPrimitive/Thumb/Thumb.tsx
src/rfviser/client/src/components/MultiSliderPrimitive/Track/Track.tsx
src/rfviser/client/src/components/MultiSliderPrimitive/utils/get-change-value/get-change-value.ts
src/rfviser/client/src/components/MultiSliderPrimitive/utils/get-client-position/get-client-position.ts
src/rfviser/client/src/components/MultiSliderPrimitive/utils/get-floating-value/get-gloating-value.ts
src/rfviser/client/src/components/MultiSliderPrimitive/utils/get-position/get-position.ts
src/rfviser/client/src/components/MultiSliderPrimitive/utils/get-precision/get-precision.ts
src/rfviser/extras/__init__.py
src/rfviser/extras/_record3d.py
src/rfviser/extras/_urdf.py
src/rfviser/extras/colmap/__init__.py
src/rfviser/extras/colmap/_colmap_utils.py
src/rfviser/infra/__init__.py
src/rfviser/infra/_async_message_buffer.py
src/rfviser/infra/_infra.py
src/rfviser/infra/_messages.py
src/rfviser/infra/_typescript_interface_gen.py
src/rfviser/scripts/__init__.py
src/rfviser/scripts/dev_checks.py
src/rfviser/theme/__init__.py
src/rfviser/theme/_titlebar.py
src/rfviser/transforms/__init__.py
src/rfviser/transforms/_base.py
src/rfviser/transforms/_se2.py
src/rfviser/transforms/_se3.py
src/rfviser/transforms/_so2.py
src/rfviser/transforms/_so3.py
src/rfviser/transforms/hints/__init__.py
src/rfviser/transforms/utils/__init__.py
src/rfviser/transforms/utils/_utils.py
tests/test_transforms_axioms.py
tests/test_transforms_bijective.py
tests/test_transforms_ops.py