public TSOForm(Viewer viewer, MainForm owner_form) { InitializeComponent(); TSOConfig tso_config = new TSOConfig(); this.ClientSize = tso_config.ClientSize; this.Text = "TSOView"; this.AllowDrop = true; for (int i = 0; i < keysEnabled.Length; i++) { keysEnabled[i] = true; } this.KeyDown += new KeyEventHandler(form_OnKeyDown); this.KeyUp += new KeyEventHandler(form_OnKeyUp); this.DragDrop += new DragEventHandler(form_OnDragDrop); this.DragOver += new DragEventHandler(form_OnDragOver); this.viewer = viewer; this.fig_form = new FigureForm(); this.owner_form = owner_form; if (viewer.InitializeApplication(this, true)) { viewer.FigureEvent += delegate(object sender, EventArgs e) { Figure fig; if (viewer.TryGetFigure(out fig)) { viewer.Camera.SetCenter(fig.Center); } }; viewer.FigureEvent += delegate(object sender, EventArgs e) { Figure fig; if (viewer.TryGetFigure(out fig)) { fig_form.SetFigure(fig); } else { fig_form.Clear(); } }; this.timer1.Enabled = true; viewer.Camera.Translation = new Vector3(0.0f, 0.0f, +50.0f); } }
public TSOForm(TSOConfig tso_config, string[] args) { InitializeComponent(); this.ClientSize = tso_config.ClientSize; for (int i = 0; i < keysEnabled.Length; i++) { keysEnabled[i] = true; } this.KeyDown += new KeyEventHandler(form_OnKeyDown); this.KeyUp += new KeyEventHandler(form_OnKeyUp); this.DragDrop += new DragEventHandler(form_OnDragDrop); this.DragOver += new DragEventHandler(form_OnDragOver); this.viewer = new Viewer(); viewer.DeviceSize = tso_config.DeviceSize; viewer.ScreenColor = tso_config.ScreenColor; viewer.HohoAlpha = tso_config.HohoAlpha; this.fig_form = new FigureForm(); if (viewer.InitializeApplication(this, true)) { viewer.FigureEvent += delegate(object sender, EventArgs e) { Figure fig; if (viewer.TryGetFigure(out fig)) { fig_form.SetFigure(fig); } else { fig_form.Clear(); } }; viewer.Camera.SetTranslation(0.0f, +10.0f, +44.0f); foreach (string arg in args) { viewer.LoadAnyFile(arg, true); } if (viewer.FigureList.Count == 0) { viewer.LoadAnyFile(Path.Combine(save_path, "system.tdcgsav.png"), true); } string script_file = Path.Combine(Application.StartupPath, "Script.cs"); if (File.Exists(script_file)) { string assembly_file = Path.GetTempFileName(); var script = CSScript.Load(script_file, assembly_file, true, null).CreateInstance("TDCG.Script").AlignToInterface <IScript>(); script.Hello(viewer); } this.timer1.Enabled = true; } }
public void FrameMove() { if (keysEnabled[keySave] && keys[keySave]) { keysEnabled[keySave] = false; viewer.SaveToPng("sample.png"); } if (keysEnabled[keyMotion] && keys[keyMotion]) { keysEnabled[keyMotion] = false; viewer.MotionEnabled = !viewer.MotionEnabled; } if (keysEnabled[keyShadow] && keys[keyShadow]) { keysEnabled[keyShadow] = false; viewer.ShadowShown = !viewer.ShadowShown; } if (keysEnabled[keySprite] && keys[keySprite]) { keysEnabled[keySprite] = false; viewer.SpriteShown = !viewer.SpriteShown; } if (keysEnabled[keyFigure] && keys[keyFigure]) { keysEnabled[keyFigure] = false; viewer.NextFigure(); } if (keysEnabled[keyDelete] && keys[keyDelete]) { keysEnabled[keyDelete] = false; if (keys[(int)Keys.ControlKey]) { viewer.ClearFigureList(); } else { viewer.RemoveSelectedFigure(); } } if (keysEnabled[keyCameraReset] && keys[keyCameraReset]) { keysEnabled[keyCameraReset] = false; viewer.Camera.Reset(); viewer.Camera.SetTranslation(0.0f, +10.0f, +44.0f); } if (keysEnabled[keyCenter] && keys[keyCenter]) { keysEnabled[keyCenter] = false; viewer.Camera.ResetTranslation(); Figure fig; if (viewer.TryGetFigure(out fig)) { viewer.Camera.SetCenter(fig.Center + fig.Translation); } } if (keysEnabled[keyFigureForm] && keys[keyFigureForm]) { keys[keyFigureForm] = false; keysEnabled[keyFigureForm] = true; // stale KeyUp event fig_form.Show(); fig_form.Activate(); } float keyL = 0.0f; float keyR = 0.0f; float keyU = 0.0f; float keyD = 0.0f; float keyPush = 0.0f; float keyPull = 0.0f; float keyZRol = 0.0f; if (keys[(int)Keys.Left]) { keyL = 2.0f; } if (keys[(int)Keys.Right]) { keyR = 2.0f; } if (keys[(int)Keys.PageUp]) { keyU = 2.0f; } if (keys[(int)Keys.PageDown]) { keyD = 2.0f; } if (keys[(int)Keys.Up]) { keyPush = 1.0f; } if (keys[(int)Keys.Down]) { keyPull = 1.0f; } if (keys[(int)Keys.A]) { keyZRol = -2.0f; } if (keys[(int)Keys.D]) { keyZRol = +2.0f; } if (Control.ModifierKeys == Keys.Shift) { Figure fig; if (viewer.TryGetFigure(out fig)) { fig.Move(keyR - keyL, keyU - keyD, keyPull - keyPush); } } else { viewer.Camera.Move(keyR - keyL, keyU - keyD, keyPull - keyPush); viewer.Camera.RotZ(DegreeToRadian(keyZRol)); } }
public TSOForm(TSOConfig tso_config, string[] args) { InitializeComponent(); this.ClientSize = tso_config.ClientSize; if (tso_config.PseudoFullScreen) { this.FormBorderStyle = FormBorderStyle.None; } if (tso_config.Keying) { this.TransparencyKey = tso_config.ScreenColor; } for (int i = 0; i < keysEnabled.Length; i++) { keysEnabled[i] = true; } this.KeyDown += new KeyEventHandler(form_OnKeyDown); this.KeyUp += new KeyEventHandler(form_OnKeyUp); this.DragDrop += new DragEventHandler(form_OnDragDrop); this.DragOver += new DragEventHandler(form_OnDragOver); this.viewer = new Viewer(); viewer.Windowed = tso_config.Windowed; viewer.DeviceSize = tso_config.DeviceSize; viewer.ScreenColor = tso_config.ScreenColor; viewer.Ambient = tso_config.Ambient; viewer.HohoAlpha = tso_config.HohoAlpha; viewer.XRGBDepth = tso_config.XRGBDepth; viewer.SetDepthMapFormat(tso_config.DepthMapFormat); viewer.SetNormalMapFormat(tso_config.NormalMapFormat); viewer.SetProjectionMode(tso_config.ProjectionMode); viewer.SetRenderMode(tso_config.RenderMode); viewer.MainGel = tso_config.MainGel; viewer.ScreenDof = tso_config.ScreenDof; this.figureForm = new FigureForm(); this.configForm = new ConfigForm(); CameraConfig camera_config = new CameraConfig(); DepthMapConfig depthmap_config = new DepthMapConfig(); OcclusionConfig occlusion_config = new OcclusionConfig(); DiffusionConfig diffusion_config = new DiffusionConfig(); viewer.CameraConfig = camera_config; viewer.DepthMapConfig = depthmap_config; viewer.OcclusionConfig = occlusion_config; viewer.DiffusionConfig = diffusion_config; configForm.CameraConfig = camera_config; configForm.DepthMapConfig = depthmap_config; configForm.OcclusionConfig = occlusion_config; configForm.DiffusionConfig = diffusion_config; configForm.ConfigConnect(); this.record = new Record(viewer, tso_config.RecordStep); if (viewer.InitializeApplication(this, true)) { viewer.ConfigConnect(); figureForm.SetViewer(viewer); viewer.FigureSelectEvent += delegate(object sender, EventArgs e) { Figure fig; if (viewer.TryGetFigure(out fig)) { figureForm.SetFigure(fig); } else { figureForm.Clear(); } }; viewer.Camera.SetTranslation(0.0f, +10.0f, +44.0f); foreach (string arg in args) { viewer.LoadAnyFile(arg, true); } if (viewer.FigureList.Count == 0) { viewer.LoadAnyFile(Path.Combine(save_path, "system.tdcgsav.png"), true); } this.timer1.Enabled = true; } }
public void FrameMove() { if (keysEnabled[keySave] && keys[keySave]) { keysEnabled[keySave] = false; if ((Control.ModifierKeys & Keys.Control) == Keys.Control) { record.Start(); } else { SaveToPng(); } } if (keysEnabled[keyMotion] && keys[keyMotion]) { keysEnabled[keyMotion] = false; viewer.MotionEnabled = !viewer.MotionEnabled; } if (keysEnabled[keyProjection] && keys[keyProjection]) { keysEnabled[keyProjection] = false; SwitchProjectionMode(); } if (keysEnabled[keyAmbient] && keys[keyAmbient]) { keysEnabled[keyAmbient] = false; SwitchRenderMode(RenderMode.Ambient); } if (keysEnabled[keyDepthMap] && keys[keyDepthMap]) { keysEnabled[keyDepthMap] = false; SwitchRenderMode(RenderMode.DepthMap); } if (keysEnabled[keyNormalMap] && keys[keyNormalMap]) { keysEnabled[keyNormalMap] = false; SwitchRenderMode(RenderMode.NormalMap); } if (keysEnabled[keyOcclusion] && keys[keyOcclusion]) { keysEnabled[keyOcclusion] = false; SwitchRenderMode(RenderMode.Occlusion); } if (keysEnabled[keyDiffusion] && keys[keyDiffusion]) { keysEnabled[keyDiffusion] = false; SwitchRenderMode(RenderMode.Diffusion); } if (keysEnabled[keyShadow] && keys[keyShadow]) { keysEnabled[keyShadow] = false; SwitchRenderMode(RenderMode.Shadow); } if (keysEnabled[keyConfigForm] && keys[keyConfigForm]) { keys[keyConfigForm] = false; keysEnabled[keyConfigForm] = true; // stale KeyUp event configForm.Show(); configForm.Activate(); } if (keysEnabled[keyFigure] && keys[keyFigure]) { keysEnabled[keyFigure] = false; viewer.NextFigure(); } if (keysEnabled[keyDelete] && keys[keyDelete]) { keysEnabled[keyDelete] = false; if (keys[(int)Keys.ControlKey]) { viewer.ClearFigureList(); } else { viewer.RemoveSelectedFigure(); } } if (keysEnabled[keyCameraReset] && keys[keyCameraReset]) { keysEnabled[keyCameraReset] = false; viewer.Camera.Reset(); viewer.Camera.SetTranslation(0.0f, +10.0f, +44.0f); } if (keysEnabled[keyCenter] && keys[keyCenter]) { keysEnabled[keyCenter] = false; viewer.Camera.ResetTranslation(); Figure fig; if (viewer.TryGetFigure(out fig)) { viewer.Camera.SetCenter(fig.Center + fig.Translation); } } if (keysEnabled[keyFigureForm] && keys[keyFigureForm]) { keys[keyFigureForm] = false; keysEnabled[keyFigureForm] = true; // stale KeyUp event figureForm.Show(); figureForm.Activate(); } float keyL = 0.0f; float keyR = 0.0f; float keyU = 0.0f; float keyD = 0.0f; float keyPush = 0.0f; float keyPull = 0.0f; if (keys[(int)Keys.Left]) { keyL = 2.0f; } if (keys[(int)Keys.Right]) { keyR = 2.0f; } if (keys[(int)Keys.PageUp]) { keyU = 2.0f; } if (keys[(int)Keys.PageDown]) { keyD = 2.0f; } if (keys[(int)Keys.Up]) { keyPush = 1.0f; } if (keys[(int)Keys.Down]) { keyPull = 1.0f; } if (Control.ModifierKeys == Keys.Shift) { Figure fig; if (viewer.TryGetFigure(out fig)) { fig.Move(keyR - keyL, keyU - keyD, keyPull - keyPush); } } else { viewer.Camera.Move(keyR - keyL, keyU - keyD, keyPull - keyPush); } }
public TSOForm(TSOConfig tso_config, string[] args) { InitializeComponent(); this.ClientSize = tso_config.ClientSize; this.AllowDrop = true; for (int i = 0; i < keysEnabled.Length; i++) { keysEnabled[i] = true; } this.KeyDown += new KeyEventHandler(form_OnKeyDown); this.KeyUp += new KeyEventHandler(form_OnKeyUp); this.DragDrop += new DragEventHandler(form_OnDragDrop); this.DragOver += new DragEventHandler(form_OnDragOver); this.viewer = new Viewer(false); this.fig_form = new FigureForm(); this.tbr = new TransBoneRotation(); if (viewer.InitializeApplication(this, true)) { viewer.FigureEvent += delegate(object sender, EventArgs e) { Figure fig; if (viewer.TryGetFigure(out fig)) { viewer.Camera.SetCenter(fig.Center); } }; viewer.FigureEvent += delegate(object sender, EventArgs e) { Figure fig; if (viewer.TryGetFigure(out fig)) { fig_form.SetFigure(fig); } else { fig_form.Clear(); } }; foreach (string arg in args) { viewer.LoadAnyFile(arg, true); } // �����|�[�Y��TMO���� Figure fig_forPose; viewer.TryGetFigure(out fig_forPose); tbr.SetInitPose(fig_forPose); /*string script_file = Path.Combine(Application.StartupPath, "Script.cs"); * if (File.Exists(script_file)) * { * var script = CSScript.Load(script_file).CreateInstance("TDCG.Script").AlignToInterface<IScript>(); * script.Hello(viewer); * }*/ this.timer1.Enabled = true; viewer.Camera.Translation = new Vector3(0.0f, 0.0f, +50.0f); } }
public void FrameMove() { if (keysEnabled[keySave] && keys[keySave]) { keysEnabled[keySave] = false; viewer.SaveToBitmap("sample.bmp"); } if (keysEnabled[keyMotion] && keys[keyMotion]) { keysEnabled[keyMotion] = false; viewer.SwitchMotionEnabled(); } if (keysEnabled[keyShadow] && keys[keyShadow]) { keysEnabled[keyShadow] = false; viewer.SwitchShadowShown(); } if (keysEnabled[keySprite] && keys[keySprite]) { keysEnabled[keySprite] = false; viewer.SwitchSpriteShown(); } if (keysEnabled[keyFigure] && keys[keyFigure]) { keysEnabled[keyFigure] = false; viewer.NextFigure(); } if (keysEnabled[keyDelete] && keys[keyDelete]) { keysEnabled[keyDelete] = false; if (keys[(int)Keys.ControlKey]) { viewer.ClearFigureList(); } else { viewer.RemoveSelectedFigure(); } } if (keysEnabled[keyCameraReset] && keys[keyCameraReset]) { keysEnabled[keyCameraReset] = false; camera.Reset(); Figure fig; if (viewer.TryGetFigure(out fig)) { camera.SetCenter(fig.Center); } } if (keysEnabled[keyFigureForm] && keys[keyFigureForm]) { keys[keyFigureForm] = false; keysEnabled[keyFigureForm] = true; // stale KeyUp event fig_form.Show(); fig_form.Activate(); } float keyL = 0.0f; float keyR = 0.0f; float keyU = 0.0f; float keyD = 0.0f; float keyPush = 0.0f; float keyPull = 0.0f; float keyZRol = 0.0f; if (keys[(int)Keys.Left]) { keyL = 2.0f; } if (keys[(int)Keys.Right]) { keyR = 2.0f; } if (keys[(int)Keys.PageUp]) { keyU = 2.0f; } if (keys[(int)Keys.PageDown]) { keyD = 2.0f; } if (keys[(int)Keys.Up]) { keyPush = 1.0f; } if (keys[(int)Keys.Down]) { keyPull = 1.0f; } if (keys[(int)Keys.A]) { keyZRol = -2.0f; } if (keys[(int)Keys.D]) { keyZRol = +2.0f; } camera.Move(keyR - keyL, keyU - keyD, keyPull - keyPush); camera.RotZ(DegreeToRadian(keyZRol)); }