private void AnalyseGeometryProperty(StreamReader reader, string line) { int id; string name; string type; IObjectProperty data; while (line != "}") { AnalyseStandardObjectHeading(line, out id, out name, out type); if (type != "") { switch (type) { case "Mesh": if (name.Contains("Geometry::")) { data = new GeometryProperty<MeshPropertyType>(id, name); AnalyseGeometryMesh(reader, ref data); _properties.Add(data); } else ProceedToNextObject(reader); //ProceedToNextObject(reader); // Continue for when we need mesh data. Not needed now. break; case "Shape": data = new GeometryProperty<BlendShapePropertyType>(id, name); if (name.Contains("ansk")) ((GeometryProperty<BlendShapePropertyType>)data).PropertyType.Keyworded = true; AnalyseGeometryBlendShape(reader, ref data); _properties.Add(data); break; case "Cluster": data = new DeformerProperty<JointPropertyType>(id, name); AnalyseGeometryDeformer(reader, ref data); _properties.Add(data); break; case "LimbNode": if (name.Contains("NodeAttribute::")) { data = new LimbNodeProperty<LimbNodeNodeAttributeType>(id, name); AnalyseGeometryLimbNode(reader, ref data); _properties.Add(data); } else if (name.Contains("Model::")) { data = new LimbNodeProperty<LimbNodeJointType>(id, name); AnalyseGeometryLimbNode(reader, ref data); _properties.Add(data); } else ProceedToNextObject(reader); break; default: ProceedToNextObject(reader); break; } } else { ProceedToNextObject(reader); } line = reader.ReadLine(); } }
set => this.SetValue(GeometryProperty, value);
set => SetValue(GeometryProperty, value);