private void Animate(PngSaveItem item) { int pngsave_row = pngSaveItemBindingSource.Position; if (pngsave_row == -1) { return; } if (pngsave_row >= viewer.FigureList.Count) { return; } TMOAnim tmoanim = item.tmoanim; tmoanim.SavePoseToFile(); tmoanim.LoadSource(); if (tmoanim.SourceTmo.frames != null) { tmoanim.Process(); tmoanim.SaveSourceToFile(); Figure fig = viewer.FigureList[pngsave_row]; fig.Tmo = tmoanim.SourceTmo; fig.TransformTpo(); fig.UpdateNodeMapAndBoneMatrices(); } }
void CreatePngSaveItem(string file) { PngSaveItem item = new PngSaveItem(); item.File = file; pngSaveItemBindingSource.Add(item); pngSaveItemBindingSource.Position = pngSaveItemBindingSource.Count - 1; viewer.LoadAnyFile(Path.Combine(save_path, item.File), true); }
private void btnDel_Click(object sender, EventArgs e) { viewer.RemoveSelectedFigure(); int pngsave_row = pngSaveItemBindingSource.Position; int tmoanim_row = tmoAnimItemBindingSource.Position; if (pngsave_row == -1) { return; } PngSaveItem item = pngsave.items[pngsave_row]; tmoAnimItemBindingSource.DataSource = null; pngSaveItemBindingSource.Remove(item); pngsave.UpdateID(); }
private void btnAnimate_Click(object sender, EventArgs e) { int pngsave_row = pngSaveItemBindingSource.Position; int tmoanim_row = tmoAnimItemBindingSource.Position; if (pngsave_row == -1) { return; } PngSaveItem item = pngsave.items[pngsave_row]; pngsave.Dump(pngsave_file); gvTMOAnimItems.ClearSelection(); viewer.MotionEnabled = true; Animate(item); }