internal override bool ParseNodeBodyElement(string id, VRMLParser parser) { if(id=="name") Name=parser.ParseStringValue(); else if(id=="reference") Reference=parser.ParseStringValue(); else if(id=="value") Value.AddRange(parser.ParseSFBoolOrMFBoolValue()); else return false; return true; }
internal override bool ParseNodeBodyElement(string id, VRMLParser parser) { int line = parser.Line; if (id == "children") { List <X3DNode> nodes = parser.ParseSFNodeOrMFNodeValue(); foreach (X3DNode node in nodes) { X3DChildNode child = node as X3DChildNode; if (child == null) { parser.ErrorParsingNode(VRMLReaderError.UnexpectedNodeType, this, id, node, line); } else { Children.Add(child); } } } else if (id == "name") { Name = parser.ParseStringValue(); } else if (id == "visible") { Visible.AddRange(parser.ParseSFBoolOrMFBoolValue()); } else if (id == "bboxCenter") { BBoxCenter = parser.ParseSFVec3fValue(); } else if (id == "bboxSize") { BBoxSize = parser.ParseSFVec3fValue(); } else { return(false); } return(true); }
internal override bool ParseNodeBodyElement(string id, VRMLParser parser) { if (id == "key") { Key.AddRange(parser.ParseSFFloatOrMFFloatValue()); } else if (id == "keyValue") { object token = parser.PeekNextToken(); if (token is VRMLTokenString) { string values = parser.ParseStringValue(); string[] parts = values.Split(new char[] { ' ', '\t', '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries); foreach (string part in parts) { string l = part.ToLower(); if (l == "true") { KeyValue.Add(new SFBool(true)); } else { KeyValue.Add(new SFBool(false)); } } } else { List <bool> values = parser.ParseSFBoolOrMFBoolValue(); foreach (bool value in values) { KeyValue.Add(new SFBool(value)); } } } else { return(false); } return(true); }
internal override bool ParseNodeBodyElement(string id, VRMLParser parser) { if (id == "name") { Name = parser.ParseStringValue(); } else if (id == "reference") { Reference = parser.ParseStringValue(); } else if (id == "value") { Value.AddRange(parser.ParseSFBoolOrMFBoolValue()); } else { return(false); } return(true); }
internal override bool ParseNodeBodyElement(string id, VRMLParser parser) { int line=parser.Line; if(id=="children") { List<X3DNode> nodes=parser.ParseSFNodeOrMFNodeValue(); foreach(X3DNode node in nodes) { X3DChildNode child=node as X3DChildNode; if(child==null) parser.ErrorParsingNode(VRMLReaderError.UnexpectedNodeType, this, id, node, line); else Children.Add(child); } } else if(id=="name") Name=parser.ParseStringValue(); else if(id=="visible") Visible.AddRange(parser.ParseSFBoolOrMFBoolValue()); else if(id=="bboxCenter") BBoxCenter=parser.ParseSFVec3fValue(); else if(id=="bboxSize") BBoxSize=parser.ParseSFVec3fValue(); else return false; return true; }