public HttpResponseMessage PostSegmentation(int caveId, [FromBody] SegmentationData data) { string root = HttpContext.Current.Server.MapPath("~/App_Data"); var caveDir = new DirectoryInfo(root + "/Caves/" + caveId); var segData = new XDocument(); var rootEl = new XElement("Segmentation"); rootEl.Add(new XElement("Uploader", data.UploaderName)); rootEl.Add(new XElement("Expertise", data.Expertise)); rootEl.Add(new XElement("Certainty", data.Certainty)); rootEl.Add(new XElement("SegmentationData", data.Data)); rootEl.Add(new XElement("UploadDate", DateTime.Now.ToString(CultureInfo.InvariantCulture))); segData.Add(rootEl); int segId = 1; while (new FileInfo(caveDir.FullName + "/seg" + segId + ".xml").Exists) { segId++; } segData.Save(caveDir.FullName + "/seg" + segId + ".xml"); return(new HttpResponseMessage(HttpStatusCode.OK)); }
public void OnDataTransfer(Object sender, EventArgs args) { DataTransferEventArgs arg; try { arg = (DataTransferEventArgs)args; } catch (Exception) { throw; } if (sender is DataWarehouse && arg.m_data is SegmentationData) { SegmentationData data = (SegmentationData)arg.m_data; List <Vector3> list = m_dataWarehouse.GetPlayer1PositionBetweenFrames(data.startFrame, data.endFrame); if (data.reliebility >= 0.8) { recognizeGesture(list); } } }
public IEnumerable <SegmentationData> GetSegmentations(int caveId) { string root = HttpContext.Current.Server.MapPath("~/App_Data"); var caveDir = new DirectoryInfo(root + "/Caves/" + caveId); var segs = new List <SegmentationData>(); var files = caveDir.GetFiles("seg*.xml"); foreach (var f in files) { var xml = XDocument.Load(f.FullName); var xmlRoot = xml.Element("Segmentation"); var seg = new SegmentationData(); seg.Certainty = int.Parse(xmlRoot.Element("Certainty").Value); seg.Expertise = int.Parse(xmlRoot.Element("Expertise").Value); seg.UploadDate = xmlRoot.Element("UploadDate").Value; seg.UploaderName = xmlRoot.Element("Uploader").Value; seg.Id = int.Parse(f.Name.Substring(3, f.Name.Length - 7)); segs.Add(seg); } return(segs); }