如何在 TS 中访问场景、渲染器、相机对象 Forge viewer v6

Posted

技术标签:

【中文标题】如何在 TS 中访问场景、渲染器、相机对象 Forge viewer v6【英文标题】:How get access to scene, renderer, camera objects Forge viewer v6 in TS 【发布时间】:2019-10-20 19:39:46 【问题描述】:

以前我可以使用如下代码:

var container = viewer.canvas.parentElement;
var renderer = viewer.impl.renderer();
var scene = viewer.impl.scene;

要访问 Forge Viewer 中的 Three.js 对象,现在在 v6 中,如何使用 TypeScript 做同样的事情?

我已经使用 Forge Viewer for TypeScript 的定义。

【问题讨论】:

【参考方案1】:

以下测试基于:

var container = viewer.canvas.parentElement

在 Viewer v6 中显示:

var renderer = viewer.impl.renderer();

在 Viewer v6 中显示:

var scene = viewer.impl.scene;

在 Viewer v6 中显示:

【讨论】:

这在 Typescript 中无效。 那么你应该让我们知道你在谈论打字稿,不是吗?使用 [typings for Forge 查看器[(github.com/DefinitelyTyped/DefinitelyTyped/blob/…) 然后 ...(除了 impl.renderer 尚未定义,您现在需要自己将其添加到定义中) 虽然您仍然无法访问上述方法/属性,但我应该定义它们吗? 你当然可以访问 - 查看实时代码 here 和我在答案中的屏幕截图

以上是关于如何在 TS 中访问场景、渲染器、相机对象 Forge viewer v6的主要内容,如果未能解决你的问题,请参考以下文章

无法从 OpenGL 中的着色器访问先前渲染的纹理

简单工厂模式

是否可以一次通过多个视图渲染对象

webGL学习笔记一

three.js-002

Forge Viewer - 如何在场景中访问(或获取渲染/片段代理)克隆的网格?