Zeichnen Sie einen Kreis mit einem radius und Punkte um den Rand
Ich bin wirklich stecken, wie man über Programmierung. Wie zeichnet man einen Kreis in Java mit einem radius und Punkte um den Rand?
Brauche ich zum zeichnen einen Kreis, in ein JFrame mit einem radius und Punkte, um den Umfang. ich kann das mathematisch berechnen, wie man die Koordinaten des Punktes um den Rand, aber ich kann nicht scheinen, um in der Lage sein zu Programm den Kreis. Ich bin derzeit mit einem Ellipse2D Methode, aber das scheint nicht zu arbeiten und nicht wieder ein radius, wie nach meinem Verständnis nicht zeichnen den Kreis aus der Mitte eher von einem Start-Koordinate mit einer Höhe und Breite.
Mein Aktueller code ist auf einem separaten Rahmen, aber ich muss hinzufügen, dass es zu meiner vorhandenen Rahmen.
import java.awt.*;
import javax.swing.*;
import java.awt.geom.*;
public class circle extends JFrame {
public circle() {
super("circle");
setSize(410, 435);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Panel sp = new Panel();
Container content = getContentPane();
content.add(sp);
setContentPane(content);
setVisible(true);
}
public static void main (String args[]){
circle sign = new circle();
}
}
class Panel extends JPanel {
public void paintComponent(Graphics comp) {
super.paintComponent(comp);
Graphics2D comp2D = (Graphics2D) comp;
comp2D.setColor(Color.red);
Ellipse2D.Float sign1 = new Ellipse2D.Float(0F, 0F, 350F, 350F);
comp2D.fill(sign1);
}
}
InformationsquelleAutor der Frage alchemey89 | 2010-03-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Punkte auf einer Kreis kann angegeben werden als Funktion der Winkel θ:
Hier, in Schritten von 2π/8 gezeigt.
Nachtrag: Wie bereits in einem Kommentar von @Christoffer Hammarström, diese revidiert Beispiel reduziert sich die Anzahl der Magische zahlen im original. Die gewünschte Anzahl der Punkte wird ein parameter an den Konstruktor. Es passt außerdem die rendering des Containers Größe.
InformationsquelleAutor der Antwort trashgod
Probieren Sie etwas wie dieses:
Können Sie auch überschreiben der paint-Methode in der Klasse Rahmen, aber dann müssten Sie berechnen die Größe der Dekoration der Fenster und es wird schmutzig, es...
InformationsquelleAutor der Antwort Viesturs
Verwenden Minueto.
InformationsquelleAutor der Antwort Präriewolf
Ich empfehlen, einige Zeit, um überprüfen Sie die "midpoint circle Algorithmus Bresenham-Kreis-Algorithmus". Die akzeptierte Lösung basiert auf sehr aufwendige mathematische Operationen wie float-Multiplikation und trigonometrische Funktionen.
InformationsquelleAutor der Antwort mhcuervo