private void UpdatePicBox(bool refresh = true) { main_graphics.Clear(Color.White); mainScene.Draw(main_graphics, compLinesCheckBox.Checked); GR_Point p = mainScene.GetPointsCenter(true); label2.Text = p.X.ToString(); label3.Text = p.Y.ToString(); label4.Text = p.Z.ToString(); if (refresh) { MainPicBox.Refresh(); } }
private void MainPicBox_MouseMove(object sender, MouseEventArgs e) { endPos = e.Location; if (mouseLbutton && action != Action.noAction) { if (action == Action.connecting) { UpdatePicBox(false); main_graphics.DrawLine(new Pen(Color.Black, 2.0F), startPos, endPos); MainPicBox.Refresh(); return; } else if (action == Action.selecting) { UpdatePicBox(false); DrawSelectRect(Color.FromArgb(25, Color.Teal), Color.FromArgb(75, Color.Teal), startPos.X, startPos.Y, e.X, e.Y); MainPicBox.Refresh(); return; } else if (action == Action.transformX) { if (tool == Tool.move) { mainScene.MovePoints(true, false, false, e.X, startPos.X, e.Y, startPos.Y, true); } else if (tool == Tool.rotate) { mainScene.Temp_Xrotate += e.X - startPos.X; } else if (tool == Tool.resize) { mainScene.Temp_Xresize += (float)(e.X - startPos.X) / 16; } } else if (action == Action.transformY) { if (tool == Tool.move) { mainScene.MovePoints(false, true, false, e.X, startPos.X, e.Y, startPos.Y, true); } else if (tool == Tool.rotate) { mainScene.Temp_Yrotate += e.X - startPos.X; } else if (tool == Tool.resize) { mainScene.Temp_Yresize += (float)(e.X - startPos.X) / 16; } } else if (action == Action.transformZ) { if (tool == Tool.move) { mainScene.MovePoints(false, false, true, e.X, startPos.X, e.Y, startPos.Y, true); } else if (tool == Tool.rotate) { mainScene.Temp_Zrotate += e.X - startPos.X; } else if (tool == Tool.resize) { mainScene.Temp_Zresize += (float)(e.X - startPos.X) / 16; } } UpdatePicBox(true); startPos.X = e.X; startPos.Y = e.Y; return; } if (mouseMidbutton && shiftButton) { mainScene.Camera_HorizontalOffset += (e.X - startPos.X); mainScene.Camera_VerticalOffset += (e.Y - startPos.Y); startPos.X = e.X; startPos.Y = e.Y; UpdatePicBox(true); return; } if (mouseMidbutton) { mainScene.Camera_HorizontalAngle += (float)(e.X - startPos.X) / 4; mainScene.Camera_VerticalAngle += (float)(e.Y - startPos.Y) / 4; startPos.X = e.X; startPos.Y = e.Y; UpdatePicBox(true); return; } }