|
@@ -84,7 +84,7 @@
|
|
|
curHouseFloor: null, //当前选中的户型楼层
|
|
|
curHouseObj: null,
|
|
|
controlStarPosition : { x:0, y:0, z:0}, //控制器初始位置
|
|
|
- cameraStarPosition : { x:0, y:20, z:0} ,//摄像头初始位置
|
|
|
+ cameraStarPosition : { x:0, y:30, z:0} ,//摄像头初始位置
|
|
|
// cameraLastPosition: null, //摄像头上一次移动到的位置
|
|
|
// controlLastPosition: null, //观察点上一次移动到的位置
|
|
|
canvasHeight:200, //canvas视图的高度-计算得出
|
|
@@ -309,11 +309,11 @@
|
|
|
container.appendChild( renderer.domElement );
|
|
|
|
|
|
controls = new OrbitControls(camera, renderer.domElement);
|
|
|
- controls.screenSpacePanning = true;
|
|
|
+ controls.screenSpacePanning = false;//平移时确保不超过PolarAngle限制
|
|
|
controls.enableDamping = true;
|
|
|
controls.minDistance = 1;
|
|
|
controls.maxDistance = 400;
|
|
|
- controls.minPolarAngle = 0;// 默认0
|
|
|
+ controls.minPolarAngle = Math.PI / 8;// 默认0
|
|
|
controls.maxPolarAngle = Math.PI / 2; // 默认Math.PI,即可以向下旋转到的视角。
|
|
|
controls.target.set(that.controlStarPosition.x, that.controlStarPosition.y, that.controlStarPosition.z);
|
|
|
controls.enableZoom = true;//启用摄像机的缩放
|
|
@@ -415,10 +415,11 @@
|
|
|
let oldUp = {};
|
|
|
let newUp = {};
|
|
|
if (isUserContorl === false) { // 非漫游状态
|
|
|
+ let _juli = camera.position.y * Math.tan(Math.PI / 8);
|
|
|
cameraNewPosition = {
|
|
|
x:spaceObj.centerX/100,
|
|
|
y:camera.position.y,
|
|
|
- z:-spaceObj.centerY/100 + 0.5,//增加偏差,防止极点翻转问题?不知道为啥会有用
|
|
|
+ z:-spaceObj.centerY/100 + _juli,//增加偏差,防止极点翻转问题?不知道为啥会有用
|
|
|
}
|
|
|
//新的观察点的位置-取模型的中心点坐标,加上高度,由于模型都是贴地的,所以高度设置为0
|
|
|
targetNewPosition = {
|
|
@@ -547,7 +548,7 @@
|
|
|
}).onComplete(()=>{
|
|
|
camera.aspect = screenWidth / that.canvasHeight;
|
|
|
camera.updateProjectionMatrix();
|
|
|
- renderer.setSize( screenWidth, that.canvasHeight );
|
|
|
+ renderer.setSize(screenWidth, that.canvasHeight );
|
|
|
tweenCameraAnma = false;
|
|
|
// that.showLables = true;
|
|
|
// updateLables();//更新lable
|