【问题标题】:ThreeJS mesh positioningThreeJS网格定位
【发布时间】:2016-10-31 01:32:44
【问题描述】:

我正在探索 Three.js 的世界。在创建世界的数据可视化时,我需要向其中添加数据。这是我卡住的地方。 我创建了一个圆圈,并在其中添加了一个框(数据的高度范围)。我想在圆的边缘添加盒子,盒子的中心就在边缘。如何让盒子的内侧成为定位的“起点”?所以盒子的任何部分都不会在圆圈内消失?

盒子的放置是在这段代码中完成的:

  geometry = new THREE.BoxGeometry(5, 5, value);`enter code here`

  testObject = new THREE.Mesh(geometry);
  testObject.position = new THREE.Vector3(500, 500, 500);
  var lat = 51.6979;
  var lng = 5.317;
  var phi = (90 - lat) * Math.PI / 180;
  var theta = (180 - lng) * Math.PI / 180;
  testObject.position.x = radius * Math.sin(phi) * Math.cos(theta);
  testObject.position.y = radius * Math.cos(phi);
  testObject.position.z = radius * Math.sin(phi) * Math.sin(theta);

JSFiddle

【问题讨论】:

    标签: three.js positioning


    【解决方案1】:

    如果我没听错,那么在

    var theta = ...;
    

    添加

    radius += value / 2;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-03
      • 2017-10-11
      • 2015-03-29
      • 2019-08-22
      • 2021-12-16
      • 2018-12-13
      • 1970-01-01
      相关资源
      最近更新 更多