BufferGeometrySerializer

This commit is contained in:
liteng 2018-08-06 12:12:15 +08:00
parent 2e36315c7d
commit 82192219f2
2 changed files with 62 additions and 30 deletions

View File

@ -13,37 +13,41 @@ BufferGeometrySerializer.prototype.constructor = BufferGeometrySerializer;
BufferGeometrySerializer.prototype.toJSON = function (obj) {
var json = BaseSerializer.prototype.toJSON.call(this, obj);
json.attributes = obj.attributes;
json.boundingBox = obj.boundingBox;
json.boundingSphere = obj.boundingSphere;
json.colors = obj.colors;
json.faces = obj.faces;
json.faceVertexUvs = obj.faceVertexUvs;
json.id = obj.id;
json.isGeometry = obj.isGeometry;
json.lineDistances = obj.lineDistances;
json.morphTargets = obj.morphTargets;
json.morphNormals = obj.morphNormals;
json.name = geometry.name;
json.skinWeights = obj.skinWeights;
json.skinIndices = obj.skinIndices;
json.drawRange = obj.drawRange;
json.groups = obj.groups;
json.index = obj.index;
json.morphAttributes = obj.morphAttributes;
json.name = obj.name;
json.parameters = obj.parameters;
json.type = obj.type;
json.userData = obj.userData;
json.uuid = obj.uuid;
json.vertices = obj.vertices;
json.verticesNeedUpdate = obj.verticesNeedUpdate;
json.elementsNeedUpdate = obj.elementsNeedUpdate;
json.uvsNeedUpdate = obj.uvsNeedUpdate;
json.normalsNeedUpdate = obj.normalsNeedUpdate;
json.colorsNeedUpdate = obj.colorsNeedUpdate;
json.groupsNeedUpdate = obj.groupsNeedUpdate;
json.lineDistancesNeedUpdate = obj.lineDistancesNeedUpdate;
json.type = geometry.type;
json.userData = geometry.userData;
return json;
};
BufferGeometrySerializer.prototype.fromJSON = function (json, parent) {
var obj = parent === undefined ? new THREE.BufferGeometry() : parent;
BaseSerializer.prototype.fromJSON.call(this, obj);
obj.attributes = json.attributes;
obj.boundingBox = json.boundingBox;
obj.boundingSphere = json.boundingSphere;
obj.drawRange = json.drawRange;
obj.groups = json.groups;
obj.index = json.index;
obj.morphAttributes = json.morphAttributes;
obj.name = json.name;
obj.parameters = json.parameters;
obj.type = json.type;
obj.userData = json.userData;
obj.uuid = json.uuid;
return obj;
};
export default BufferGeometrySerializer;

View File

@ -13,17 +13,22 @@ GeometrySerializer.prototype.constructor = GeometrySerializer;
GeometrySerializer.prototype.toJSON = function (obj) {
var json = BaseSerializer.prototype.toJSON.call(this, obj);
json.type = obj.type;
json.boundingBox = obj.boundingBox;
json.boundingSphere = obj.boundingSphere;
json.colors = obj.colors;
json.colorsNeedUpdate = obj.colorsNeedUpdate;
json.faces = obj.faces;
json.faceVertexUvs = obj.faceVertexUvs;
json.id = obj.id;
json.groupsNeedUpdate = obj.groupsNeedUpdate;
json.isGeometry = obj.isGeometry;
json.lineDistances = obj.lineDistances;
json.lineDistancesNeedUpdate = obj.lineDistancesNeedUpdate;
json.morphTargets = obj.morphTargets;
json.morphNormals = obj.morphNormals;
json.name = geometry.name;
json.name = obj.name;
json.normalsNeedUpdate = obj.normalsNeedUpdate;
json.parameters = obj.parameters;
json.skinWeights = obj.skinWeights;
json.skinIndices = obj.skinIndices;
json.uuid = obj.uuid;
@ -32,18 +37,41 @@ GeometrySerializer.prototype.toJSON = function (obj) {
json.elementsNeedUpdate = obj.elementsNeedUpdate;
json.uvsNeedUpdate = obj.uvsNeedUpdate;
json.normalsNeedUpdate = obj.normalsNeedUpdate;
json.colorsNeedUpdate = obj.colorsNeedUpdate;
json.groupsNeedUpdate = obj.groupsNeedUpdate;
json.lineDistancesNeedUpdate = obj.lineDistancesNeedUpdate;
json.type = geometry.type;
json.userData = geometry.userData;
return json;
};
GeometrySerializer.prototype.fromJSON = function (json, parent) {
var obj = parent === undefined ? new THREE.Geometry() : parent;
BaseSerializer.prototype.fromJSON.call(this, obj);
obj.type = json.type;
obj.boundingBox = json.boundingBox;
obj.boundingSphere = json.boundingSphere;
obj.colors = json.colors;
obj.colorsNeedUpdate = json.colorsNeedUpdate;
obj.faces = json.faces;
obj.faceVertexUvs = json.faceVertexUvs;
obj.groupsNeedUpdate = json.groupsNeedUpdate;
obj.isGeometry = json.isGeometry;
obj.lineDistances = json.lineDistances;
obj.lineDistancesNeedUpdate = json.lineDistancesNeedUpdate;
obj.morphTargets = json.morphTargets;
obj.morphNormals = json.morphNormals;
obj.name = json.name;
obj.normalsNeedUpdate = json.normalsNeedUpdate;
obj.parameters = json.parameters;
obj.skinWeights = json.skinWeights;
obj.skinIndices = json.skinIndices;
obj.uuid = json.uuid;
obj.vertices = json.vertices;
obj.verticesNeedUpdate = json.verticesNeedUpdate;
obj.elementsNeedUpdate = json.elementsNeedUpdate;
obj.uvsNeedUpdate = json.uvsNeedUpdate;
obj.normalsNeedUpdate = json.normalsNeedUpdate;
return obj;
};
export default GeometrySerializer;