Polygon erweitern

0x7F800000

Top Contributor
Polygon ist ziemlich antiquiert, für die meisten Dinge ist ein Path2D besser.
Das ist alles schön und gut, aber ich befürchte irgendwie, dass der Threadstarter irgendeine Hausaufgabe gekriegt hat, wo er beispielsweise den Umfang eines Fünfecks ausrechnen muss, und nun in den finsteren Abgründen von Java2D schmort, anstatt seine Hausaufgaben zu machen, und alles simple & stupid from scratch zu implementieren. :autsch:
 

radical_edward

Aktives Mitglied
Meine Gedanken wären Richtung Array gegangen und den schrittweise erweitert. Aber danke! Und ja ich werde wahrscheinlich festhängen. Und??? I frage das naechstemal um Erlaubnis ob ich was fragen darf.:oops:
 

0x7F800000

Top Contributor
Du in vollständigen Sätzen kannst? Bitte? Es ist anstrengend lesen so!!!...!::!:?! Danke.
Meine Gedanken wären Richtung Array gegangen und den schrittweise erweitert.
Das ist zwar schön, dass sie irgendwohin gegangen wären, aber bis zu deinem Post haben's die Gedanken anscheinend doch nicht geschafft, und Gedanken lesen können wir hier nicht. Es sind nur zwei nicht besonders ausführliche Fragen mit dem Stichwort "Polygon" herausgekommen, darauf hat sich dann eRaaaa gestürzt, und dir irgendein Monstrum aus der Standard-API herausgegraben, weil ihm auch nichts besseres eingefallen ist.

Also, fangen wir einfach nochmal an:
- Gib ein paar Anhaltspunkte, damit wir dein Niveau etwas eingrenzen können: bist du 12? Bist du ein Informatikstudent? Bist du vielleicht ein emeritierter Informatikprofessor? Die Antwort würde jeweils anders aussehen.
- Skizziere dein Problem, die Fragestellung, die Anforderungen...
- Beschreibe die Werkzeuge, die Du zur Lösung verwenden darfst/ sollst/ willst
(es sind jeweils völlig verschiedene Fragen, je nach dem, ob es um eine Isolierte Hausaufgabe ohne GUI, um eine AWT-basierte Bibliothek, oder um 3D-Grafik geht)
- Beschreibe deine bisherigen Lösungsansätze, poste ggf kurzes kompilierbares Beispiel
- Füge ggf. Fehlermeldungen hinzu etc.

Genaueres kannst du hier nachlesen: http://www.java-forum.org/forum-faq-beitraege/7407-man-fragen-richtig-stellt.html

Wenn es um's dynamische Hinzufügen geht, sind Arrays normalerweise keine Option: ArrayList wäre da schon etwas besser, LinkedList wäre erheblich besser.
 
Zuletzt bearbeitet:

radical_edward

Aktives Mitglied
Also:
Java:
import java.awt.*;

class Example1 extends Frame{
	public Example1(){
		super("my window");
		setSize(400,300);
		setVisible(true);
	}
	
	public void paint(Graphics g){
		
		int[]x = new int[7];
		int[]y = new int[7];
		
		//int xx = 0;
		
		for(int yy = 0;yy<x.length;++yy){
			x[yy] = (int)(Math.random()*400);
			y[yy] = (int)(Math.random()*300);
		}
		
		g.drawPolygon(x,y,x.length);
		
		
		
	}
	
	public static void main(String[]args){
		new Example1();
	}
}

ein neues Gedankenspiel:
ich moechte in Polygon mit 7 Punkten darstellen. das sich nach einer Zeit immer verändert.
Polygon mit 7 Punkten habe ich. erstes Problem: es verändert sich wenn ich die Windowgrösse verändere. Gibt es ein Window das in seiner Größe fix ist?
Und bitte nicht zu hart mit mir ins Gericht gehen...
 

0x7F800000

Top Contributor
Und bitte nicht zu hart mit mir ins Gericht gehen...

Gehen wird normalerweise nicht. Ich verstehe 0x7F800000 im Moment auch nicht :bahnhof:

Hey, was'n los^^ hab ich hier jemanden versehentlich gelyncht :joke:? sorry, falls es so rübergekommen ist, ich bin grad in meiner ätzend-sarkastischen Stimmung^^ :oops: Aber ich find' man kann die Fragen wirklich etwas konkreter stellen, als beim ersten Versuch... Also: was meintest du nochmal mit "hinzufügen"? Ich hab dein Beispiel bisschen ergänzt, dass man nun mit mouseklick punkte einfügen kann, dort sieht man auch, inwiefern eine LinkedList besser zum Einfügen geeignet ist:
Java:
import javax.swing.*;
import java.awt.Graphics;
import java.awt.event.*;
import java.util.*;
import static java.lang.Math.*;

class Example1 extends JFrame{
    public Example1(){
        super("my window");
        setSize(400,300);
        // setResizable(false); // größe unveränderlich machen, falls nötig
        setVisible(true);
        
        // auf mausklicks hören
        addMouseListener(new MouseAdapter(){
        	@Override
        	public void mousePressed(MouseEvent e){
        		// beim klick punkt einfügen, alles neumalen
        		polygonLine.add(new Point(e.getX(), e.getY()));
        		repaint();
        	}
        });
    }
    
    /** minimalistische Klasse um Punkte darzustellen, gibts in der standard-API
     *  auch irgendwo schon
     */
    protected class Point{
    	int x;
    	int y;
    	public Point(int x, int y){
    		this.x = x; 
    		this.y = y;
    	}
    }
    
    /** der polygonzug als member variable, nicht als temporäre variable in paint,
     *  dann springt es beim neumalen nicht so lustig hin und her 
     */
    protected List<Point> polygonLine = new LinkedList<Point>();
    
    // beim initialisieren der Instanz irgendwie füllen, falls nötig
    // ("initializer block" nennt sich das, afair)
    /*
    {
    	for (int i = 0; i < 70; i++) 
    		polygonLine.add(new Point( (int)(random()*300 + 50), (int)(random()*200 + 50)));
    }
    */
    
    // das funzt zwar, ist aber schon recht brutal, 
    // direkt auf's fenster draufzumalen. irgendein spezialisiertes JComponent
    // wäre evtl ein bisschen angebrachter
    public void paint(Graphics g){
    	super.paint(g);
        if (!polygonLine.isEmpty()){
        	Point previous = polygonLine.get(polygonLine.size() - 1);
        	for (Point current: polygonLine){
        		g.drawLine(previous.x, previous.y, current.x, current.y);
        		previous = current;
        	}
        }
    }
    
    public static void main(String[]args){
        new Example1();
    }
}
klick mal rum, dann sieht man was...
Willst du das jetzt noch irgendwie "animieren", oder wie ist das mit "verändern" zu verstehen?
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Vererbung Polygon erweitern ? Java Basics - Anfänger-Themen 4
B Objete von Polygon mit TreeSet verwalten Java Basics - Anfänger-Themen 1
F Polygon vergrößern Java Basics - Anfänger-Themen 8
S Polygon contains - Erläuterung Java Basics - Anfänger-Themen 3
K draw Polyline will nicht wie Polygon Java Basics - Anfänger-Themen 2
S Speicherbedarf Pixel vs. Polygon? Java Basics - Anfänger-Themen 7
M Polygon umkreisen? Java Basics - Anfänger-Themen 47
K Methoden contains()-Methode für Punkt in Polygon Java Basics - Anfänger-Themen 5
M Polygon Punkte im Uhrzeigersinn sortieren Java Basics - Anfänger-Themen 2
G Polygon in Frame zeichnen Java Basics - Anfänger-Themen 3
E Polygon und Polyline Java Basics - Anfänger-Themen 30
K Polygon Java Basics - Anfänger-Themen 14
C Polygon um Figur bestimmen Java Basics - Anfänger-Themen 10
K Polygon in Java3D (Java 3D) zeichnen Java Basics - Anfänger-Themen 4
T Polygon.contains Fehler Java Basics - Anfänger-Themen 2
Rene_Meinhardt Polygon.Contains() funktioniert nicht richtig? Java Basics - Anfänger-Themen 3
0 problem beim Polygon zeichnen Java Basics - Anfänger-Themen 3
G bild in polygon zeichnen Java Basics - Anfänger-Themen 6
G Polygon Java Basics - Anfänger-Themen 7
I drehendes polygon Java Basics - Anfänger-Themen 4
Proxy Stack erweitern mit neuem Array falls der alte voll ist!? Java Basics - Anfänger-Themen 5
Poppigescorn Arrayliste Mittels Scanner erweitern Java Basics - Anfänger-Themen 6
J GroupLayout zur Laufzeit erweitern Java Basics - Anfänger-Themen 1
B Array bei jeder Eingabe um eins erweitern Java Basics - Anfänger-Themen 3
JD_1998 Vorgegebene Methode erweitern um Hex -> Dezimal umzuwandeln Java Basics - Anfänger-Themen 1
V Array aus Klasse um vererbte Elemente erweitern Java Basics - Anfänger-Themen 3
1 main-Methode erweitern, Nachfrage nach wiedeholung Java Basics - Anfänger-Themen 2
bensdt Klasse erweitern um eine Methode "void decrement()" Java Basics - Anfänger-Themen 5
M Ein Programm erweitern, wie? Java Basics - Anfänger-Themen 3
M Array immer wieder um ein Element erweitern Java Basics - Anfänger-Themen 6
S Array Java erweitern Java Basics - Anfänger-Themen 27
zhermann String erweitern Java Basics - Anfänger-Themen 4
L Java Kenntnisse erweitern... Java Basics - Anfänger-Themen 10
javaerd Wie kann ich Brute Force Methode mit Strings erweitern Java Basics - Anfänger-Themen 1
M Classpath Befehl zum Kompilieren um die Option classpath erweitern. Java Basics - Anfänger-Themen 5
H Implementierung eines Interfaces erweitern Java Basics - Anfänger-Themen 13
D Datentypen 2 d array erweitern und ins negative gehen. Java Basics - Anfänger-Themen 9
J Listenimplementierung - Wie erweitern? Java Basics - Anfänger-Themen 1
F Erste Schritte If Bedingung in Schleife dynamisch erweitern Java Basics - Anfänger-Themen 4
V Dreidimensionales int Array erweitern/verkleinern Java Basics - Anfänger-Themen 4
A Properties erweitern Java Basics - Anfänger-Themen 2
H Klasse erweitern Java Basics - Anfänger-Themen 20
M Array erweitern ohne Stringbuilder Java Basics - Anfänger-Themen 6
U JFrame durch ActionListener erweitern Java Basics - Anfänger-Themen 4
HoloYoitsu args-Parameter durchschleifen (Schnittstelle erweitern?) Java Basics - Anfänger-Themen 27
T Vererbung, Konstruktor erweitern Java Basics - Anfänger-Themen 4
E Input/Output Datei immer weiter erweitern Java Basics - Anfänger-Themen 4
L Array um ein Feld erweitern Java Basics - Anfänger-Themen 13
S table erweitern Java Basics - Anfänger-Themen 3
M Array in Methode erweitern und zurückgeben Java Basics - Anfänger-Themen 7
C ImageIcon erweitern Java Basics - Anfänger-Themen 6
L Array erweitern per Methode Java Basics - Anfänger-Themen 5
C OOP Externe Klasse erweitern (ohne Vererbung!!) Java Basics - Anfänger-Themen 8
E Objekt entweder erstellen oder erweitern Java Basics - Anfänger-Themen 4
C xml datei erweitern Java Basics - Anfänger-Themen 3
S Teiler ermittlen - Array erweitern? Java Basics - Anfänger-Themen 14
B EnumSet erweitern ... Java Basics - Anfänger-Themen 25
T array erweitern/flexible ohne collections usw. Java Basics - Anfänger-Themen 3
J Arrays erweitern - Performance vs Speicherverbrauch Java Basics - Anfänger-Themen 6
B Textdateien erweitern Java Basics - Anfänger-Themen 7
V Warum? Klasse erweitern und ausgeben Java Basics - Anfänger-Themen 3
S Welche Klasse erweitern? Java Basics - Anfänger-Themen 4
G Bildbetrachter erweitern Java Basics - Anfänger-Themen 14
G JComboBox um eine Methode erweitern Java Basics - Anfänger-Themen 2
L String erweitern. Java Basics - Anfänger-Themen 2
H 2DArray manuell dynamisch erweitern Java Basics - Anfänger-Themen 7
K Objekte/Klassen erweitern ~ Javascript Prototyp Java Basics - Anfänger-Themen 5
D Heap erweitern Java Basics - Anfänger-Themen 3
P Fenstergröße per Buttonklick erweitern? Java Basics - Anfänger-Themen 4
A Queue erweitern Java Basics - Anfänger-Themen 13
A classpath zur Laufzeit erweitern Java Basics - Anfänger-Themen 4
T Objekt erweitern Java Basics - Anfänger-Themen 3
G Feld bzw. Arrays erweitern oder zusammenfügen Java Basics - Anfänger-Themen 4
C fenster erweitern durch button Java Basics - Anfänger-Themen 3
M JList Datenstring erweitern und JList aktualisieren Java Basics - Anfänger-Themen 5
G JToolbar dynamisch erweitern Java Basics - Anfänger-Themen 8
G Menüeinträge dynamisch erweitern Java Basics - Anfänger-Themen 2
J Erweitern eines Tree-Pfades? Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben