Kamera synchronisierung angepasst
This commit is contained in:
@@ -47,6 +47,14 @@ viewer.setPointBudget(3*1000*1000);
|
|||||||
viewer.setMinNodeSize(0);
|
viewer.setMinNodeSize(0);
|
||||||
viewer.setBackground("none");
|
viewer.setBackground("none");
|
||||||
|
|
||||||
|
console.log(viewer.orbitControls);
|
||||||
|
console.log(viewer.fpControls);
|
||||||
|
console.log(viewer.deviceControls);
|
||||||
|
|
||||||
|
viewer.orbitControls.enabled=false;
|
||||||
|
viewer.fpControls.enabled=false;
|
||||||
|
viewer.deviceControls.enabled=false;
|
||||||
|
|
||||||
|
|
||||||
//Dateipfade der Punktwolken
|
//Dateipfade der Punktwolken
|
||||||
const pointCloudFiles={
|
const pointCloudFiles={
|
||||||
@@ -86,7 +94,7 @@ function loadPointCloud(path){
|
|||||||
material.pointSizeType=Potree.PointSizeType.ADAPTIVE;
|
material.pointSizeType=Potree.PointSizeType.ADAPTIVE;
|
||||||
|
|
||||||
viewer.fitToScreen();
|
viewer.fitToScreen();
|
||||||
syncCamera();
|
setTimeout(() => syncCamera(), 500);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -120,7 +128,7 @@ function syncCamera() {
|
|||||||
// -----------------------------------------
|
// -----------------------------------------
|
||||||
const earthCircumference = 40075016.686;
|
const earthCircumference = 40075016.686;
|
||||||
const metersPerPixel = earthCircumference * Math.cos(center.lat * Math.PI / 180) / Math.pow(2, zoom + 8);
|
const metersPerPixel = earthCircumference * Math.cos(center.lat * Math.PI / 180) / Math.pow(2, zoom + 8);
|
||||||
const distance = metersPerPixel * map.getCanvas().height;
|
const distance = metersPerPixel * (map.getCanvas().height/2);
|
||||||
|
|
||||||
// -----------------------------------------
|
// -----------------------------------------
|
||||||
// Zielpunkt = Kartenzentrum
|
// Zielpunkt = Kartenzentrum
|
||||||
@@ -144,16 +152,10 @@ function syncCamera() {
|
|||||||
// -----------------------------------------
|
// -----------------------------------------
|
||||||
// Potree Kamera setzen
|
// Potree Kamera setzen
|
||||||
// -----------------------------------------
|
// -----------------------------------------
|
||||||
const camera = viewer.scene.getActiveCamera();
|
|
||||||
camera.position.copy(cameraPosition);
|
|
||||||
camera.lookAt(target);
|
|
||||||
viewer.scene.view.position.copy(cameraPosition);
|
viewer.scene.view.position.copy(cameraPosition);
|
||||||
viewer.scene.view.lookAt(target);
|
viewer.scene.view.lookAt(target);
|
||||||
camera.updateMatrixWorld();
|
viewer.renderer.resetState();
|
||||||
viewer.renderer.render(
|
|
||||||
viewer.scene.scene,
|
|
||||||
camera
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Kameras bei jeder Kartenbewegung synchronisieren
|
// Kameras bei jeder Kartenbewegung synchronisieren
|
||||||
|
|||||||
Generated
+2464
-599
File diff suppressed because it is too large
Load Diff
+2
-1
@@ -15,9 +15,10 @@
|
|||||||
"@loaders.gl/core": "^4.4.1",
|
"@loaders.gl/core": "^4.4.1",
|
||||||
"@loaders.gl/las": "^4.4.1",
|
"@loaders.gl/las": "^4.4.1",
|
||||||
"deck.gl": "^9.3.1",
|
"deck.gl": "^9.3.1",
|
||||||
|
"latest": "^0.2.0",
|
||||||
"maplibre-gl": "^5.22.0",
|
"maplibre-gl": "^5.22.0",
|
||||||
"proj4": "^2.20.8",
|
"proj4": "^2.20.8",
|
||||||
"three": "^0.124.0",
|
"three": "^0.124.0",
|
||||||
"vite": "^8.0.7"
|
"vite": "^8.0.13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user