Autor Beitrag
finchen
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Fr 10.06.22 14:12 
Hallo Zusammen,

ich bin kein Programmierer sondern viel eher im Industriedesign beheimatet. Im Zuge meiner Projektarbeit bin ich nun auf folgende Problematik gestoßen:

Ziel ist : Durch Eingabe eines SOLL-Wertes = FLÄCHENINHALT unterschiedliche geometrische Körpergrundformen ausgegeben zu bekommen,
welche aber ALLE den IDENTISCHEN FLÄCHENINHALT aufweisen.

Braucht es hierfür einen Zufallsgenerator oder kann man das in Phyton lösen oder einem anderen Programm ?
Am liebsten wäre mir, wenn es eine open source software zur Lösung dieses Problems gäbe?
Oder kennt jemand ein Programm aus anderen Fachbereichen oder Domänen, was genau diese Funktion ermöglicht ?

Der Algorithmus müsste zum einen
c) "zufällige geometrische Körper" also Dreieck, Rechtecke, Quader, Vielecke etc. erzeugen UND weiter
d) wäre es perfekt, wenn die Morphologie noch durch einen weiteren Rand-Parameter beeinflusst werden könnte...
mittels einer abhängigen Variablen bspw. bei einem Rechteck durch Eingabe EINER SEINTENLÄNGE das resultierende Rechteck präsentiert zu bekommen mit eben dem gewünschten Flächeninhalt.

Ich würde mich über Anregungen und Tipps freuen. DANKE

Viele Grüße
Christina
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Fr 10.06.22 19:59 
Was heißt hier "zufällige geometrische Körper"?
Bei mir sind Körper 3-dimensionale Objekte. Du sprichst aber von Dreiecken, Rechtecken (läuft eher unter Figuren) etc. aber nicht von Pyramide oder Würfel etc.

Meinst du eventuell den Flächeninhalt einer Seitenfläche eines Körpers? Das würde möglicherweise Sinn machen bei platonischen Körpern. Das wäre dann aber nicht wirklich "zufällig".
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8535
Erhaltene Danke: 473

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Sa 11.06.22 08:23 
Hallo und :welcome: in der Entwickler-Ecke,

Natürlich kann man da was programmieren, in wahrscheinlich jeder Programmiersprache. Und weil es für Flächen unendlich viele Möglichkeiten gibt, eine bestimmte Größe zu erreichen, ist sicherlich auch ein Zufallsgenerator sinnvoll, um ein paar solcher Flächen auszugeben - denn "alle" geht ja nicht. ;-)

Mit einem festen Parameter zu beginnen, ist sicherlich auch ein Ansatz. Beim Rechteck funktioniert das dann schon gut - durch Flächeninhalt und die Länge einer Seite ist das Rechteck klar definiert.
Beim Dreieck sieht das schon anders aus: Durch die Angabe der Grundseite ist dann zwar die Höhe festgelegt, aber das Dreieck ist noch lange nicht eindeutig definiert - die Winkel können immer noch beliebig gewählt werden.

Bei Vielecken wird es dann komplett wirr. Stell dir einfach mal die Möglichkeiten vor, ein ganz schmales, aber sehr sehr langes Rechteck in mehrere Teile zu zerschneiden, um es neu zusammenzulegen. Und damit hast du dann nicht einmal alle Vielecke, sondern nur Vielecke mit ausschließlich rechten Winkeln ...

Wenn du bei "einfachen" Formen bleiben willst, für die es kompakte Berechnungsformeln für den Flächeninhalt gibt, bleibt es relativ einfach. Setze deinen Flächeninhalt auf die vorgegebene Größe, wähle zufällig einen (zwei, drei, vier?) Parameter für die gewünschte Form und berechne aus der Formel für den Flächeninhalt den letzten Parameter.

_________________
We are, we were and will not be.
finchen Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: So 12.06.22 13:43 
@ Gausi: Vielen Dank für deine Nachricht

Ja, bei den einfachen geometrischen Figuren ist die "händische Methode" über die Formel des Flächeninhaltes wohl die pragmatisch sinnvollste.

Mir ist aber gerade noch eine andere Idee gekommen, WIE es ggf. möglich wird über die Verwendung eines Funktionsgraphen den Zusammenhang von Flächeninhalt und jeweils einer abhängigen mathematischen Variablen visuell zu indizieren. So könnte man sich für gleichförmige 2D Figuren zumindest IMMER die Berechnung sparen...
Im Prinzip lässt sich durch eine mathematische Abbildung dann sehr schnell die jeweils fehlende Variable "herauslesen"
zumindest gilt dies für quadratische oder gleichseitige Dreiecke bzw. gleichförmige Polygone mit einer Symmetrieachse bzw. gleichen Innenwinkeln..
Womöglich kann man auch mit Überlagerungen dieser Graphen arbeiten...
Wie wäre es bspw. mit der y-Achse als Indikator für Flächeninhalte und die X-Achse bildet die Wachstumsfunktion des Radius
(ausgehend vom Mittelpunkt (Schwerpunkt) der 2D Figur ?
Wenn man die Graphen dann übereinanderlegt ergeben sich Schnittpunkte... vllt. ein erster Methodenbaukasten ?

Ja, der Ansatz mit dem Rechteck ist natürlich auch eine gute Methode, wie es prinzipiell möglich wäre Polygone zu bilden...zumindest unregelmäßige mit speziellen Winkeln. (Auch in Abhängigkeit natürlich wie oft man das Rechteck zerschneidet und mit welcher Vorschrift die Teilfiguren wieder zusammengesetzt werden...
Ein Algorithmus müsste sich ja auch zwangsläufig ebenso an eine Vorschrift halten ;-) Vllt. müsste man hier auch mit Grenzwert-Bedingungen arbeiten, wenn es um MIN und MAX Werte der Variablen des Rechtecks geht.. um nicht ganz surreale Figuren zu erhalten :-)

Beschreibung des ["Idealzustandes"] :-)
Was mir ja visuell vorschweben würde , wäre ein Anwendung mit einem Schieberegler , der es ermöglicht die "abhängige Variable" zu skalieren mit einer visuellen Ausgabe in Echtzeit und einem Button links oder rechts mit dem es möglich ist die Anzahl der Winkel zu variieren oder die 2D Grundformen weiterzuschalten...

Ist es ggf. auch möglich mit einer Spiralartigen "Wachstumsfunktion" zu arbeiten? die mit Winkelfunktionen arbeitet ?

Bspw. bei einem Sechseck : ergeben die ersten 3 Innenwinkel (ausgehend von einem zentralen Knotenpunkt) zusammen 180 Grad
Und wenn es ein symmetrisches Polygon sein soll ergibt der summmierte Flächeninhalt dieser 3 Dreiecke der Hälfte des
SOLL-Wertes des gewünschten Flächeninhaltes?
Demnach würden die beiden Grundflächen der ersten beiden Dreiecke bei einem symmetrischen Polygon und einer Symmetrieebene
bereits als feste Grenzwerte definiert sein....(hier allerdings auch mit einem vorgegebenen Wertebereich, innerhalb dessen ein Zufallsgenerator die START Werte (Range VON BIS) auswählen kann.
Die 3 Dreiecke zusammengenommen würden dann "fast" der Hälfte der Grundfläche eines halbierten Kreises entsprechen mit einem bestimmten Radius der Länge X .. vllt. konnte man mit dem Algorithmus dann so vorgehen, dass man sagt, dass sich der erste Winkel des ersten Dreiecks im Bereich 30 Grad bis MAX 120 Grad bewegt und die Länge des "ersten Strahls" entspricht im Minimum 50% - MAX 150% des theoretischen "Kreisradius"
Ergibt sich dann nicht aus diesen Randbedingungen zwangsläufig die Länge des zweiten Strahls sowie der 2fehlenden und zugehörigen Innenwinkel(welcher dann jeweils die Form der zwei Dreiecke bildet, sodass man in Summe auf die 3 Dreiecke einer Symmetrieseite kommt, welche mit ihrem Flächeninhalt die Hälft des "gewünschten Flächeninhaltes" ergeben? oder bedarf es hierfür eines weiteren Work Arounds mit einer Grenzwertberechnung ?

Bei einer geraden Anzahl von Winkeln für Polygone würde man so vllt. zu einer Lösung kommen. Bei unregelmäßigen Vielecken müsste man wohl auch spiralförmig vorgehen und mit variablen Grenz oder Randbereichen für einzelne Dreiecke arbeiten und am Ende hätte man dann wieder die Situation die restliche Fläche zu Erfüllung des Flächeninhaltes mittels Zusammenbaus von 2 Dreiecken zu konstruieren.

Eine weitere "heuristische Möglichkeit" ist natürlich auch mittels verschiedener 2D Parkettierungen oder 2D Tessellationen zu arbeiten und
den Flächeninhalt der angrenzenden "Pflastersteine" als Prozentzahl zum "Hauptmosaikstein anzugeben... das wäre ein universeller Ansatz..

Ich hoffe, das war jetzt nicht zu kompliziert geschrieben.
Ist es möglich hier per Drag and Drop Bilder einzufügen ? Ansonsten kann ich das Schema oder die Methode auch gern nochmal grafisch illustrieren bzw. animieren..

@ Ralf Jansen: Danke für den Hinweis in Bezug auf die irrtümliche Begriffsbildung mit Körpern - es sind zunächst nur 2D Figuren gemeint ja. Bei 3D Körpern sind die Zusammenhänge nochmals komplizierter.
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: So 12.06.22 14:05 
Zitat:
Ist es möglich hier per Drag and Drop Bilder einzufügen ? Ansonsten kann ich das Schema oder die Methode auch gern nochmal grafisch illustrieren bzw. animieren..


Drag&Drop nein aber im Beitragseditor findest du unten rechts den "Dateianhang hinzufügen" Link. Und ja ein Bild könnte helfen :wink: