KI Sanduhr-widget fuer QT

OP #8089560
Lesenswert?

Hello Possums,

Hier mal ein Beispiel fuer das was man mit KI so machen kann. Ich hab mal auf die schnelle ein Sanduhrwidget mit cooler Animation designen lassen. (das Foto bringt den fallenden Sand nicht so rueber)

Das waren insgesamt so 2h Arbeit. Es laeuft mit Qt5 und Qt6. Im Zip ist nur der Source, ihr braucht also eine QT Installation um dieses edle Meisterwerk nutzen zu koennen. .-)

Das ganze war ein iterativer Prozess mit ChatGPT, erst mal die Basisklasse erzeugen lassen, getestet und dann 5-6mal daran rum gemaekelt und Kleinigkeiten verbessert.

Im Source der Klasse hab ich dann nur noch eine Anpassung vorgenommen damit es auch mit QT5 laeuft und eine optische Kleinigkeit hin gebogen.

Und jetzt fragt euch mal wie lange wuerdet ihr ohne KI dafuer brauchen? Wuerdet ihr ueberhaubt so weit kommen oder schon auf halber Strecke mit einem "ist ja gut genug" aufgeben? .-)

Vanye

Angehängte Dateien:
OP #8089774
Lesenswert?

Sieht gut aus. Start drücken funktioniert bei mir aber nicht, man muss die Sanduhr gleich

Bei mir klappt start, dafuer haengt nach Ablauf der Zeit gerne noch ein Sandkorn in der Luft, dass dann mit jedem Druck auf Start ein bisschen weiter wandert.

Es sieht auf jeden Fall meditativ aus.

Mir uebrigens eine sinnvolle Anwendung eingefallen. Als Ziehzeit-App fuers Handy fuer den Tee.

Noch ein Nachtrag! Es war bei mir auch sehr faszinierend die Entwicklung durch zu fuehren und die Zwischenstufen zu testen. Ich hatte z.B mal eine wo erst der Sand in der Mitte der Sanduhr einfach so verschwunden ist und danach aus dem Nichts wieder rausgerieselt ist. Physikalisch vielleicht nicht so gut, sah aber cool aus. Auf jeden Fall lernt man mit so einem Spielchen eine Menge ueber KI und der Kommunikation mit ihr. Das Ergebnis ist am Ende nur so gut wie man ihr die Probleme und Wuensche schildern kann! Auch interessant das die KI selbst pro-aktiv Dinge anbietet. Sollte sie bei mir auch mehrmals einbauen das die Uhr zum starten rumgedreht wird, ich hab aber bewusst drauf verzichtet.

Vanye

: Bearbeitet durch User
#8089952
Lesenswert?

Vanye R. schrieb:

die sanduhr_1.html von claude funktioniert bei mir gar nicht

Was fuer ein Browser, bei mir geht es mit Vivaldi problemlos. Vanye

Firefox. Wenn ich auf Start drücke wird der obere Teil sofort leer dargestellt. Nach Klicken auf Umdrehen wird die Sanduhr auch komplett leer dargestellt. Jedes Mal läuft der Lüfter kurz hoch, d.h. CPU Leistung wird verbraten.

#8090044
Lesenswert?

Kai G. schrieb:

Hier mal eine Sanduhr mit Claude gemacht, angeblich mit echter Physik. Das ist der 2. Entwurf, beim ersten flossen die Sandkörner noch recht "unphysisch" nach unten :-)

Naja. Da ist zuviel Bewegung in der unteren Hälfte. Und das rumspringen der letzten Körner in der oberen Hälfte ist physikalisch auch unglaubwürdig. Aber sonst hybsch.

Ich mußte den Anhang übrigens speichern und dann das File neu laden, damit es funktioniert. Das liegt sicher daran, daß die Forensoftware den Header

1
content-type:text/plain

für das Attachment setzt.

#8090137
Lesenswert?

Ein klares "Naja".
Zunächst mal ist das Projekt eine interessante Anregung, also nix gegen den TO.

Aber an der Physik hapert es komplett. Warum bewegen sich die Sandkörner in der unteren Hälfte der Uhr bis runter zum Grund? Da bewegt sich in der Realität nichts mehr.
Sand hat einen sogenannten Schüttkegel. Den sollte man in der oberen Hälfte auch erkennen. Ebenso wie unten, wenn mehr und mehr Material runtergerieselt ist. Gerieselt! Nicht geplätschert!

Die KI behandelt den Sand wie eine Flüssigkeit. Keine Ahnung ob man das der KI erklären kann und sie das dann auch hinbekommt. Für mich ist es erst dann ein Erfolg.

#8090151
Lesenswert?

Hans W. schrieb:

Leben die Sandkörner, oder warum sind sie so zappelig? Mich erinntert die Dynamik spontan an Popcorn.

In der Physik-Engine ist wahrscheinlich so was wie "Kompressibilität" der Sandkörner eingebaut. Wenn nach dem rumdrehen der Sanduhr genau hinschaut, wabbelt das ganze etwas hoch und runter wie Gummibälle. Man müsste die Engine mal ein wenig genauer analysieren. Wenn ich es richtig sehe, sind die Gleichungen ja ausformuliert und es wird keine externe Lib geladen.

OP #8090215
Lesenswert?

Die Fragestellung ist ja was ist die Intention bei so einem "Projekt". Mir ging es darum zu sehen wie die Entwicklung mit der KI stattfindet. Also wenn man so will ist die KI hier der Entwickler und ich bin der Kunde der seine Wuensche aeussert. Und das war iterativ/agil. Wobei es interessant ist zu sehen wie die KI auf Wuensche reagiert und das man sich selbst zusammenreissen muss um gut/perfekt zu formulieren was man will. Ist ja auch sonst beim Kundenkontakt gerne ein Problem. :-D

Es faellt z.B bei meiner Version auf das ich keine Seitenstaebe an der Sanduhr habe. Das haette die KI mit Sicherheit hinzugefuegt wenn ich darum gebeten haette. Ist mir aber selbst erst beim betrachten von Kais Version bewusst geworden. (also mein Fehler)

Wenn man dagegen am Ende sowas wie "Nuetzlichkeit" erwartet dann waer das ein Widget das dem User auf nette Weise anzeigt das irgendeine Wartezeit ablaeuft. Da ist natuerlich physikalische Korrektheit vollkommen irrelevant. Ich wuerde sogar sagen das die springenden Sandkoerner da "cooler" sind. Unschoen bei Kais Loesung ist dagegen das die Zeit ablaeuft sobald das letzte Sandkorn durch durch Mitte gerieselt ist und das dann in der Luft stehen bleibt. Da erwartet man als User doch so etwas wie Schwerkraft. Faszinierend an Kais Loesung fand ich dagegen das Sandkornverhalten im Moment des umdrehens.

Bei Loesungen sind aber faszinierend bezueglich des geringen Entwicklungsaufwands. Keiner wuerde doch ernsthaft Entwicklungszeit in so einen Firlefanz stecken. Aber jetzt geht das auf einmal. Das wird IMHO einiges an Software aendern wie sie in Zukunft aussieht.

BTW: Noch etwas das ihr mal ausprobieren koennt. Ich hab gestern der KI ein laengeres Makefile fuer ein groesseres STM32 Projekt gegeben und gesagt, mach mal cmake/ninja draus. Erster Versuch gab noch ein Problem, dann eine Nachbesserung und laeuft. Dabei hat das Teil sogar ein script von mir im Makefile umgeschrieben.

Vorher:

1
criseis:~/sources/STM32L45x/Lora_Tx_RAK3172$ time make
2
arm-none-eabi-gcc --specs=nosys.specs -g -O2 -Wall -TSTM32L451RCTX_FLASH.ld usw...
3
arm-none-eabi-objcopy -O ihex template.elf template.hex
4
arm-none-eabi-objcopy -O binary template.elf template.bin
5
arm-none-eabi-size template.elf
6
   text    data     bss     dec     hex filename
7
  60328    2532    7304   70164   11214 template.elf
8

9
Ram   used:  7192 of 163840Bytes =  4.4%
10
Flash used: 63110 of 262144Bytes = 24.1%
11

12
real    0m2,543s
13
user    0m2,056s
14
sys     0m0,481s

Nachher:

1
criseis:~/sources/STM32L45x/Lora_Tx_RAK3172/build$ ninja clean
2
[1/1] Cleaning all built files...
3
Cleaning... 39 files.
4
criseis:~/sources/STM32L45x/Lora_Tx_RAK3172/build$ time ninja
5
[39/39] Linking C executable template.elf
6
   text    data     bss     dec     hex filename
7
  60328    2532    7304   70164   11214 template.elf
8

9
Ram   used:  7192 of 163840Bytes =  4.4%
10
Flash used: 63110 of 262144Bytes = 24.1%
11

12

13
real    0m0,352s
14
user    0m3,224s
15
sys     0m0,714s

Ziemlich cool oder?

Vanye

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren