Kurve clever in Punkte zerlegen


  • Mod

    Curvor schrieb:

    Ich muss diese "höhere" Kurve für ein anderes Dateiformat in eine Punktkette konvertieren.

    Und dieses Format, wenn man es wieder interpretiert, wie geht das? Werden da einfach stumpf Linien durch die Punkte gezogen?



  • Ja, da werden dann einfach die Punkte mit Linien verbunden.

    Wieso stellt ihr ständig neue Fragen, die gar nix mit der Kernfrage zu tun haben? Is doch letztlich total egal, WIESO ich Punkte brauche. Ich muss die Linien/Kreis/Spiral Kurve eben in Punkte zerlegen! 🙄


  • Mod

    Curvor schrieb:

    Wieso stellt ihr ständig neue Fragen, die gar nix mit der Kernfrage zu tun haben? Is doch letztlich total egal, WIESO ich Punkte brauche. Ich muss die Linien/Kreis/Spiral Kurve eben in Punkte zerlegen! 🙄

    Du kannst dir wirklich nicht vorstellen, wozu diese Gegenfragen gut sind? Hast du denn nicht selber über das Problem nachgedacht?

    Wie dir vielleicht auffällt, hast du deine Kurve schließlich bereits als eine Menge Punkte vorliegen, nämlich die Punkte, wo Linen-, Kreis- und Spiralsegmente ineinander übergehen. Das wäre nämlich eine mögliche Art, eine Kurve sehr clever in Punkte zu zerlegen. Das mussten wir dir also erst aus der Nase ziehen, dass es diese Methode nicht sein soll. Und auch keine der vielen anderen cleveren Möglichkeiten, sondern anscheinend die allereinfachste. Das geht alles nicht aus deinem Eingangsbeitrag hervor. Zudem kann man durch das Wissen, dass deine Kurve jetzt bereits als Linen-, Kreis- und Spiralsegmente gegeben ist, auch ganz einfache Abkürzungen bei der Umwandlung erkennen. Beispielsweise kann man schließlich alle Linien unberührt lassen, wenn das Zielformat sowieso auf Linien basiert. Und wenn man weiß, dass alle Kurven entweder Kreise oder Spiralen sind, dann weiß man eine Menge über das mögliche Krümmungsverhalten und kann dieses Wissen nutzen.
    Wenn deine Kurve hingegen anders gegeben wäre, dann könnte man vielleicht ganz andere Dinge nutzen oder hätte ganz andere Einschränkungen.

    Deshalb stellen wir Gegenfragen.



  • Und auf meine ursprüngliche Frage hat nach wie vor niemand eine Antwort gegeben. Kann geschlossen werden. Hab in einem anderen Forum eine hilfreiche (!) Antwort bekommen.



  • Also ich kann die Reaktion des OP voll und ganz nachvollziehen.



  • Curvor schrieb:

    Hab in einem anderen Forum eine hilfreiche (!) Antwort bekommen.

    Wirklich? Find zu dem Thema nichts bei Google aus der letzten Woche...



  • Mein Vorschlag:
    Du hast also Geradensegmente, Kreissegmente und Spiralsegmente.

    - Alle Berührungspunkte zwischen den Segmenten werden übernommen. Das ist wichtig, wenn die Quelle einen absichtlichen Knick macht, so wollen wir genau folgen und ihn nicht verrunden. Wenn die Quelle den Kreis genau an die Gerade anschmiegt, wollen wir so genau bleiben, wie Gerade und Kreis es darstellen können. Gleiche Abstände fallen dann schonmal weg.

    - Geradensegmente erzeugen keine weiteren Punkte. Auch ein Grund gegen gleiche Abstände.

    - Kreissegmente: Es war es früher üblich, in der Cumputergrafik Kreise durch 72 Geraden am Umfang darzustellen, man sagte, ab 72 sei es rund genug, um nicht aufzufallen. Machen wir es auch so. Den Öffnungewinkel des Kreissegments mal 5 rechnen und aufrunden, dann hat man die Gradzahlen wo ich die Punkte setzen würde und dann isses wohl glatt genug.

    - Spiralsegmente: Genauso! Wo der "Radius" kleiner ist, kommen durch die gleichen Winkelabstände automatisch mehr Punkte. Und es ist insofern genausogut wie die Glätte am Kreissegment, weil ich die Spirale abschnittweise betrachtet wie einen Kreis sehe.

    ps: Die Fragen waren doch nötig. Anderenfalls hätte ich hier nur ein paar Allgemeinplätze brummeln können: adaptive Verfahren mit noch zu erstellenden Heuristiken, Approximationen,…

    ~Und dann wäre noch die Frage, ob die Linienzüge beliebig vergrößert werden können sollen, wie die hübsch geschwungen Kanten an Buchstaben. Wenn ja, wäre es hiermit fertig. Wenn nein, könnte man bei sehr kleinen Radien von der 72 runtergehen, im Bereich wo ein Kreisumfang aus 16 Pixels besteht, werden vielleicht auch 6 Randpunkte reichen.~

    Nathan schrieb:

    Curvor schrieb:

    Hab in einem anderen Forum eine hilfreiche (!) Antwort bekommen.

    Wirklich? Find zu dem Thema nichts bei Google aus der letzten Woche...

    Ich wäre auch recht neugierig, was die anderen vorgeschlagen haben.



  • Was macht ihr euch so viele Gedanken um eine unklar gestellte Aufgabe?

    Die Planer von Strassen- und Eisenbahntrassen kennen so etwas: Gerade, Kreis, Klothoide.
    Auf der Baustelle braucht man aber zum Abstecken der Trasse nur feste Abstände,
    schon wegen der Querschnitte und Mengenberechungen.

    Ich betrachte diesen Thread als praxisfern, solange wir den genauen Hintergrund nicht wissen.



  • Curvor schrieb:

    Wieso stellt ihr ständig neue Fragen, die gar nix mit der Kernfrage zu tun haben? Is doch letztlich total egal, WIESO ich Punkte brauche. Ich muss die Linien/Kreis/Spiral Kurve eben in Punkte zerlegen! 🙄

    Du hast geschrieben, dass du die Kurve "clever" in Punkte "zerlegen" willst. Eine Kurve hat in der Regel unendlich viele Punkte. Was du mit "clever" und mit "zerlegen" meinst ist mir von Anfang an nicht klar gewesen. Darum die Fragen. Aber bei so einer Reaktion habe ich auch keine Lust, Zeit für dich aufzuwenden. Das Thema ist für mich beendet.



  • 🙂


Anmelden zum Antworten