Member 12821233 Ответов: 1

Рисование простой кривой на java


я пытаюсь нарисовать кривую на java. я не хочу квадратичной или кубической кривой. когда я рисую, он должен отображать кривую, а не линию.
и я использую координаты (x,y),(last_x,last_y),(x1,y1).

Что я уже пробовал:

if (pen_type==1){
           g2.fillOval( x, y, stroke_width, stroke_width );
       }  else if (pen_type==2) {
           g2.draw(new Line2D.Double(x, y, stroke_width, stroke_width));
       }
       else {
            //x1= ((76-4)/(6-0));
           // y= ((76-4)/(30-29));
           //y=((x*x*x)-(3*x));
           g2.setStroke(new BasicStroke(stroke_width, BasicStroke.CAP_ROUND,BasicStroke.JOIN_ROUND));
           g2.drawLine(last_x, last_y,x,y);
            //g2.drawArc ( 0, 0, getWidth (), getHeight (), 80, -245 );
           //g2.draw(new Line2D.Double(x, y, stroke_width, stroke_width));

            //g2.drawArc(last_x, last_y, getWidth (), getHeight (), 90, 60);

           //g2.drawArc(x1, y1, last_x, last_y,5,5);

             QuadCurve2D.Double curve = new QuadCurve2D.Double(last_x, last_y,x1,y1,x,y);
             g2.draw(curve);



           //CubicCurve2D c = new CubicCurve2D .Float();
           //c.setCurve(x1, y1, last_x, last_y, x, y,x1,y1);
          // g2.draw(c);

       };

Richard MacCutchan

В чем вопрос?

Member 12821233

как я могу нарисовать кривую в java?
нарисуйте кривую вместо линии..
я хочу нарисовать кривую на java

Member 12821233

вы получили какой-нибудь намек на рисование кривой на java?

Richard MacCutchan

Ты даже не потрудился взглянуть на ссылку, которую я тебе дал? В интернете есть множество примеров для рисования любой кривой, эллипса, круга и т. д.

1 Ответов

Рейтинг:
10

CPallini

Непонятно, что вы делаете со своим кодом. В любом случае, используя drawLine вы всегда рисуете линейную аппроксимацию кривой (обычно она вполне доступна). Такая аппроксимация тем точнее, чем меньше линейные отрезки, аппроксимирующие кривую (см. Длина дуги - Википедия[^]).


Member 12821233

спасибо, что ответили мне.
на самом деле я пытаюсь нарисовать кривую. я хочу нарисовать кривую вместо линии.
есть ли другой способ нарисовать кривую? например, использовать координаты dx и dy?