Skip to content

Commit 6c85141

Browse files
authored
Merge pull request #425 from EarthyScience/jp/size-reset
Properly resets camera
2 parents 030d119 + e326d55 commit 6c85141

File tree

1 file changed

+31
-14
lines changed

1 file changed

+31
-14
lines changed

src/utils/ExportCanvas.tsx

Lines changed: 31 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -435,6 +435,21 @@ const ExportCanvas = ({show}:{show: boolean}) => {
435435
Animate().then(()=>{
436436
setHideAxis(false)
437437
setHideAxisControls(false)
438+
// Reset Camera Settings
439+
if (useCustomRes || doubleSize) {
440+
if (camera instanceof THREE.PerspectiveCamera) {
441+
camera.aspect = originalCameraSettings.aspect;
442+
} else if (camera instanceof THREE.OrthographicCamera) {
443+
camera.left = originalCameraSettings.left;
444+
camera.right = originalCameraSettings.right;
445+
camera.top = originalCameraSettings.top;
446+
camera.bottom = originalCameraSettings.bottom;
447+
}
448+
gl.setSize(originalSize.x, originalSize.y);
449+
camera.updateProjectionMatrix();
450+
invalidate();
451+
}
452+
setQuality(origQuality);
438453
});
439454
} else {
440455
gl.render(scene, camera);
@@ -452,22 +467,24 @@ const ExportCanvas = ({show}:{show: boolean}) => {
452467
}, 'image/png')
453468
setHideAxis(false)
454469
setHideAxisControls(false)
470+
// Reset Camera Settings
471+
if (useCustomRes || doubleSize) {
472+
if (camera instanceof THREE.PerspectiveCamera) {
473+
camera.aspect = originalCameraSettings.aspect;
474+
} else if (camera instanceof THREE.OrthographicCamera) {
475+
camera.left = originalCameraSettings.left;
476+
camera.right = originalCameraSettings.right;
477+
camera.top = originalCameraSettings.top;
478+
camera.bottom = originalCameraSettings.bottom;
479+
}
480+
gl.setSize(originalSize.x, originalSize.y);
481+
camera.updateProjectionMatrix();
482+
invalidate();
483+
}
484+
setQuality(origQuality);
455485
}
456486

457-
// Reset Camera Settings
458-
if (useCustomRes || doubleSize) {
459-
if (camera instanceof THREE.PerspectiveCamera) {
460-
camera.aspect = originalCameraSettings.aspect;
461-
} else if (camera instanceof THREE.OrthographicCamera) {
462-
camera.left = originalCameraSettings.left;
463-
camera.right = originalCameraSettings.right;
464-
camera.top = originalCameraSettings.top;
465-
camera.bottom = originalCameraSettings.bottom;
466-
}
467-
gl.setSize(originalSize.x, originalSize.y);
468-
camera.updateProjectionMatrix();
469-
}
470-
setQuality(origQuality);
487+
471488

472489
},[exportImg])
473490

0 commit comments

Comments
 (0)