Javascript Threejs:将球体(球体)旋转到球体本身上的另一点(城市)

Javascript Threejs:将球体(球体)旋转到球体本身上的另一点(城市),javascript,3d,three.js,webgl,Javascript,3d,Three.js,Webgl,我正在构建一个球体(球体几何体),其中包含一组预定义的位置,这些位置在地理上映射并绘制为点(球体几何体)。我想通过沿y轴旋转地球仪来聚焦(将一个位置移动到另一个位置)这些位置。我尝试了下面的代码,似乎不适用于所有位置 location.geometry.computeBoundingBox(); var position = new THREE.Vector3(); position.subVectors( location.geometry.boundingBox.max, location.

我正在构建一个球体(球体几何体),其中包含一组预定义的位置,这些位置在地理上映射并绘制为点(球体几何体)。我想通过沿y轴旋转地球仪来聚焦(将一个位置移动到另一个位置)这些位置。我尝试了下面的代码,似乎不适用于所有位置

location.geometry.computeBoundingBox();
var position = new THREE.Vector3();
position.subVectors( location.geometry.boundingBox.max, location.geometry.boundingBox.min );
position.multiplyScalar( 0.20 );
position.sub( location.geometry.boundingBox.min );
location.matrixWorld.multiplyVector3( position );
var point1 = scene.clone().position;
var point2 = position;
var distance = point1.distanceTo( point2 );
locationCollection.rotation.y = distance;
我想,我对这个概念理解不够。希望我能从社区得到一些想法

其中a=纬度,b=经度,组=对象3D(或球体)


其中a=纬度,b=经度,group=Object3D(或球体)

您可以创建一个fiddle(jsfiddle.net)来显示代码的工作版本吗?我已经创建了fiddle。多一点代码。我已经为代码块写了一些简短的注释。希望它能达到目的。下面是fiddle链接,您可以创建一个fiddle(jsfiddle.net)来显示代码的工作版本吗?我已经创建了fiddle。多一点代码。我已经为代码块写了一些简短的注释。希望它能达到目的。下面是fiddle链接,询问它是否有任何混淆?如果您没有使用group,您也可以将group更改为scene。我不明白您为什么要设置group.rotation.y Twi如果有混淆,请确认。如果您没有使用group,您也可以将group更改为scene。我不明白您为什么要设置group.rotation.y两次
var c = group.rotation.y;
var d = -b * (Math.PI / 180)%(2 * Math.PI);
var e = Math.PI / 2 * -1;
group.rotation.y = c % (2 * Math.PI);
group.rotation.x = a * (Math.PI / 180) % Math.PI;
group.rotation.y= d+e;