public void AddAttribute(string name, AttributeTypes type, string value) { Attribute attribute = null; switch (type) { case AttributeTypes.String: attribute = new StringAttribute(name); break; case AttributeTypes.Int: attribute = new IntAttribute(name); break; case AttributeTypes.Float: attribute = new FloatAttribute(name); break; case AttributeTypes.Vector2: attribute = new Vector2Attribute(name); break; case AttributeTypes.Vector3: attribute = new Vector3Attribute(name); break; case AttributeTypes.Quaternion: attribute = new QuaternionAttribute(name); break; case AttributeTypes.Matrix: attribute = new MatrixAttribute(name); break; case AttributeTypes.Bool: attribute = new BoolAttribute(name); break; default: throw new System.Exception("AttributeType '" + type + "' does not exist!"); } attribute.Initialize(value); AddAttribute(attribute); }
private void RotationChanged( QuaternionAttribute sender, Quaternion oldValue, Quaternion newValue ) { ChangeQuaternion("Rotation", newValue); }
private void RotationChanged( QuaternionAttribute sender, Quaternion oldValue, Quaternion newValue ) { ChangeVector3("Direction", CalculateDirection(ref newValue)); }