three.js - Aframe:获取任何对象的顶点
问题描述
有没有一种方法可以获取场景中对象的顶点。这既适用于原始模型,也适用于加载的模型。例如
<a-entity geometry='primitive:box' rotation='0 30 0'></a-entity>
或者
<a-entity gltf-model='#model'></a-entity>
解决方案
对于几何图形,默认为包含在以下内容中的缓冲区属性(数组中的顶点):
el.getObject3D('mesh').geometry.attributes
为了更易于管理,设置为非缓冲 ( geometry="primitive: box; buffer: false"
) 并从以下位置获取:
el.getObject3D('mesh').geometry.vertices
对于 gltf-model,它还有一个 geometr(ies)(缓冲几何):
el.getObject3D('mesh').traverse(node => {
if (node.geometry) {
// node.geometry.attributes...
}
});
推荐阅读
- javascript - React - 全局样式
- google-bigquery - BigQuery 日期差异
- flutter - InteractiveViewer RenderTransform 对象在布局期间被赋予无限大小
- c++ - 将一串单词翻译成另一串单词
- time - 合并开始时间和结束时间之间的经过分钟数(同一日期)
- apache-spark - Spark Dataset createOrReplaceTempView ViewName 限制
- spring-boot - Spring批处理本地分区作业运行太慢
- javascript - Firefox 扩展以提高 vimeo 和 Youtube 视频的速度
- python - 如何创建一个数据框列,其中包含一个已存在列中最近 3 次 True 的索引列表?
- svg - 反向 SVG 填充/节点,因此图像只需要一层或对象