Einzelnen Beitrag anzeigen

JayZ

Registriert seit: 14. Mai 2016
34 Beiträge
 
#7

AW: Zwei Vier-Ecke subtrahieren

  Alt 22. Feb 2017, 15:54
danke euch allen habs endlich hinbekommen auch wenns mehr ein if-gewurstel ist was ich eigentlich nicht ganz wollte aber mache dad noch basser also dann zeige ich das villeicht auch wenns mal beser aussieht hihi

das projekt ist für einen mikrocontroller zum effizenten zeichnen auf einem bildschirm, deswegen auch keine polygons.

Darf man fragen, für was du das Ergebnis am Ende benutzen willst? Geht es zufällig auch hier um Clipping bzw. Hit-Tests? Mich macht etwas stutzig, dass du dir - laut deinem Beispielbild - ggfls. mehrere Rechtecke wünschst und nicht ein einzelnes Polygon.


ich habe eine struktur die so ähnlich ist wie TRect einfach nur mit weniger funktionen:
Warum das Rad neu erfinden, die Datenmenge bzw. Speicherplatz wird durch weniger Methoden gegenüber TRect nicht geringer?
[/code]
Zum Schluss kann man die entstandenen Vierecke wieder zusammenfassen.
Als Ergebnis der Zusammenfassung können 0 bis 4 Vierecke enstehen.
weil ich dieses Rad leider nicht zur verfügung habe, und auch die restliche rtl nicht dadas ganze auf einem microcontroller läuft und schwer in 32kb zu packen ist also muss ich mir mein rad dafür selbst machen


Zitat von zacher:

Die Aufgabe lässt sich verallgemeinern, in dem man A in 8 Vierecke zerlegt (bzw. 9 mit B).
Je nach relativer Position von B, sind die einzelnen Vierecke vorhanden oder auch nicht.
[code]
*-----*-----*-----*
| | | |
| A1 | A2 | A3 |
| | | |
*-----*-----*-----*
| | | |
| A4 | B' | A5 |
| | | |
*-----*-----*-----*
| | | |
| A6 | A7 | A8 |
| | | |
*-----*-----*-----*
habe das nun nicht so gelöst klingt aber eigetnlich ganz gut. was wäre aber wenn B ausserhalb von A steht? sollte doch eigetnlich auch gehen wenn ich dann a imaginär erweitere oder?

danke euch nochmal =)

edited: ach ja eigetnlich ist der code in c++ aber uch finde delphi coder netter also frage ich lieber hier =) wenn jemand den hässligen c++ code will kann ich ihn ja posten hihi

Laut Grafik brauchst du als Ergebnis drei Vierecke. Dein Funktionsresult ist aber TViereck, welches ja nur ein Viereck abbildet.

Auch wenn das Ergebnis ein Viereck mit der Einbuchtung wäre, kannst du das ja garnicht in TViereck abbilden.
was mir durchaus bewusst =) habe ich geschrieben und auzch gar keine funktion gepostet die das zurückgeben soll nur eine funktion für die intersektion aber nicht differenz die ich ja haben wollte

liebe grüsse!

Geändert von JayZ (22. Feb 2017 um 15:57 Uhr)
  Mit Zitat antworten Zitat