/** * Loads particle parameters from xml node. **/ public void LoadXMLParticlePars(XmlNode particlePars) { position = LoadXMLParameter3D(particlePars.SelectSingleNode("position")); velocity = LoadXMLParameter3D(particlePars.SelectSingleNode("velocity")); /** * Speed and Direction: Not implemented yet. **/ // speed = LoadXMLParameterDouble(particlePars.SelectSingleNode("speed")); // direction = LoadXMLParameterDouble(particlePars.SelectSingleNode("direction")); acceleration = LoadXMLParameter3D(particlePars.SelectSingleNode("acceleration")); color = LoadXMLParameter3D(particlePars.SelectSingleNode("color")); angle = LoadXMLParameterDouble(particlePars.SelectSingleNode("angle")); angularVelocity = LoadXMLParameterDouble(particlePars.SelectSingleNode("angularVelocity")); transparency = LoadXMLParameterDouble(particlePars.SelectSingleNode("transparency")); transparencyDelta = LoadXMLParameterDouble(particlePars.SelectSingleNode("transparencyDelta")); size = LoadXMLParameterDouble(particlePars.SelectSingleNode("size")); size.alpha *= GlobalScaling; size.beta *= GlobalScaling; growth = LoadXMLParameterDouble(particlePars.SelectSingleNode("growth")); ttl = LoadXMLParameterDouble(particlePars.SelectSingleNode("ttl")); }
/** * Transposes a parameter using magnitude and direction to * one using a 3D vector. * TODO: Implement. **/ public Parameter3D MagnitudeDirectionTo3DVector( ParameterDouble magnitude, ParameterDouble direction) { Parameter3D vector = new Parameter3D(); /** * Randomly-distributed magnitude and direction variables * transformed to randomly-distributed 3d x,y,z vectors. **/ return vector; }
/** * Loads a 3D Parameter from the specified XMLNode **/ public Parameter3D LoadXMLParameter3D(XmlNode node) { Parameter3D newPar = new Parameter3D(); newPar.alpha = LoadXMLVector3D(node.SelectSingleNode("alpha")); newPar.beta = LoadXMLVector3D(node.SelectSingleNode("beta")); newPar.distribution = (Distribution)Enum.Parse(typeof(Distribution), Convert.ToString(node.SelectSingleNode("distribution").Attributes.GetNamedItem("x").Value)); return newPar; }