Skip to content

Commit cf89518

Browse files
Merge pull request #26 from OlafenwaMoses/main
release - switch PLY viewers to TrackballControls for free 360° rotation
2 parents 7202308 + 1a63078 commit cf89518

3 files changed

Lines changed: 12 additions & 9 deletions

File tree

docs/features/depth_estimation.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<script type="module">
2323
import * as THREE from 'three';
2424
import { PLYLoader } from 'three/addons/loaders/PLYLoader.js';
25-
import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
25+
import { TrackballControls } from 'three/addons/controls/TrackballControls.js';
2626

2727
const container = document.getElementById('ply-viewer');
2828
const renderer = new THREE.WebGLRenderer({ antialias: true, alpha: true });
@@ -35,8 +35,9 @@ container.appendChild(renderer.domElement);
3535

3636
const scene = new THREE.Scene();
3737
const camera = new THREE.PerspectiveCamera(60, (container.clientWidth || 800) / (container.clientHeight || 480), 0.001, 1000);
38-
const controls = new OrbitControls(camera, renderer.domElement);
39-
controls.enableDamping = true;
38+
const controls = new TrackballControls(camera, renderer.domElement);
39+
controls.rotateSpeed = 1.0;
40+
controls.dynamicDampingFactor = 0.2;
4041

4142
new ResizeObserver(() => {
4243
const w = renderer.domElement.clientWidth;

docs/features/stereo_depth.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ vmax=142</pre>
4141
<script type="module">
4242
import * as THREE from 'three';
4343
import { PLYLoader } from 'three/addons/loaders/PLYLoader.js';
44-
import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
44+
import { TrackballControls } from 'three/addons/controls/TrackballControls.js';
4545

4646
const container = document.getElementById('stereo-ply-viewer');
4747
const renderer = new THREE.WebGLRenderer({ antialias: true, alpha: true });
@@ -54,8 +54,9 @@ container.appendChild(renderer.domElement);
5454

5555
const scene = new THREE.Scene();
5656
const camera = new THREE.PerspectiveCamera(60, (container.clientWidth || 800) / (container.clientHeight || 480), 0.001, 1000);
57-
const controls = new OrbitControls(camera, renderer.domElement);
58-
controls.enableDamping = true;
57+
const controls = new TrackballControls(camera, renderer.domElement);
58+
controls.rotateSpeed = 1.0;
59+
controls.dynamicDampingFactor = 0.2;
5960

6061
new ResizeObserver(() => {
6162
const w = renderer.domElement.clientWidth;

docs/index.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ Every task is accessible through three consumption modes driven by one shared CQ
4141
<script type="module">
4242
import * as THREE from 'three';
4343
import { PLYLoader } from 'three/addons/loaders/PLYLoader.js';
44-
import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
44+
import { TrackballControls } from 'three/addons/controls/TrackballControls.js';
4545

4646
const container = document.getElementById('ply-viewer');
4747
const renderer = new THREE.WebGLRenderer({ antialias: true, alpha: true });
@@ -54,8 +54,9 @@ container.appendChild(renderer.domElement);
5454

5555
const scene = new THREE.Scene();
5656
const camera = new THREE.PerspectiveCamera(60, (container.clientWidth || 800) / (container.clientHeight || 480), 0.001, 1000);
57-
const controls = new OrbitControls(camera, renderer.domElement);
58-
controls.enableDamping = true;
57+
const controls = new TrackballControls(camera, renderer.domElement);
58+
controls.rotateSpeed = 1.0;
59+
controls.dynamicDampingFactor = 0.2;
5960

6061
new ResizeObserver(() => {
6162
const w = renderer.domElement.clientWidth;

0 commit comments

Comments
 (0)