diff --git a/.vscode/PythonImportHelper-v2-Completion.json b/.vscode/PythonImportHelper-v2-Completion.json
index 5bd2a1e..5ef1303 100644
--- a/.vscode/PythonImportHelper-v2-Completion.json
+++ b/.vscode/PythonImportHelper-v2-Completion.json
@@ -80,6 +80,54 @@
"detail": "django.db",
"documentation": {}
},
+ {
+ "label": "migrations",
+ "importPath": "django.db",
+ "description": "django.db",
+ "isExtraImport": true,
+ "detail": "django.db",
+ "documentation": {}
+ },
+ {
+ "label": "models",
+ "importPath": "django.db",
+ "description": "django.db",
+ "isExtraImport": true,
+ "detail": "django.db",
+ "documentation": {}
+ },
+ {
+ "label": "migrations",
+ "importPath": "django.db",
+ "description": "django.db",
+ "isExtraImport": true,
+ "detail": "django.db",
+ "documentation": {}
+ },
+ {
+ "label": "migrations",
+ "importPath": "django.db",
+ "description": "django.db",
+ "isExtraImport": true,
+ "detail": "django.db",
+ "documentation": {}
+ },
+ {
+ "label": "models",
+ "importPath": "django.db",
+ "description": "django.db",
+ "isExtraImport": true,
+ "detail": "django.db",
+ "documentation": {}
+ },
+ {
+ "label": "migrations",
+ "importPath": "django.db",
+ "description": "django.db",
+ "isExtraImport": true,
+ "detail": "django.db",
+ "documentation": {}
+ },
{
"label": "models",
"importPath": "django.db",
@@ -1026,6 +1074,42 @@
"detail": "back.object.migrations.0001_initial",
"documentation": {}
},
+ {
+ "label": "Migration",
+ "kind": 6,
+ "importPath": "back.object.migrations.0002_scene3d_gainmap_scene3d_json_scene3d_webp",
+ "description": "back.object.migrations.0002_scene3d_gainmap_scene3d_json_scene3d_webp",
+ "peekOfCode": "class Migration(migrations.Migration):\n dependencies = [\n ('object', '0001_initial'),\n ]\n operations = [\n migrations.AddField(\n model_name='scene3d',\n name='gainmap',\n field=models.IntegerField(default=1),\n preserve_default=False,",
+ "detail": "back.object.migrations.0002_scene3d_gainmap_scene3d_json_scene3d_webp",
+ "documentation": {}
+ },
+ {
+ "label": "Migration",
+ "kind": 6,
+ "importPath": "back.object.migrations.0003_remove_scene3d_gainmap_remove_scene3d_json_and_more",
+ "description": "back.object.migrations.0003_remove_scene3d_gainmap_remove_scene3d_json_and_more",
+ "peekOfCode": "class Migration(migrations.Migration):\n dependencies = [\n ('object', '0002_scene3d_gainmap_scene3d_json_scene3d_webp'),\n ]\n operations = [\n migrations.RemoveField(\n model_name='scene3d',\n name='gainmap',\n ),\n migrations.RemoveField(",
+ "detail": "back.object.migrations.0003_remove_scene3d_gainmap_remove_scene3d_json_and_more",
+ "documentation": {}
+ },
+ {
+ "label": "Migration",
+ "kind": 6,
+ "importPath": "back.object.migrations.0004_scene3d_gainmap_scene3d_json_scene3d_webp",
+ "description": "back.object.migrations.0004_scene3d_gainmap_scene3d_json_scene3d_webp",
+ "peekOfCode": "class Migration(migrations.Migration):\n dependencies = [\n ('object', '0003_remove_scene3d_gainmap_remove_scene3d_json_and_more'),\n ]\n operations = [\n migrations.AddField(\n model_name='scene3d',\n name='gainmap',\n field=models.IntegerField(default=1),\n preserve_default=False,",
+ "detail": "back.object.migrations.0004_scene3d_gainmap_scene3d_json_scene3d_webp",
+ "documentation": {}
+ },
+ {
+ "label": "Migration",
+ "kind": 6,
+ "importPath": "back.object.migrations.0005_remove_scene3d_gainmap_remove_scene3d_json_and_more",
+ "description": "back.object.migrations.0005_remove_scene3d_gainmap_remove_scene3d_json_and_more",
+ "peekOfCode": "class Migration(migrations.Migration):\n dependencies = [\n ('object', '0004_scene3d_gainmap_scene3d_json_scene3d_webp'),\n ]\n operations = [\n migrations.RemoveField(\n model_name='scene3d',\n name='gainmap',\n ),\n migrations.RemoveField(",
+ "detail": "back.object.migrations.0005_remove_scene3d_gainmap_remove_scene3d_json_and_more",
+ "documentation": {}
+ },
{
"label": "Scene3DAdmin",
"kind": 6,
diff --git a/front/package-lock.json b/front/package-lock.json
index dbd4ed1..14fecb6 100644
--- a/front/package-lock.json
+++ b/front/package-lock.json
@@ -11,7 +11,9 @@
"@fireworks-js/vue": "^2.10.7",
"@monogrid/gainmap-js": "^3.0.5",
"@tresjs/cientos": "^3.9.0",
- "@tresjs/core": "^3.9.0",
+ "@tresjs/core": "^4.0.2",
+ "@tresjs/leches": "^0.14.0",
+ "@tresjs/post-processing": "^0.7.1",
"@vueuse/components": "^10.9.0",
"@vueuse/core": "^10.9.0",
"d3": "^7.9.0",
@@ -84,7 +86,6 @@
"cpu": [
"ppc64"
],
- "dev": true,
"optional": true,
"os": [
"aix"
@@ -100,7 +101,6 @@
"cpu": [
"arm"
],
- "dev": true,
"optional": true,
"os": [
"android"
@@ -116,7 +116,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"android"
@@ -132,7 +131,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"android"
@@ -148,7 +146,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"darwin"
@@ -164,7 +161,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"darwin"
@@ -180,7 +176,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"freebsd"
@@ -196,7 +191,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"freebsd"
@@ -212,7 +206,6 @@
"cpu": [
"arm"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -228,7 +221,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -244,7 +236,6 @@
"cpu": [
"ia32"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -260,7 +251,6 @@
"cpu": [
"loong64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -276,7 +266,6 @@
"cpu": [
"mips64el"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -292,7 +281,6 @@
"cpu": [
"ppc64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -308,7 +296,6 @@
"cpu": [
"riscv64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -324,7 +311,6 @@
"cpu": [
"s390x"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -340,7 +326,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -356,7 +341,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"netbsd"
@@ -372,7 +356,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"openbsd"
@@ -388,7 +371,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"sunos"
@@ -404,7 +386,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"win32"
@@ -420,7 +401,6 @@
"cpu": [
"ia32"
],
- "dev": true,
"optional": true,
"os": [
"win32"
@@ -436,7 +416,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"win32"
@@ -594,7 +573,6 @@
"cpu": [
"arm"
],
- "dev": true,
"optional": true,
"os": [
"android"
@@ -607,7 +585,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"android"
@@ -620,7 +597,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"darwin"
@@ -633,7 +609,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"darwin"
@@ -646,7 +621,6 @@
"cpu": [
"arm"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -659,7 +633,6 @@
"cpu": [
"arm"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -672,7 +645,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -685,7 +657,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -698,7 +669,6 @@
"cpu": [
"ppc64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -711,7 +681,6 @@
"cpu": [
"riscv64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -724,7 +693,6 @@
"cpu": [
"s390x"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -737,7 +705,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -750,7 +717,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"linux"
@@ -763,7 +729,6 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"win32"
@@ -776,7 +741,6 @@
"cpu": [
"ia32"
],
- "dev": true,
"optional": true,
"os": [
"win32"
@@ -789,7 +753,6 @@
"cpu": [
"x64"
],
- "dev": true,
"optional": true,
"os": [
"win32"
@@ -815,7 +778,7 @@
"vue": ">=3.3"
}
},
- "node_modules/@tresjs/core": {
+ "node_modules/@tresjs/cientos/node_modules/@tresjs/core": {
"version": "3.9.0",
"resolved": "https://registry.npmjs.org/@tresjs/core/-/core-3.9.0.tgz",
"integrity": "sha512-6el70oXSduTvSA3XCI8/rQV2GzcgCLceZKA443CTU/MBPmRDULJ12q/UYl18Ij4CJ68rTqgVi0Da+WNMrs784A==",
@@ -829,6 +792,20 @@
"vue": ">=3.3"
}
},
+ "node_modules/@tresjs/core": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@tresjs/core/-/core-4.0.2.tgz",
+ "integrity": "sha512-+Shy5ch4m9gQSHRlArZAn4nv2apaFJJv21bAvpOKRXTCtGu0BakKGUpWcTzzmDsTs9t6yndbjCWzyifggjFpQQ==",
+ "dependencies": {
+ "@alvarosabu/utils": "^3.2.0",
+ "@vue/devtools-api": "^6.6.2",
+ "@vueuse/core": "^10.10.0"
+ },
+ "peerDependencies": {
+ "three": ">=0.133",
+ "vue": ">=3.4"
+ }
+ },
"node_modules/@tresjs/core/node_modules/@vueuse/core": {
"version": "10.10.0",
"resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.10.0.tgz",
@@ -912,6 +889,57 @@
}
}
},
+ "node_modules/@tresjs/leches": {
+ "version": "0.14.0",
+ "resolved": "https://registry.npmjs.org/@tresjs/leches/-/leches-0.14.0.tgz",
+ "integrity": "sha512-X/UIeldHkx9RZdLuwGh/0XN8uM5JDOjIZH0tUodmXb+AEO/97F90FgSuRyl+xyTTOekh+z3VFavkWpoRS64KVw==",
+ "dependencies": {
+ "@unocss/core": "^0.57.7",
+ "@vueuse/components": "^10.6.1",
+ "vite-plugin-css-injected-by-js": "^3.3.0"
+ },
+ "peerDependencies": {
+ "vue": ">=3.3.4"
+ }
+ },
+ "node_modules/@tresjs/leches/node_modules/@unocss/core": {
+ "version": "0.57.7",
+ "resolved": "https://registry.npmjs.org/@unocss/core/-/core-0.57.7.tgz",
+ "integrity": "sha512-1d36M0CV3yC80J0pqOa5rH1BX6g2iZdtKmIb3oSBN4AWnMCSrrJEPBrUikyMq2TEQTrYWJIVDzv5A9hBUat3TA==",
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ }
+ },
+ "node_modules/@tresjs/post-processing": {
+ "version": "0.7.1",
+ "resolved": "https://registry.npmjs.org/@tresjs/post-processing/-/post-processing-0.7.1.tgz",
+ "integrity": "sha512-MLrjxR4rJ55MOYFKMEZ8aqh5no2/sOG1fdYk2B49Ntx2p2etyuVpI6e9BBAvrc4M/wktRHkQ2JNDbgMaCiJoMg==",
+ "dependencies": {
+ "@tresjs/core": "^3.5.1",
+ "@unocss/core": "^0.58.0",
+ "@vueuse/core": "^10.6.1",
+ "postprocessing": "^6.33.4",
+ "three-stdlib": "^2.28.7"
+ },
+ "peerDependencies": {
+ "three": ">=0.133",
+ "vue": ">=3.3"
+ }
+ },
+ "node_modules/@tresjs/post-processing/node_modules/@tresjs/core": {
+ "version": "3.9.0",
+ "resolved": "https://registry.npmjs.org/@tresjs/core/-/core-3.9.0.tgz",
+ "integrity": "sha512-6el70oXSduTvSA3XCI8/rQV2GzcgCLceZKA443CTU/MBPmRDULJ12q/UYl18Ij4CJ68rTqgVi0Da+WNMrs784A==",
+ "dependencies": {
+ "@alvarosabu/utils": "^3.1.1",
+ "@vue/devtools-api": "^6.6.1",
+ "@vueuse/core": "^10.7.0"
+ },
+ "peerDependencies": {
+ "three": ">=0.133",
+ "vue": ">=3.3"
+ }
+ },
"node_modules/@trysound/sax": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
@@ -1186,8 +1214,7 @@
"node_modules/@types/estree": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
- "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==",
- "dev": true
+ "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw=="
},
"node_modules/@types/geojson": {
"version": "7946.0.14",
@@ -1234,6 +1261,14 @@
"resolved": "https://registry.npmjs.org/@types/webxr/-/webxr-0.5.15.tgz",
"integrity": "sha512-nC9116Gd4N+CqTxqo6gvCfhAMAzgRcfS8ZsciNodHq8uwW4JCVKwhagw8yN0XmC7mHrLnWqniJpoVEiR+72Drw=="
},
+ "node_modules/@unocss/core": {
+ "version": "0.58.9",
+ "resolved": "https://registry.npmjs.org/@unocss/core/-/core-0.58.9.tgz",
+ "integrity": "sha512-wYpPIPPsOIbIoMIDuH8ihehJk5pAZmyFKXIYO/Kro98GEOFhz6lJoLsy6/PZuitlgp2/TSlubUuWGjHWvp5osw==",
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ }
+ },
"node_modules/@vitejs/plugin-vue": {
"version": "5.0.4",
"resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz",
@@ -1527,7 +1562,7 @@
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
"integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"normalize-path": "^3.0.0",
"picomatch": "^2.0.4"
@@ -1546,7 +1581,7 @@
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
"integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
- "dev": true,
+ "devOptional": true,
"engines": {
"node": ">=8"
},
@@ -1572,7 +1607,7 @@
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"fill-range": "^7.1.1"
},
@@ -1598,7 +1633,7 @@
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
"integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"anymatch": "~3.1.2",
"braces": "~3.0.2",
@@ -2202,7 +2237,6 @@
"version": "0.20.2",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz",
"integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==",
- "dev": true,
"hasInstallScript": true,
"bin": {
"esbuild": "bin/esbuild"
@@ -2298,7 +2332,7 @@
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"to-regex-range": "^5.0.1"
},
@@ -2345,7 +2379,6 @@
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
"integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
- "dev": true,
"hasInstallScript": true,
"optional": true,
"os": [
@@ -2380,7 +2413,7 @@
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"is-glob": "^4.0.1"
},
@@ -2467,7 +2500,7 @@
"version": "4.3.5",
"resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz",
"integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==",
- "dev": true
+ "devOptional": true
},
"node_modules/inherits": {
"version": "2.0.4",
@@ -2486,7 +2519,7 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"binary-extensions": "^2.0.0"
},
@@ -2510,7 +2543,7 @@
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
- "dev": true,
+ "devOptional": true,
"engines": {
"node": ">=0.10.0"
}
@@ -2519,7 +2552,7 @@
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"is-extglob": "^2.1.1"
},
@@ -2531,7 +2564,7 @@
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true,
+ "devOptional": true,
"engines": {
"node": ">=0.12.0"
}
@@ -2748,7 +2781,7 @@
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "dev": true,
+ "devOptional": true,
"engines": {
"node": ">=0.10.0"
}
@@ -2882,7 +2915,7 @@
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true,
+ "devOptional": true,
"engines": {
"node": ">=8.6"
},
@@ -2978,6 +3011,17 @@
"node": "^10 || ^12 || >=14"
}
},
+ "node_modules/postprocessing": {
+ "version": "6.35.5",
+ "resolved": "https://registry.npmjs.org/postprocessing/-/postprocessing-6.35.5.tgz",
+ "integrity": "sha512-nO8pxbiQT7+u3qv/q4LL1x6tstZWuduDlkOLFWQm3vFFKHzAsRMxqwsGAktkHKMSGXVEwTBvT3TKPklNALQheg==",
+ "engines": {
+ "node": ">= 0.13.2"
+ },
+ "peerDependencies": {
+ "three": ">= 0.152.0 < 0.166.0"
+ }
+ },
"node_modules/potpack": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/potpack/-/potpack-1.0.2.tgz",
@@ -3027,7 +3071,7 @@
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"picomatch": "^2.2.1"
},
@@ -3076,7 +3120,6 @@
"version": "4.16.4",
"resolved": "https://registry.npmjs.org/rollup/-/rollup-4.16.4.tgz",
"integrity": "sha512-kuaTJSUbz+Wsb2ATGvEknkI12XV40vIiHmLuFlejoo7HtDok/O5eDDD0UpCVY5bBX5U5RYo8wWP83H7ZsqVEnA==",
- "dev": true,
"dependencies": {
"@types/estree": "1.0.5"
},
@@ -3144,7 +3187,7 @@
"version": "1.75.0",
"resolved": "https://registry.npmjs.org/sass/-/sass-1.75.0.tgz",
"integrity": "sha512-ShMYi3WkrDWxExyxSZPst4/okE9ts46xZmJDSawJQrnte7M1V9fScVB+uNXOVKRBt0PggHOwoZcn8mYX4trnBw==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"chokidar": ">=3.0.0 <4.0.0",
"immutable": "^4.0.0",
@@ -3354,7 +3397,7 @@
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
+ "devOptional": true,
"dependencies": {
"is-number": "^7.0.0"
},
@@ -3518,7 +3561,6 @@
"version": "5.2.10",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.2.10.tgz",
"integrity": "sha512-PAzgUZbP7msvQvqdSD+ErD5qGnSFiGOoWmV5yAKUEI0kdhjbH6nMWVyZQC/hSc4aXwc0oJ9aEdIiF9Oje0JFCw==",
- "dev": true,
"dependencies": {
"esbuild": "^0.20.1",
"postcss": "^8.4.38",
@@ -3569,6 +3611,14 @@
}
}
},
+ "node_modules/vite-plugin-css-injected-by-js": {
+ "version": "3.5.1",
+ "resolved": "https://registry.npmjs.org/vite-plugin-css-injected-by-js/-/vite-plugin-css-injected-by-js-3.5.1.tgz",
+ "integrity": "sha512-9ioqwDuEBxW55gNoWFEDhfLTrVKXEEZgl5adhWmmqa88EQGKfTmexy4v1Rh0pAS6RhKQs2bUYQArprB32JpUZQ==",
+ "peerDependencies": {
+ "vite": ">2.0.0-0"
+ }
+ },
"node_modules/vite-plugin-static-copy": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/vite-plugin-static-copy/-/vite-plugin-static-copy-1.0.5.tgz",
diff --git a/front/package.json b/front/package.json
index 8dfe05f..db2e288 100644
--- a/front/package.json
+++ b/front/package.json
@@ -13,7 +13,9 @@
"@fireworks-js/vue": "^2.10.7",
"@monogrid/gainmap-js": "^3.0.5",
"@tresjs/cientos": "^3.9.0",
- "@tresjs/core": "^3.9.0",
+ "@tresjs/core": "^4.0.2",
+ "@tresjs/leches": "^0.14.0",
+ "@tresjs/post-processing": "^0.7.1",
"@vueuse/components": "^10.9.0",
"@vueuse/core": "^10.9.0",
"d3": "^7.9.0",
diff --git a/front/src/components/Promo/load_models.vue b/front/src/components/Promo/load_models.vue
index fb5ec36..689aea2 100644
--- a/front/src/components/Promo/load_models.vue
+++ b/front/src/components/Promo/load_models.vue
@@ -1,6 +1,6 @@
@@ -158,8 +184,8 @@ onLoop(() => {
-
- openSidebar(item.name.replace('_clickable', ''))" v-bind="item.clone()" />
+
+
\ No newline at end of file
diff --git a/front/src/components/Promo/main.vue b/front/src/components/Promo/main.vue
index 1f08e19..188572c 100644
--- a/front/src/components/Promo/main.vue
+++ b/front/src/components/Promo/main.vue
@@ -5,11 +5,12 @@ import { RouterLink, useRoute } from 'vue-router';
import { Vector3 } from 'three';
import { TresCanvas } from '@tresjs/core';
-import { StatsGl, OrbitControls } from '@tresjs/cientos'
+import { StatsGl, OrbitControls, Stats } from '@tresjs/cientos'
import LoadModels from './load_models.vue'
import Sidebar from './sidebar.vue'
import { usePromoSidebar } from '../../stores/promo_sidebar';
+import { EffectComposer, Pixelation } from '@tresjs/post-processing';
const minPan = ref(new Vector3(-2, -2, -2))
const maxPan = ref(new Vector3(2, 2, 2))
@@ -32,7 +33,7 @@ const camera = ref()
const cameraPosition = ref([1, 1, 1]) as unknown as Ref
const controlsState = reactive({
- enableDamping:false,
+ enableDamping: false,
maxPolarAngle: (Math.PI / 2) - 0.05,
minAzimuthAngle: (Math.PI / 2) - 0.02,
})
@@ -57,9 +58,6 @@ watch(() => route.params.target, () => {
-
-
-
@@ -69,6 +67,9 @@ watch(() => route.params.target, () => {
+
+
+