提交 fe6b0b36 编写于 作者: B Ben Houston

allow for tracks to parse themselves via static memebers.

上级 355434eb
......@@ -38,3 +38,10 @@ THREE.BooleanKeyframeTrack.prototype.compareValues = function( value0, value1 )
return ( value0 === value1 );
};
THREE.BooleanKeyframeTrack.parse = function( name, jsonKeys ) {
return new THREE.BooleanKeyframeTrack( name, jsonKeys );
};
\ No newline at end of file
......@@ -38,3 +38,21 @@ THREE.ColorKeyframeTrack.prototype.compareValues = function( value0, value1 ) {
return value0.equals( value1 );
};
THREE.ColorKeyframeTrack.parse = function( name, jsonKeys ) {
var keys = [];
for( var i = 0; i < jsonKeys.length; i ++ ) {
var jsonKey = jsonKeys[i];
var key = {
value: new THREE.Color().fromArray( jsonKey.value ),
time: jsonKey.time
};
keys.push( key );
}
return new THREE.ColorKeyframeTrack( name, keys );
};
\ No newline at end of file
......@@ -38,3 +38,10 @@ THREE.NumberKeyframeTrack.prototype.compareValues = function( value0, value1 ) {
return ( value0 === value1 );
};
THREE.NumberKeyframeTrack.parse = function( name, jsonKeys ) {
return new THREE.NumberKeyframeTrack( name, jsonKeys );
};
\ No newline at end of file
......@@ -37,4 +37,22 @@ THREE.QuaternionKeyframeTrack.prototype.compareValues = function( value0, value1
return value0.equals( value1 );
};
\ No newline at end of file
};
THREE.QuaternionKeyframeTrack.parse = function( name, jsonKeys ) {
var keys = [];
for( var i = 0; i < jsonKeys.length; i ++ ) {
var jsonKey = jsonKeys[i];
var key = {
value: new THREE.Quaternion().fromArray( jsonKey.value ),
time: jsonKey.time
};
keys.push( key );
}
return new THREE.QuaternionKeyframeTrack( name, keys );
};
\ No newline at end of file
......@@ -38,3 +38,10 @@ THREE.StringKeyframeTrack.prototype.compareValues = function( value0, value1 ) {
return ( value0 === value1 );
};
THREE.StringKeyframeTrack.parse = function( name, jsonKeys ) {
return new THREE.StringKeyframeTrack( name, jsonKeys );
};
\ No newline at end of file
......@@ -38,3 +38,24 @@ THREE.VectorKeyframeTrack.prototype.compareValues = function( value0, value1 ) {
return value0.equals( value1 );
};
THREE.VectorKeyframeTrack.parse = function( name, jsonKeys ) {
var elementCount = jsonKeys[0].value.length;
var valueType = THREE[ 'Vector' + elementCount ];
var keys = [];
for( var i = 0; i < jsonKeys.length; i ++ ) {
var jsonKey = jsonKeys[i];
var key = {
value: new valueType().fromArray( jsonKey.value ),
time: jsonKey.time
};
keys.push( key );
}
return new THREE.VectorKeyframeTrack( name, keys );
};
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册