private Instance2D CreateInstance2D(Instance inst, IDefinition def) { //MatrixComponents mc = inst.Transformations[0].Matrix.GetMatrixComponents(); //Instance2D result = new Instance2D(inst.Name, def.Name, mc.TranslateX, mc.TranslateY, (float)(mc.Rotation * Math.PI / 180), mc.ScaleX, mc.ScaleY); Instance2D result = new Instance2D(inst.Name, def.Name, 0, 0, 0, 1, 1); result.Depth = inst.Depth; result.Transforms = inst.Transformations; result.Definition = definitions.Find(d => d.Id == inst.DefinitionId); result.StartFrame = curVo.GetFrameFromMilliseconds(inst.StartTime); result.TotalFrames = curVo.GetFrameFromMilliseconds(inst.EndTime) - result.StartFrame - 1; // end frame is last ms of frame, so -1 return(result); }
public void Init() { V2DDefinition ground = new V2DDefinition(); ground.Name = V2D.ROOT_NAME; ground.FrameCount = 1; V2DInstance inst = new V2DInstance(); inst.DefinitionName = ground.Name; inst.InstanceName = V2D.ROOT_NAME; inst.Definition = ground; inst.Transform = Matrix.Identitiy.GetDrawing2DMatrix().Elements; inst.TotalFrames = (int)curVo.GetFrameFromMilliseconds(curVo.Root.Duration); parentStack.Push(inst); root = inst; }