public bool ReadCamera(Location location) { if (_root == null) { return(false); } XmlElement node = _root["FieldCameras"]; if (node == null) { return(false); } if (!node.GetBoolean("IsExists")) { return(true); } FieldCameras fieldCameras = new FieldCameras(node.ChildNodes.Count); foreach (XmlElement child in node.ChildNodes) { fieldCameras.Add(ReadFieldCamera(child)); } location.FieldCameras = fieldCameras; location.SaveRequest &= ~LocationProperty.FieldCamera; location.Importable |= LocationProperty.FieldCamera; return(true); }
public bool ReadCamera(Location location) { ArchiveFileEntry caEntry = (ArchiveFileEntry)_locationDirectory.Childs.TryGetValue(_name + ".ca"); if (caEntry == null) { return(true); } using (CaFileReader caReader = new CaFileReader(caEntry.OpenReadableContentStream())) { FieldCameras cameras = new FieldCameras(caReader.Rects.Length); foreach (CaCamera rect in caReader.Rects) { FieldCamera camera = new FieldCamera { XAxis = rect.XAxis, YAxis = rect.YAxis, ZAxis = rect.ZAxis, Position = rect.Position, Zoom = rect.Zoom }; cameras.Add(camera); } location.FieldCameras = cameras; } location.SaveRequest &= ~LocationProperty.FieldCamera; location.Importable &= ~LocationProperty.FieldCamera; return(true); }