LinkedList, GeneralPath

Status
Nicht offen für weitere Antworten.

blablaman

Mitglied
Hallo,

ich habe hier eine Frage.
Und zwar habe ich eine LinkedList von GeneralPath Objekten und möchte daraus Polygon[] erhalten.
Jedes Polygon-Objekt besteht aus einem Point[].
Ich gehe die LinkedList durch und bearbeite jedes GeneralPath Objekt. Mein Problem ist jetzt die Punkte aus jedem GP Objekt in ein Point[] zu überführen und mit dem PathIterator kann ich erstmal noch nichts anfangen.
Könnt ihr mir einen Ansatz geben.
Gruß


blablaman
 

blablaman

Mitglied
blablaman hat gesagt.:
Hallo,

ich habe hier eine Frage.
Und zwar habe ich eine LinkedList von GeneralPath Objekten und möchte daraus Polygon[] erhalten.
Jedes Polygon-Objekt besteht aus einem Point[].
Ich gehe die LinkedList durch und bearbeite jedes GeneralPath Objekt. Mein Problem ist jetzt die Punkte aus jedem GP Objekt in ein Point[] zu überführen und mit dem PathIterator kann ich erstmal noch nichts anfangen.
Könnt ihr mir einen Ansatz geben.
Gruß


blablaman


bitte nochmals um Hile

ich habe koordinaten in ein generalpath gespeichert und möchte diese nun wieder herauslesen und in ein point[] überführen
kann jemand mir kurz erklären, ob man gespeicherte koordinaten aus einem generalpath herausholen kann ?
der ansatz ist bei mir ungefähr so, aber weiter komme ich auch nicht:

LinkedList pointsList = new LinkedList();
for(PathIterator pathItr = path.getPathIterator(at); !pathItr.isDone(); pathItr.next()){
// was soll hier rein
pointsList.add(p);
}
Point[] points = pointsList.toArray.....

oder ist das völliger blödsinn, was ich mache ?
gruß


blablaman
 
S

SlaterB

Gast
erzähl doch mal, wie du die Punkte da reinbekommst,
dort wird vielleicht auch ein Rückweg vorhanden sein,

GeneralPath selber scheint dagegen nix mit Punkten am Hut zu haben,

außer vielleicht, man verwendet
PathIterator getPathIterator(AffineTransform at)
mit einer bestimmten Transformation, die die Punkte genau wie sie sind zurückgibt ;)
 

blablaman

Mitglied
Hallo,

also der GeneralPath wird bei mir wiefolgt erstellt:
eine Datei wird gelesen und die Koordinaten werden mit moveTo(x,y) gespeichert.

Code:
GeneralPath pointsLocal = new GeneralPath(GeneralPath.WIND_EVEN_ODD, pointCount);
float x = Float.parseFloat(fields[1]);
float y = Float.parseFloat(fields[2]);
pointsLocal.moveTo(x,y);
for (int i=3; i<fields.length; i+=2) {
      pointsLocal.lineTo(Float.parseFloat(fields[i]),
                                      Float.parseFloat(fields[i+1]));
}
pointsLocal.closePath();

ich würde gern wissen, ob es ne Möglichkeit gibt, diese Koordinaten rauszuholen.
Bis jetzt erscheint mir nur die Möglichkeit beim Einlesen aus der Datei die Koordinaten zusätzlich in einer Liste abzuspeichern.
Vllt könnt ihr mir da mit pfiffigen Ideen weiterhelfen :).

Gruß
 
S

SlaterB

Gast
tatsächlich, die ganze Klasse voller Punkte,
na ich hab jedenfalls auf die Schnelle kein getter gefunden,
auch getCurrentPoint() scheint nicht zur Mitarbeit zu bewegen zu sein,

zwei Not-Vorgehensweisen, eine unsauberer als die andere:

Code:
import java.awt.geom.AffineTransform;
import java.awt.geom.GeneralPath;
import java.lang.reflect.Field;
import java.util.Arrays;


public class Test
{
    public static void main(String[] args)
        throws Exception
    {
        GeneralPath pointsLocal = new GeneralPath(GeneralPath.WIND_EVEN_ODD, 2);
        pointsLocal.moveTo(5, 6);
        pointsLocal.lineTo(20, 21);
        pointsLocal.lineTo(23, 2);

        MyAffineTransform t = new MyAffineTransform();
        pointsLocal.transform(t);
        float[] points = t.getPoints();
        System.out.println(Arrays.toString(points));

        // -------------

        Field f = GeneralPath.class.getDeclaredField("pointCoords");
        f.setAccessible(true);
        float[] points2 = (float[])f.get(pointsLocal);
        System.out.println(Arrays.toString(points2));
    }
}

class MyAffineTransform
    extends AffineTransform
{
    private float[] points;

    public void transform(float[] srcPts, int srcOff, float[] dstPts, int dstOff, int numPts)
    {
        this.points = srcPts;
    }

    public float[] getPoints()
    {
        return this.points;
    }

}
 

blablaman

Mitglied
Hallo,

vielen Dank für den Code, das hilft mir schonmal viel viel weiter :).
Eine dumme Frage hätte ich noch bezüglich pointsLocal
Wenn ich pointsLocal.closePath() mache, erscheinen immer noch die letzten zwei Werte bei der Ausgabe
0.0 und 0.0.
Wie kriege ich sie weg ?
Gruß

blablaman
 
S

SlaterB

Gast
die Länge des Arrays dürfte immer eine Potenz von 2 sein,
2, 4, 8, 16, 32, usw.,
das ist ein effizientes Verfahren um eine vorher unbekannte Anzahl von Punkte zu speichern

dafür gibts ja noch die Info numPts,
bei MyAffineTransform bekommst du sie,
oder per Reflection das Feld numCoords auslesen
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A LinkedList implementieren Java Basics - Anfänger-Themen 32
M Wie kann ich den Index i von einer LinkedList überprüfen? Java Basics - Anfänger-Themen 36
Düsseldorf2002 Datentypen Verschachtelte LinkedList Java Basics - Anfänger-Themen 5
Düsseldorf2002 Datentypen Zwei dimensionale LinkedList Java Basics - Anfänger-Themen 8
B Warteschlange erstellen mit LinkedList ? Java Basics - Anfänger-Themen 6
U Objekte in LinkedList löschen und editieren Java Basics - Anfänger-Themen 14
G Java LinkedList remove Methode Java Basics - Anfänger-Themen 5
G Java LinkedList Java Basics - Anfänger-Themen 6
U Objekte in einer LinkedList sortieren Java Basics - Anfänger-Themen 5
S Eigene LinkedList Klasse Java Basics - Anfänger-Themen 4
S Mit einer LinkedList vorwärts und rückwärts iterieren Java Basics - Anfänger-Themen 6
S Endlosschleife beim Ausgeben einer LinkedList Java Basics - Anfänger-Themen 2
G Java LinkedList Java Basics - Anfänger-Themen 3
B LinkedList add-Methode Java Basics - Anfänger-Themen 10
F Windows in LinkedList registrieren Java Basics - Anfänger-Themen 3
A Hilfe, LinkedList Java Basics - Anfänger-Themen 2
H Knoten-Reihenfolge einer LinkedList invertieren Java Basics - Anfänger-Themen 11
H linkedlist generische klassen Java Basics - Anfänger-Themen 169
O Hashmap, ArrayList, LinkedList Java Basics - Anfänger-Themen 7
P Quellcode LinkedList Java Basics - Anfänger-Themen 2
F Collection Aufgabe mit LinkedList Java Basics - Anfänger-Themen 3
N Hilfe bei verknüpfter Liste - Linkedlist Java Basics - Anfänger-Themen 11
P Datentypen LinkedList: Kopie behält Referenz? Java Basics - Anfänger-Themen 3
C ArrayList vs LinkedList vs ? Java Basics - Anfänger-Themen 15
C LinkedList vs. ArrayList Java Basics - Anfänger-Themen 15
O LinkedList zu ArrayList Java Basics - Anfänger-Themen 4
M LinkedList elemente löschen Java Basics - Anfänger-Themen 2
L Problem mit LinkedList Java Basics - Anfänger-Themen 3
F In LinkedList einen Wert ersetzen oder neu einfügen Java Basics - Anfänger-Themen 7
P Hashmap anstatt LinkedList? Java Basics - Anfänger-Themen 6
TechGirl LinkedList - kurze allgemeine Frage Java Basics - Anfänger-Themen 17
B generische LinkedList nach Häufigkeit der Elemente füllen Java Basics - Anfänger-Themen 6
L LinkedList Comparable < > MEHRFACH implementieren? Java Basics - Anfänger-Themen 3
S LinkedList mit Input vergleichen. Java Basics - Anfänger-Themen 5
C Bei der LinkedList auf Palindrom überprüfen Java Basics - Anfänger-Themen 4
F Element aus LinkedList löschen Java Basics - Anfänger-Themen 3
A LinkedList: Probleme beim Auslesen Java Basics - Anfänger-Themen 2
T Collections LinkedList<LinkedList<T>> - Implementierung Java Basics - Anfänger-Themen 10
S Jfreechart mit LinkedList befüllen Java Basics - Anfänger-Themen 1
S JTable LinkedList <Objekt> befüllen Java Basics - Anfänger-Themen 1
K LinkedList aus Arrays ( Lösungsraum Mastermind ) Java Basics - Anfänger-Themen 5
Z Compiler-Fehler LinkedList Fragen Java Basics - Anfänger-Themen 4
K Methoden Probleme mit LinkedList.remove(object) Java Basics - Anfänger-Themen 1
Farbenfroh int in LinkedList einsortieren Java Basics - Anfänger-Themen 4
W Klassen LinkedList funktioniert nicht Java Basics - Anfänger-Themen 6
X LinkedList - Index eines Objekts Java Basics - Anfänger-Themen 2
S Strings in eine LinkedList schreiben und auslesen? Java Basics - Anfänger-Themen 4
D Sortieren von int Werten von Objekten in einer LinkedList, kann nicht auf int Werte zugreifen Java Basics - Anfänger-Themen 3
F Eigene LinkedList - toString Java Basics - Anfänger-Themen 10
T Datentypen gleichmäßiges mischen von 2 LinkedList Java Basics - Anfänger-Themen 3
S Dateien/LinkedList/StringBuffer - SOrtierung klappt nicht so ganz Java Basics - Anfänger-Themen 2
J Datentypen Array von einer LinkedList Java Basics - Anfänger-Themen 5
R LinkedList Java Basics - Anfänger-Themen 8
J Per I/O Streams in LinkedList oder ArrayList schreiben/lesen Java Basics - Anfänger-Themen 6
B LinkedList remove Java Basics - Anfänger-Themen 5
J statische Methoden auf eine LinkedList initialisieren? Java Basics - Anfänger-Themen 5
G Hausaufgabe mit LinkedList und LinkedListStack verstehen Java Basics - Anfänger-Themen 6
N LinkedList-checkForComodification Java Basics - Anfänger-Themen 11
N LinkedList Java Basics - Anfänger-Themen 17
P LinkedList sortieren Java Basics - Anfänger-Themen 20
P LinkedList - Stack ... grundlegende Frage Java Basics - Anfänger-Themen 5
Z Erste Schritte LinkedList Werte abfragen und vergleichen Java Basics - Anfänger-Themen 3
B SUCHE: Threadsafe LinkedList Java Basics - Anfänger-Themen 10
Binary.Coder Wie linkedlist für Djikstra nutzen? Java Basics - Anfänger-Themen 6
M Arrays in LinkedList Java Basics - Anfänger-Themen 4
R Collections Probleme mit contains()-Methode [LinkedList] Java Basics - Anfänger-Themen 5
G Collections.binarySearch(LinkedList): cannot find method Java Basics - Anfänger-Themen 6
M LinkedList aktuelle position Java Basics - Anfänger-Themen 3
G Frage zu LinkedList Java Basics - Anfänger-Themen 15
H Dynamische Bindung mit Interfaces und LinkedList Java Basics - Anfänger-Themen 7
I LinkedLIst / ArrayList Konstruktor Java Basics - Anfänger-Themen 4
B Collections RandomAccessfile & Linkedlist Java Basics - Anfänger-Themen 4
S Speichermangel ArrayList/LinkedList Java Basics - Anfänger-Themen 3
V LinkedList size() Java Basics - Anfänger-Themen 2
darekkay Datentypen HashSet bzw. LinkedList mit Werten initialisieren Java Basics - Anfänger-Themen 3
D Probleme mit LinkedList Java Basics - Anfänger-Themen 6
L LinkedList vorgänger Knoten zurück geben Java Basics - Anfänger-Themen 4
S LinkedList indexOf() - geht des irgendwie schneller? Java Basics - Anfänger-Themen 23
S LinkedList<String[]> filtern und sortieren Java Basics - Anfänger-Themen 9
W LinkedList Java Basics - Anfänger-Themen 12
S Frage zum speichern der Daten in einer LinkedList Java Basics - Anfänger-Themen 2
D Fenster in LinkedList verwalten Java Basics - Anfänger-Themen 2
C HashMap mit LinkedList Java Basics - Anfänger-Themen 5
S Datentypen LinkedList Konstruktor, add Alternative Java Basics - Anfänger-Themen 2
truesoul LinkedList Problem Java Basics - Anfänger-Themen 6
M Java Generics LinkedList Java Basics - Anfänger-Themen 5
H LinkedList Element an Stelle x ausgeben? Java Basics - Anfänger-Themen 5
D LinkedList aufrufe Java Basics - Anfänger-Themen 3
S Problem mit ObjectInputStream beim Einlesen von LinkedList Java Basics - Anfänger-Themen 3
S Serialized LinkedList aus Datei Laden Java Basics - Anfänger-Themen 15
S LinkedList Java Basics - Anfänger-Themen 2
M LinkedList in anderer Klasse nutzen Java Basics - Anfänger-Themen 4
L LinkedList sortieren Java Basics - Anfänger-Themen 5
L heap space, LinkedList umspeichern Java Basics - Anfänger-Themen 15
H LinkedList mit Strings Exception Java Basics - Anfänger-Themen 3
S IndexOutofBoundsException bei linkedlist Java Basics - Anfänger-Themen 5
B Fehlersuche bei LinkedList Java Basics - Anfänger-Themen 3
B LinkedList - Berechnung des Produkts Java Basics - Anfänger-Themen 6
S Sortierte LinkedList nach Variablen durchsuchen und nicht nach INDEX Java Basics - Anfänger-Themen 6
B Unterschied ArrayList und LinkedList Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben