Est-ce que quelqu'un sait comment je peux commencer à dessiner un graphique polaire en java et tracer des points sur ce graphique? Je veux dire les cercles et les lignes, je veux faire avec quelque chose comme swing, et ne pas utiliser une bibliothèque comme Jfreechart Mercidessine un graphique polaire en Java
Répondre
Vous voudrez peut-être regarder Lissajous curves; un exemple de a = 5, b = 4 (5:4)
est illustré ci-dessous.
Addendum: Une fois que vous voyez comment tracer des points en coordonnées xy, alors vous devriez regarder converting between polar and Cartesian coordinates.
public class LissajousPanel extends JPanel {
private static final int SIZE = 400;
private GeneralPath path = new GeneralPath();
@Override
public Dimension getPreferredSize() {
return new Dimension(SIZE, SIZE);
}
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
g2d.setRenderingHint(
RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
double dt = Math.PI/180;
int w = getWidth()/2;
int h = getHeight()/2;
path.reset();
path.moveTo(w, h);
for (double t = 0; t < 2 * Math.PI; t += dt) {
double x = w * Math.sin(5 * t) + w;
double y = h * Math.sin(4 * t) + h;
path.lineTo(x, y);
}
g2d.setColor(Color.blue);
g2d.draw(path);
}
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.add(new LissajousPanel());
f.pack();
f.setVisible(true);
}
});
}
}
Java2D fait partie du JDK officiel et répond parfaitement à vos besoins. Vous pouvez trouver le document java ici: Java2d
Vous aurez besoin d'utiliser Java2D pour dessiner des cercles/polygones qui correspondent à vos besoins. Dans la méthode public void paint(Graphics g)
du contrôle que vous souhaitez dessiner, vous pouvez dessiner sur l'objet Graphics. Voici quelques exemples de différentes choses qui pourraient être utiles:
//Draw a polygon
public void paint(Graphics g)
{
int xVals[] = {25, 145, 25, 145, 25};
int yVals[] = {25, 25, 145, 145, 25};
g.drawPolygon(xVals, yVals, xVals.length);
}
//Draw an ellipse/circle
public void paint(Graphics g)
{
int xPos = 50;
int yPos = 50;
int xWidth = 100;
int yWidth = 100;
g.drawOval(xPos, yPos, xWidth, yWidth);
}
Gardez à l'esprit que la position sur les appels comme drawOval, drawRect, etc est pour le coin supérieur gauche de la forme, pas le centre de la forme. Si vous voulez que votre ovale soit centrée sur 50 et une largeur de 100, vous aurez besoin de mettre le xPos
et yPos
à 0.
- 1. représentation polaire de x, y en Java
- 2. Exportation d'un graphique polaire en PDF avec phantomjs
- 3. exercice écrire un programme graphique qui dessine une pyramide
- 4. Java ME dessine un rectangle
- 5. Graphique semi-circulaire en Java avec JFreeChart
- 6. Transformation polaire en CSS3?
- 7. Simple Graphique en Java
- 8. CreateProcessAsUser ne dessine pas l'interface graphique
- 9. Dessine l'image de swf avec C# graphique
- 10. flèches de tracé polaire ggplot2
- 11. dessine un point sur linechart en flex
- 12. Java OpenGL dessine une étoile
- 13. Comment créer un fichier graphique en Java?
- 14. Matplotlib intrigue polaire
- 15. Java dessine sur le composant en mode XOR ne dessine rien
- 16. dessine un graphique d'appel pour les codes source C en utilisant cppDepend
- 17. Application graphique intensive en Java
- 18. Graphique - DrawLine - dessine la ligne et déplace-la
- 19. Graphique linéaire 3D en Java
- 20. Graphique de Google: Le quadrillage d'AreaChart vAxis ne dessine pas
- 21. Flot dessine le graphique puis redirige sans raison
- 22. pourquoi je dessine diviser par rencontre graphique par erreur zéro?
- 23. Pourquoi l'objet graphique du Sprite ne dessine pas à l'écran?
- 24. Dessine la distribution normale Graphique d'un échantillon dans Matlab
- 25. matplotlib bizarrerie, ça ne dessine pas mon graphique
- 26. Peindre un graphique en Java en utilisant AWT
- 27. Comment mettre en œuvre un graphique de cluster en java
- 28. dessine un graphe de dépendances pour une classe java
- 29. En highstock 1.3.0, en zoomant dans son intégralité, le graphique dessine tout foiré
- 30. convertir un graphique en un graphique bipartite
-1, 'Ne jamais remplacer d'un composant de peinture (...)' méthode (sauf si vous devez absolument). Au lieu de cela, remplacez la méthode 'paintComponent (...)' du composant. – mre