Javascript 使用Three.js编辑三维文本属性以定位和对齐宽度立方体
我使用Three.js创建了fiddle,其中显示了“线条”和“立方体”,以显示立方体的指南。这是同样的小提琴: 现在,我还想添加文本,以便显示每个指南的标题,如下图所示,哪一行是“宽度”、“高度”或“长度”: 当我更新Three.js文件并包含字体js文件时,文本工作正常 现在的问题是如何对齐文本,它具有向后弯曲的效果Javascript 使用Three.js编辑三维文本属性以定位和对齐宽度立方体,javascript,text,three.js,Javascript,Text,Three.js,我使用Three.js创建了fiddle,其中显示了“线条”和“立方体”,以显示立方体的指南。这是同样的小提琴: 现在,我还想添加文本,以便显示每个指南的标题,如下图所示,哪一行是“宽度”、“高度”或“长度”: 当我更新Three.js文件并包含字体js文件时,文本工作正常 现在的问题是如何对齐文本,它具有向后弯曲的效果 // 3D TEXT var materialFront = new THREE.MeshBasicMaterial({ color: 0xff0000 })
// 3D TEXT
var materialFront = new THREE.MeshBasicMaterial({
color: 0xff0000
});
var materialSide = new THREE.MeshBasicMaterial({
color: 0x000088
});
var materialArray = [materialFront, materialSide];
var textGeom = new THREE.TextGeometry("Hello, World!", {
size: 12,
height: 4,
curveSegments: 3,
font: "arial",
weight: "bold",
style: "normal",
bevelThickness: 1,
bevelSize: 2,
bevelEnabled: true,
material: 0,
extrudeMaterial: 1
});
// font: helvetiker, gentilis, droid sans, droid serif, optimer
// weight: normal, bold
var textMaterial = new THREE.MeshFaceMaterial(materialArray);
var textMesh = new THREE.Mesh(textGeom, textMaterial);
textGeom.computeBoundingBox();
var textWidth = textGeom.boundingBox.max.x - textGeom.boundingBox.min.x;
textMesh.position.set(-0.5 * textWidth, 50, 100);
textMesh.rotation.x = -Math.PI / 4;
cube.add(textMesh);
这是3D文本代码的小提琴:
如果您需要任何其他信息,请告诉我
请提出建议。我希望您意识到,当库当前处于r68I时,您的fiddle正在使用three.js版本r57,但它仍然不工作:您是否查看了fiddle返回的错误<代码>取消对具有正常重量和正常样式的字体helvetiker的捕获丢失。您没有加载字体。在包含字体后,它现在可以工作了。但是现在文本位置不正确。。我不确定如何修复字体弯曲的样式和位置。或者有没有其他简单的方法在立方体附近添加文本?