使用三个.js加载字符串中的 .obj 存储
Loading .obj storing in string using three.js
我的程序在运行时生成.obj(存储为字符串(,现在我想在三个(OBJLoader(中使用load((函数加载它.js(OBJLoader(。
在 load(( 中,它使用 HTTP 请求来检索服务器目录中已经存在的 .obj 文件。
有没有其他方法不需要在服务器目录中生成新的 .obj 文件并再次加载?
如果不可能,如何在服务器目录中自动生成 .obj 文件?
谢谢。
我通过覆盖加载函数来绕过 url 检查,如下所示:
var objstring: string = "...." // This is your obj file
var loader = new THREE.OBJLoader();
// Add a localtext parameter and an if check if url == ""
loader.load = function load( url, localtext, onLoad, onProgress, onError ) {
var scope = this;
var loader = new THREE.XHRLoader( scope.manager );
loader.setPath( this.path );
loader.load( url, function ( text ) {
if (url==""){
text = localtext;
}
onLoad( scope.parse( text ) );
}, onProgress, onError );
},
// Now you can use either url or directly string input.
loader.load( '', objstring, function ( object ) {
object.traverse( function ( child ) {
if ( child instanceof THREE.Mesh ) {
child.material = new THREE.MeshBasicMaterial();
}
} );
scene.add( object );
});
OBJLoader.load
函数在加载完成后调用 parse
函数,您应该能够自己调用此函数,发送通常位于 .obj 文件中的文本。
var myObj = THREE.OBJLoader.parse(text);
来源可以在这里看到
相关文章:
- 从表单中动态生成一个字符串,传递给通过AJAX加载的PHP文件
- 使用JavaScript将压缩文本文件加载到字符串中
- 使用路由器字符串加载主干模板
- 通过位置栏更改查询字符串,AJAX加载的菜单不会't在没有硬刷新的情况下重新填充
- 使jQuery字符串加载gettext
- 无法将字符串加载到javascript数组中
- 如何使用html5中的javascript在页面加载时从查询字符串中获取值
- 如何在ReactNative项目中将本地文本文件加载到字符串变量中
- 在页面加载时获取查询字符串值失败
- SCRIPT1015:加载字符串时未终止的字符串常量
- JSZip 不会从 base64 字符串加载 zip
- 基于哈希或查询字符串加载动态内容
- 将 xml 作为字符串加载并在 jsp 和 javascript 中使用
- 是否有用于异步JSON解析器的Node模块不将整个JSON字符串加载到内存中
- 一次加载两个HTML文档(从字符串加载iframe内容)
- 使用javascript将大型HTML字符串加载到UIWebView中
- 如何用jQuery将一个文件作为文本字符串加载到某个变量中
- AngularJS:将XML字符串加载到XML文档
- 按查询字符串加载mp4视频
- 通过字符串加载javascript函数