javascript - 如何在三个 JS 中显示球形网格助手
问题描述
我正在开发一个想要移动小物体并使用 ThreeJS 库在 360 度图像中显示它们的项目。所以我在一个有一定半径的球体中使用球坐标系来移动物体。用户开始在球体中心看到应用程序。我想在球体上显示一些网格辅助线(非常类似于经度和纬度线)。我在库中从这里找到了以下代码:
var radius = 10;
var radials = 16;
var circles = 8;
var divisions = 64;
var helper = new THREE.PolarGridHelper( radius, radials, circles, divisions );
scene.add( helper );
但它只在场景中添加了一个带有一些圆圈的极板,而不是球形网格助手。
解决方案
PolarGridHelper
是一个扁平的圆。如果你想要一个球面几何形状,只需使用SphereBufferGeometry
并给它一个线框外观:
var radius = 10;
var latSegments = 18; // 10° increments
var longSegments = 36; // 10° increments
var geometry = new THREE.SphereBufferGeometry( radius, longSegments, latSegments);
var material = new THREE.MeshBasicMaterial({
color: 0xffffff,
wireframe: true
});
var sphere = new THREE.Mesh( geometry, material );
scene.add( sphere );
推荐阅读
- javascript - 回发链接按钮在最新版本的 chrome (73.0.3683.103) 中无法正常工作
- reactjs - How can I test that a private function was called on a click event?
- python - 将 VOC 转换为 labelMe
- php - mollie api bancontact 失败
- python - x轴向右移动?
- java - 如果使用 Cucumber JVM 和 Allure,那么 build.gradle 中的标准设置应该如何?
- sql - 查询表达式 '[Type]=5 And Left([Name],1)<>"~" OORDER BY [Name]' 中的语法错误(缺少运算符)
- azure - Azure App服务环境中建立的Webapp不从互联网加载,只在骨干网加载
- javascript - 如何在我的 Web 表单上自动化数据输入和下拉选择?
- java - 异常描述:NullPointerException