![]() |
Polygone schneiden
moin, moin,
stehe wieder einmal auf den Schlauch. Suche eine Funktion wie man 2 Polygone addiert und 2 Polygone subtrahiert. Bei der Subtraktion können dabei mehrere Polygone rauskommen, wenn ich z.B. Ein U in der Mitte waagerecht mit einen Balken schneide. :cry: |
AW: Polygone schneiden
Was man da zunächst mal braucht ist eine function, die
![]() |
AW: Polygone schneiden
Leider ist dieses nur die habe Miete.
Stell Dir vor, Du legst zwei Polygone übereinander welche eine L Form haben und die sollen Subtrahiert IIII IIIIIIIIII IIII I I I Poly2 I I I I I IIIIIII I I I I I - I I = I I I IIIIIII I I I III I Poly1 I I I I I IIIIIIIIII IIII IIIIII oder addiert werden IIII IIIIIIIIII IIIIIIIIII I I I Poly2 I I I I I IIIIIII I I IIII I I I + I I = I I I I I IIIIIII I I I IIII I I Poly1 I I I I I IIIIIIIIII IIII IIIIIIIIII :( |
AW: Polygone schneiden
Zitat:
|
AW: Polygone schneiden
Das ist nicht mal eben so zu beantworten. Wenn du bereit bist, dich einzuarbeiten: vor langer Zeit habe ich sowas in der Art mal für die Klasse TGLMultiPolygon in
![]() |
AW: Polygone schneiden
Liste der Anhänge anzeigen (Anzahl: 1)
Habe gerade gesehen, dass die Skizze nicht OK ist also
|
AW: Polygone schneiden
Das wird vermutlich wirklich nicht mal eben schnell gemacht sein. Ich habe auch seit Monaten (arbeite aber nur selten daran) sowas ähnliches in Arbeit, wobei es bei mir etwas anders ist: Ich will eigentlich ein Polygon in Dreiecke zerlegen – aber da ich auch Polygone unterstützen möchte, die sich selbst schneiden, habe ich da ein ähnliches Problem.
Vielleicht ist es hilfreich, sich vorher mal anzusehen, wie überhaupt definiert ist, ob ein Punkt sich innerhalb eines Polygons befindet. ![]() Dann kann man sich überlegen, was sich daran ändert, wenn man ein Polygon zu einem anderen hinzuaddiert – wie unterscheidet sich die Wirkung der Linien dieses Polygons? Skizzen auf Papier helfen immer. Noch ein Tipp: Es könnte helfen, ein Polygon nur als einen Haufen Strecken anzusehen und nicht als ein zusammenhängendes Gebilde – damit sind Polygone, die aus mehreren, getrennten „Inseln“ bestehen, kein Spezialfall mehr. Damit müsste man sich was zusammenbasteln können. |
AW: Polygone schneiden
Also die Antwort bezieht sich weniger auf Polygone als auf Schriften (sind aber auch Polygone). Ich hab mich mal dafür interessiert wie Schriften berechnet werden. So enthält der Buchstabe "B" drei Polygone, also das B ohne Öffnungen und die zwei Halbkreise. Hier hört es aber schon wieder auf mit den Polygonen. Diese werden in Pixel umgerechnet und - ich glaube mit XOR - berechnet. Wo nicht ist, ist False. Wo nur ein Polygon ist, ist True. Überschneiden sich zwei Polygone, ist an der Stelle wieder False. So führt jede neue Lage zum erneuten Wechsel der Farbe.
|
AW: Polygone schneiden
|
AW: Polygone schneiden
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz