// ================================================ // Function - GUI // ================================================ private void btnOpen_Click(object sender, EventArgs e) { string path = System.IO.Path.Combine(Application.StartupPath, "Sample.viz"); if (System.IO.File.Exists(path) == true) { txtPath.Text = path; txtMatrix.Text = "0.957904591,-0.000000000,-0.287086738,0.000000000,-0.283075368,0.166583667,-0.944520099,0.000000000,0.047823961,0.986027323,0.159571259,0.000000000,-178018.006091000,-812.822710430,66890.223468829,1.000000000"; } else { OpenFileDialog dlg = new OpenFileDialog(); dlg.Filter = "VIZ (*.viz)|*.viz"; if (dlg.ShowDialog() != DialogResult.OK) { return; } txtPath.Text = dlg.FileName; } vizcore3d.Model.Open(txtPath.Text); string matrix = txtMatrix.Text; if (String.IsNullOrEmpty(matrix) == false) { VIZCore3D.NET.Data.Matrix3D m = new Data.Matrix3D(txtMatrix.Text); vizcore3d.Object3D.FromIndex(0).Transform(m); } vizcore3d.View.RotateCamera(Data.ShipbuildingCameraDirection.TOP); vizcore3d.View.FitToView(); }
private void InitTransform() { vizcore3d.Object3D.Transform.RestoreTransform(new List <int>() { 0 }); string matrix = txtMatrix.Text; if (String.IsNullOrEmpty(matrix) == false) { VIZCore3D.NET.Data.Matrix3D m = new Data.Matrix3D(txtMatrix.Text); vizcore3d.Object3D.FromIndex(0).Transform(m); } }
private VIZCore3D.NET.Data.Matrix3D GetMatrix() { VIZCore3D.NET.Data.Matrix3D matrix = new Data.Matrix3D(); matrix.Matrix[0] = Convert.ToSingle(txtMatrix11.Text); matrix.Matrix[1] = Convert.ToSingle(txtMatrix12.Text); matrix.Matrix[2] = Convert.ToSingle(txtMatrix13.Text); matrix.Matrix[3] = Convert.ToSingle(txtMatrix21.Text); matrix.Matrix[4] = Convert.ToSingle(txtMatrix22.Text); matrix.Matrix[5] = Convert.ToSingle(txtMatrix23.Text); matrix.Matrix[6] = Convert.ToSingle(txtMatrix31.Text); matrix.Matrix[7] = Convert.ToSingle(txtMatrix32.Text); matrix.Matrix[8] = Convert.ToSingle(txtMatrix33.Text); matrix.Matrix[9] = Convert.ToSingle(txtMatrix41.Text); matrix.Matrix[10] = Convert.ToSingle(txtMatrix42.Text); matrix.Matrix[11] = Convert.ToSingle(txtMatrix43.Text); return(matrix); }
private void View_OnViewDefaultMouseMoveEvent(object sender, MouseEventArgs e) { VIZCore3D.NET.Data.CameraData camera = vizcore3d.View.GetCameraData(); VIZCore3D.NET.Data.Matrix3D matrix = new Data.Matrix3D(camera.Matrix); VIZCore3D.NET.Data.Vector3D vector = matrix.GetRotation(); int x = Convert.ToInt32(vector.X); // X축 회전 각도 int y = Convert.ToInt32(vector.Y); // Y축 회전 각도 int z = Convert.ToInt32(vector.Z); // Z축 회전 각도 x = Math.Abs(x % 360); y = Math.Abs(y % 360); z = Math.Abs(z % 360); tbX.Value = x; tbY.Value = y; tbZ.Value = z; XOffset = x; YOffset = y; ZOffset = z; txtX.Invoke(new EventHandler(delegate { txtX.Text = x.ToString(); })); txtY.Invoke(new EventHandler(delegate { txtY.Text = y.ToString(); })); txtZ.Invoke(new EventHandler(delegate { txtZ.Text = z.ToString(); })); }