private void BgWorker_DoWork(object sender, DoWorkEventArgs e) { _context.Post(delegate { MsgBox.AppendText("Creating Surface...." + Environment.NewLine); this.Cursor = Cursors.WaitCursor; }, null); Stopwatch sw = new Stopwatch(); sw.Start(); Stream stream = File.OpenRead(filename); //XmlSerializer xmlSerializer = new XmlSerializer(typeof(PointCloud)); //pc = (PointCloud)xmlSerializer.Deserialize(stream); AltSerialize.AltSerializer altSerializer = new AltSerializer(stream); pc = (PointCloud)altSerializer.Deserialize(typeof(PoinCloudLib.PointCloud)); stream.Flush(); stream.Close(); sw.Stop(); _context.Post(delegate { MsgBox.AppendText("Deserialize time consuming...." + sw.ElapsedMilliseconds.ToString() + Environment.NewLine); //this.Cursor = Cursors.WaitCursor; MsgBox.AppendText("X Resolution:" + pc.XResolution.ToString() + Environment.NewLine); MsgBox.AppendText("Y Resolution:" + pc.YResolution.ToString() + Environment.NewLine); MsgBox.AppendText("Z Resolution:" + pc.ZResolution.ToString() + Environment.NewLine); }, null); float xscale = pc.XResolution * 10; float yscale = pc.YResolution * 10; float zscale = pc.ZResolution * 1000; _context.Post(delegate { MsgBox.AppendText("X Scale:" + xscale.ToString() + Environment.NewLine); MsgBox.AppendText("Y Scale:" + yscale.ToString() + Environment.NewLine); MsgBox.AppendText("Z Scale:" + zscale.ToString() + Environment.NewLine); //view3DBox1.Data1.SetSurface(DataTrans(pc)); }, null); try { AVL.ArrangePoint3DArray(DataTrans(pc), xscale, yscale, 0, zscale, PlainType.Real, out _surface); } catch (AvlNet.DomainException ex) { MessageBox.Show(ex.ToString()); } //Point3DGrid point3DGrid = new Point3DGrid(); }
void SerializePointCloud(PointCloud pc) { string timeStamp = DateTime.Now.ToString("yyyyMMddHHmmssfff"); Stream stream = File.Open("C:\\PointCloudData\\" + timeStamp + ".pcd", FileMode.OpenOrCreate); AltSerialize.AltSerializer altSerializer = new AltSerializer(stream); //XmlSerializer xmlSerializer = new XmlSerializer(typeof(PointCloud)); //xmlSerializer.Serialize(stream, pc); altSerializer.Serialize(pc); stream.Flush(); stream.Close(); }
public void RegisterEnum <T>(int id) { AltSerializer.AddEnumType <T>(id); }
public void Register(Type t, int id) { AltSerializer.AddType(t, id); }