Einfaches Malprogramm

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Chris79
Beiträge: 2
Registriert: 12.07.2010 20:00

Einfaches Malprogramm

Beitrag von Chris79 »

Hallo,
ich habe bereits die Suchfunktion bemüht , aber bisher nur herausgefunden was NICHT geht, z.B. die Linienstärke beim Zeichnen (ohne GDI zu nutzen) einzustellen.

Mein Vorhaben ist, ein SEHR rudimentäres Malprogramm ohne Menüballast für ein behindertes Kind zu coden, habe mir dazu einen Touchscreen mit Mausemulation besorgt, damit es mit dem Finger malen kann.
Generelle Programmierkenntnisse habe ich.

Hier ein kleines Mockup:
Bild

Die zwei Hauptprobleme, die ich habe:

- Freihand-Malen mit verschiedenen Strichstärken
- Aufziehen von Linien, Rechtecken und Ellipsen mit verschiedenen Strichstärken
Dabei möchte ich plattformunabhängig bleiben

Habe schon im Codearchiv nach ähnlichen Programmen gesucht, wurde aber (noch) nicht fündig.

Über Tipps und Hinweise zu meinem Problem würde ich mich sehr freuen,
<)

Schon mal Danke im voraus,
Chris
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8812
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Einfaches Malprogramm

Beitrag von NicTheQuick »

Ich würde dir empfehlen mit einem Screen zu arbeiten, womit du schon mal Hardware-Unterstützung verwenden könntest.
Dort kannst du dir dann z.B. ein Sprite erstellen, was die Pinselform darstellen soll, wie z.B. der Kreis.
Bekommst du jetzt nacheinander zwei MOUSE_MOVE-Events, kannst du alle Koordinaten zwischen den beiden Position berechnen und dort dein Pinsel-Sprite darsellen.
Als eigentliches Bild würde ich ein weiteres Sprite verwenden und mittels UseBuffer() darauf malen und nur das anzeigen.
Chris79
Beiträge: 2
Registriert: 12.07.2010 20:00

Re: Einfaches Malprogramm

Beitrag von Chris79 »

Danke Nic,
sind die 2D-Zeichenfunktionen von PureBasic denn nicht geeignet für diese Anwendung? Gibt's nicht doch irgendeine userlib, die etwas 'aufgebohrte' Grafikfunktionen bietet (habe schon X2D ausprobiert, ist sehr eingeschränkt)?
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8812
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Einfaches Malprogramm

Beitrag von NicTheQuick »

Natürlich sind die 2DDrawing-Funktionen in ihrer Vielfalt gegenüber Sprites sehr beschränkt. Für dein einfaches Malprogramm würde 2DDrawing zwar auch reichen, aber je nachdem wie wild das Kind auf dem virtuellen Bild malt, kann es schnell zu verzögertem Zeichnen kommen, hoher CPU-Belastung oder zu eckigen statt runden Kurven (siehe MS Paint bei schneller Mausbewegung).

Das ist allerdings nur ein Vorschlag meinerseits, der allerdings aus viel Erfahrung rührt.

Mittlerweile bin ich aber auf etwas viel netteres gestoßen. Nämlich libavg zusammen mit Python. Aber das nur am Rande.
Antworten