internal override bool ParseNodeBodyElement(string id, VRMLParser parser) { int line = parser.Line; if (id == "appliedParameters") { if (wasAppliedParameters) { AppliedParameters.AddRange(parser.ParseSFStringOrMFStringValue()); } AppliedParameters = parser.ParseSFStringOrMFStringValue(); wasAppliedParameters = true; } else if (id == "bounce") { Bounce = parser.ParseDoubleValue(); } else if (id == "collidables") { List <X3DNode> nodes = parser.ParseSFNodeOrMFNodeValue(); foreach (X3DNode node in nodes) { IX3DCollisionCollectionCollidables colls = node as IX3DCollisionCollectionCollidables; if (colls == null) { parser.ErrorParsingNode(VRMLReaderError.UnexpectedNodeType, this, id, node, line); } else { Collidables.Add(colls); } } } else if (id == "enabled") { Enabled = parser.ParseBoolValue(); } else if (id == "frictionCoefficients") { FrictionCoefficients = parser.ParseSFVec2fValue(); } else if (id == "minBounceSpeed") { MinBounceSpeed = parser.ParseDoubleValue(); } else if (id == "slipFactors") { SlipFactors = parser.ParseSFVec2fValue(); } else if (id == "softnessConstantForceMix") { SoftnessConstantForceMix = parser.ParseDoubleValue(); } else if (id == "softnessErrorCorrection") { SoftnessErrorCorrection = parser.ParseDoubleValue(); } else if (id == "surfaceSpeed") { SurfaceSpeed = parser.ParseSFVec2fValue(); } else { return(false); } return(true); }
internal override bool ParseNodeBodyElement(string id, VRMLParser parser) { if (id == "appliedParameters") { if (wasAppliedParameters) { AppliedParameters.AddRange(parser.ParseSFStringOrMFStringValue()); } AppliedParameters = parser.ParseSFStringOrMFStringValue(); wasAppliedParameters = true; } else if (id == "bounce") { Bounce = parser.ParseDoubleValue(); } else if (id == "contactNormal") { ContactNormal = parser.ParseSFVec3fValue(); } else if (id == "depth") { Depth = parser.ParseDoubleValue(); } else if (id == "frictionCoefficients") { FrictionCoefficients = parser.ParseSFVec2fValue(); } else if (id == "frictionDirection") { FrictionDirection = parser.ParseSFVec3fValue(); } else if (id == "minbounceSpeed") { MinbounceSpeed = parser.ParseDoubleValue(); } else if (id == "position") { Position = parser.ParseSFVec3fValue(); } else if (id == "slipCoefficients") { SlipCoefficients = parser.ParseSFVec2fValue(); } else if (id == "softnessConstantForceMix") { SoftnessConstantForceMix = parser.ParseDoubleValue(); } else if (id == "softnessErrorCorrection") { SoftnessErrorCorrection = parser.ParseDoubleValue(); } else if (id == "surfaceSpeed") { SurfaceSpeed = parser.ParseSFVec2fValue(); } else { return(false); } return(true); }