Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
57feb8f5
T
three.js
项目概览
Ablesons
/
three.js
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
three.js
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
57feb8f5
编写于
5月 27, 2013
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Updated builds.
上级
9a6b7263
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
567 addition
and
273 deletion
+567
-273
build/three.js
build/three.js
+291
-4
build/three.min.js
build/three.min.js
+276
-269
未找到文件。
build/three.js
浏览文件 @
57feb8f5
...
...
@@ -10603,8 +10603,7 @@ THREE.GeometryLoader.prototype = {
if ( callback !== undefined ) {
var geometry = scope.parse( JSON.parse( event.target.responseText ) );
callback( geometry );
callback( scope.parse( JSON.parse( event.target.responseText ) ) );
}
...
...
@@ -10642,8 +10641,7 @@ THREE.MaterialLoader.prototype = {
if ( callback !== undefined ) {
var material = scope.parse( JSON.parse( event.target.responseText ) );
callback( material );
callback( scope.parse( JSON.parse( event.target.responseText ) ) );
}
...
...
@@ -10734,6 +10732,295 @@ THREE.MaterialLoader.prototype = {
};
/**
* @author mrdoob / http://mrdoob.com/
*/
THREE.ObjectLoader = function ( manager ) {
this.manager = ( manager !== undefined ) ? manager : THREE.DefaultLoadingManager;
};
THREE.ObjectLoader.prototype = {
constructor: THREE.ObjectLoader,
load: function ( url, callback ) {
var scope = this;
this.manager.add( url, 'text', function ( event ) {
if ( callback !== undefined ) {
callback( scope.parse( JSON.parse( event.target.responseText ) ) );
}
} );
},
parse: function ( json ) {
var geometries = this.parseGeometries( json.geometries );
var materials = this.parseMaterials( json.materials );
var object = this.parseObject( json.object, geometries, materials );
return object;
},
parseGeometries: function ( json ) {
var geometries = {};
if ( json !== undefined ) {
var loader = new THREE.JSONLoader();
for ( var i = 0, l = json.length; i < l; i ++ ) {
var geometry;
var data = json[ i ];
switch ( data.type ) {
case 'PlaneGeometry':
geometry = new THREE.PlaneGeometry(
data.width,
data.height,
data.widthSegments,
data.heightSegments
);
break;
case 'CubeGeometry':
geometry = new THREE.CubeGeometry(
data.width,
data.height,
data.depth,
data.widthSegments,
data.heightSegments,
data.depthSegments
);
break;
case 'CylinderGeometry':
geometry = new THREE.CylinderGeometry(
data.radiusTop,
data.radiusBottom,
data.height,
data.radiusSegments,
data.heightSegments,
data.openEnded
);
break;
case 'SphereGeometry':
geometry = new THREE.SphereGeometry(
data.radius,
data.widthSegments,
data.heightSegments,
data.phiStart,
data.phiLength,
data.thetaStart,
data.thetaLength
);
break;
case 'IcosahedronGeometry':
geometry = new THREE.IcosahedronGeometry(
data.radius,
data.detail
);
break;
case 'TorusGeometry':
geometry = new THREE.TorusGeometry(
data.radius,
data.tube,
data.radialSegments,
data.tubularSegments,
data.arc
);
break;
case 'TorusKnotGeometry':
geometry = new THREE.TorusKnotGeometry(
data.radius,
data.tube,
data.radialSegments,
data.tubularSegments,
data.p,
data.q,
data.heightScale
);
break;
case 'Geometry':
geometry = loader.parse( data.data ).geometry;
break;
}
if ( data.id !== undefined ) geometry.id = data.id;
if ( data.name !== undefined ) geometry.name = data.name;
geometries[ data.id ] = geometry;
}
}
return geometries;
},
parseMaterials: function ( json ) {
var materials = {};
if ( json !== undefined ) {
var loader = new THREE.MaterialLoader();
for ( var i = 0, l = json.length; i < l; i ++ ) {
var data = json[ i ];
var material = loader.parse( data );
if ( data.id !== undefined ) material.id = data.id;
if ( data.name !== undefined ) material.name = data.name;
materials[ data.id ] = material;
}
}
return materials;
},
parseObject: function ( data, geometries, materials ) {
var object;
switch ( data.type ) {
case 'Scene':
object = new THREE.Scene();
break;
case 'PerspectiveCamera':
object = new THREE.PerspectiveCamera( data.fov, data.aspect, data.near, data.far );
object.position.fromArray( data.position );
object.rotation.fromArray( data.rotation );
break;
case 'OrthographicCamera':
object = new THREE.OrthographicCamera( data.left, data.right, data.top, data.bottom, data.near, data.far );
object.position.fromArray( data.position );
object.rotation.fromArray( data.rotation );
break;
case 'AmbientLight':
object = new THREE.AmbientLight( data.color );
break;
case 'DirectionalLight':
object = new THREE.DirectionalLight( data.color, data.intensity );
object.position.fromArray( data.position );
break;
case 'PointLight':
object = new THREE.PointLight( data.color, data.intensity, data.distance );
object.position.fromArray( data.position );
break;
case 'SpotLight':
object = new THREE.SpotLight( data.color, data.intensity, data.distance, data.angle, data.exponent );
object.position.fromArray( data.position );
break;
case 'HemisphereLight':
object = new THREE.HemisphereLight( data.color, data.groundColor, data.intensity );
object.position.fromArray( data.position );
break;
case 'Mesh':
object = new THREE.Mesh( geometries[ data.geometry ], materials[ data.material ] );
object.position.fromArray( data.position );
object.rotation.fromArray( data.rotation );
object.scale.fromArray( data.scale );
break;
default:
object = new THREE.Object3D();
object.position.fromArray( data.position );
object.rotation.fromArray( data.rotation );
object.scale.fromArray( data.scale );
}
if ( data.id !== undefined ) object.id = data.id;
if ( data.name !== undefined ) object.name = data.name;
if ( data.visible !== undefined ) object.visible = data.visible;
if ( data.userData !== undefined ) object.userData = data.userData;
if ( data.children !== undefined ) {
for ( var child in data.children ) {
object.add( this.parseObject( data.children[ child ], geometries, materials ) );
}
}
return object;
}
};
/**
* @author alteredq / http://alteredqualia.com/
*/
...
...
build/three.min.js
浏览文件 @
57feb8f5
因为 它太大了无法显示 source diff 。你可以改为
查看blob
。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录