/// <summary> /// 制御点2Y /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void ChangeControlPoint2Y(object sender, EventArgs e) { int num = CMath.ChageNomalPosY(numericUpDown6.Value); int num2 = m_CurvePointControl.SetControl2PointY(num); numericUpDown6.Value = CMath.ChageDecimalPosY(num2); if (!m_CurvePointControl.isMoveSelectPoint()) { pictureBox1.Refresh(); //再描画 } }
/// <summary> /// 終了点 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void ChangeEndPoint(object sender, EventArgs e) { int num = CMath.ChageNomalPosY(numericUpDown7.Value); int num2 = m_CurvePointControl.SetEndPoint(num);; numericUpDown7.Value = CMath.ChageDecimalPosY(num2); if (!m_CurvePointControl.isMoveSelectPoint()) { pictureBox1.Refresh(); //再描画 } bp = m_CurvePointControl.GetBezierPoint(); }
/// <summary> /// 点を動かした際同期を取る /// </summary> public void numericUpDownSync() { bp = m_CurvePointControl.GetBezierPoint(); numericUpDown1.Value = CMath.ChageDecimalPosX(bp.startPoint.X); numericUpDown2.Value = CMath.ChageDecimalPosX(bp.controlPoint1.X); numericUpDown3.Value = CMath.ChageDecimalPosX(bp.controlPoint2.X); numericUpDown4.Value = CMath.ChageDecimalPosY(bp.startPoint.Y); numericUpDown5.Value = CMath.ChageDecimalPosY(bp.controlPoint1.Y); numericUpDown6.Value = CMath.ChageDecimalPosY(bp.controlPoint2.Y); numericUpDown7.Value = CMath.ChageDecimalPosY(m_CurvePointControl.GetEndPointY()); numericUpDown8.Value = CMath.ChageDecimalPosY(m_CurvePointControl.GetFirstStartPointY()); }
/// <summary> /// 選択点Y /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void ChangeSelectPointY(object sender, EventArgs e) { int num = CMath.ChageNomalPosY(numericUpDown4.Value); int num2 = m_CurvePointControl.SetStartPointY(num); numericUpDown4.Value = CMath.ChageDecimalPosY(num2); if (!m_CurvePointControl.isMoveSelectPoint()) { pictureBox1.Refresh(); //再描画 } //最初の開始点と同期を取る numericUpDown8.Value = CMath.ChageDecimalPosY(m_CurvePointControl.GetFirstStartPointY()); }
/// <summary> /// //座標を0~1の間に変換し文字列化させる /// </summary> /// <param name="bs"></param> /// <returns></returns> public string[] ToSting(CurvePointControl.BezierPoint bs) { //座標を0~1の間に変換し文字列化させる string[] name = new string[4]; name[0] = CMath.ChageDecimalPosX(bs.startPoint.X).ToString() + "," + CMath.ChageDecimalPosY(bs.startPoint.Y).ToString(); name[1] = CMath.ChageDecimalPosX(bs.controlPoint1.X).ToString() + "," + CMath.ChageDecimalPosY(bs.controlPoint1.Y).ToString(); name[2] = CMath.ChageDecimalPosX(bs.controlPoint2.X).ToString() + "," + CMath.ChageDecimalPosY(bs.controlPoint2.Y).ToString(); name[3] = CMath.ChageDecimalPosX(bs.endPoint.X).ToString() + "," + CMath.ChageDecimalPosY(bs.endPoint.Y).ToString(); return(name); }
public void SetList(List <CurvePointControl.BezierPoint> list) { m_list = list; m_Csvlist.Clear(); foreach (CurvePointControl.BezierPoint item in m_list) { CSVPoint cp = new CSVPoint(); cp.startPoint = new decimal[2]; cp.controlPoint1 = new decimal[2]; cp.controlPoint2 = new decimal[2]; cp.endPoint = new decimal[2]; cp.startPoint[0] = CMath.ChageDecimalPosX(item.startPoint.X); cp.startPoint[1] = CMath.ChageDecimalPosY(item.startPoint.Y); cp.controlPoint1[0] = CMath.ChageDecimalPosX(item.controlPoint1.X); cp.controlPoint1[1] = CMath.ChageDecimalPosY(item.controlPoint1.Y); cp.controlPoint2[0] = CMath.ChageDecimalPosX(item.controlPoint2.X); cp.controlPoint2[1] = CMath.ChageDecimalPosY(item.controlPoint2.Y); cp.endPoint[0] = CMath.ChageDecimalPosX(item.endPoint.X); cp.endPoint[1] = CMath.ChageDecimalPosY(item.endPoint.Y); m_Csvlist.Add(cp); } }