AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Bitmap zu klein

Ein Thema von ErazerZ · begonnen am 30. Jan 2009 · letzter Beitrag vom 1. Feb 2009
Antwort Antwort
Benutzerbild von ErazerZ
ErazerZ

Registriert seit: 27. Mai 2005
Ort: Baden
315 Beiträge
 
Delphi 2007 Enterprise
 
#1

Bitmap zu klein

  Alt 30. Jan 2009, 18:19
Hey,
ich habe ein kleines Problem und zwar ich programmiere gerade einen MIDI sequenzer. Das Problem besteht darin das wenn ich alle Noten einlese, diese dann auf einem Bitmap zeiche (zuerst Hintergrund(Kästchen überall) und dann Noten drauf) dann kommt es bei langen Tracks zu fehlern weil die Breite des Images ist genauso groß wie ein Track lang ist (und das kann sehr lang sein) und wenn ich zum Beispiel ein Track lade der 3 Minuten lang ist dann erstelle ich ein ziemlich großes Bitmap was zu einem Fehler führt (nicht genügend Speicher). Ich habs schon versucht zum Beispiel zu divieren (zB TrackLength div 100 aber das ist auch nicht die Lösung weil die Noten dann zu klein sind).
Ja und ich wollte euch mal fragen ob ihr irgendwelche Vorschläge habts wie ich das am besten realisieren kann.
Direkt aufs Canvas zu Zeichnen ist doch ein bisschen anstrengend weil es ziemlich viele berechnungen sind und die performence dann nicht all zu optimal wäre.
Mein Idee wäre Shapes für die Noten und für den Hintergrund selber zeichnen aber ob das so gut ist. Wenn ich z.B. 300 Noten habe dann wären das 300 Objekte was mir auch viel erscheint.
Mein Noten Editor soll so ungefähr aussehen: http://willydavidk.kittsplace.com/gr...FL/boobass.JPG
Ich hoffe jemand kann mir weiter helfen
  Mit Zitat antworten Zitat
worker
(Gast)

n/a Beiträge
 
#2

Re: Bitmap zu klein

  Alt 30. Jan 2009, 18:24
Ich gehe nicht davon aus, dass der ganze Track komplett im Blickfeld des Users sein muss.

Warum also nicht partiell einlesen und zeichnen?
  Mit Zitat antworten Zitat
Benutzerbild von ErazerZ
ErazerZ

Registriert seit: 27. Mai 2005
Ort: Baden
315 Beiträge
 
Delphi 2007 Enterprise
 
#3

Re: Bitmap zu klein

  Alt 30. Jan 2009, 18:36
Nein aber ich hab mir gedacht das es möglich sein sollte das man gleich scrollt und somit die Noten angezeigt werden. Funktioniert aber eh wunderbar bis auf das eine das ich ein TImage/Bitmap benutze und dass ich da nicht eine unbegrenze größe habe (was ja klar ist). Und ausserdem bekomme ich die Noten alle aufeinmal in einer funktion und die zeichne alle aufeinmal auf. Es wäre schon anstrengender das zu teilen und dann zu zeichnen aber naja, falls es keine anderen Lösungsvorschläge gibt dann müsst ich das doch so machen.
  Mit Zitat antworten Zitat
worker
(Gast)

n/a Beiträge
 
#4

Re: Bitmap zu klein

  Alt 30. Jan 2009, 19:38
[OT]
Und beschäftige Dich mal mit Absätzen; Deine Texte sind schwer zu lesen.
[/OT]
  Mit Zitat antworten Zitat
Benutzerbild von ErazerZ
ErazerZ

Registriert seit: 27. Mai 2005
Ort: Baden
315 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: Bitmap zu klein

  Alt 30. Jan 2009, 20:09
[OT]

Werde ich machen.


Danke,


worker.

[/OT]
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.029 Beiträge
 
Delphi 12 Athens
 
#6

Re: Bitmap zu klein

  Alt 30. Jan 2009, 20:33
du könntest auch nur den aktuell sichtbaren Teil auf eine PaintBox zeichnen zusammen mit 'ner ScrollBar könntest du dir die Anfangsposition berechnen und dann ab da nur diesen Teil ausgeben.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Rudirabbit

Registriert seit: 27. Sep 2006
111 Beiträge
 
#7

Re: Bitmap zu klein

  Alt 30. Jan 2009, 20:34
@ErazerZ: Ich hätte das Problem auch so versucht zu lösen.
Teste mal tbitmap32 von der Graphics32 Kompo

Gruß Rudi
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.029 Beiträge
 
Delphi 12 Athens
 
#8

Re: Bitmap zu klein

  Alt 30. Jan 2009, 20:43
Ach ja, notfalls könnts du auch mehrere BitMaps erstellen und dieser hintereinander anzeigen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von ErazerZ
ErazerZ

Registriert seit: 27. Mai 2005
Ort: Baden
315 Beiträge
 
Delphi 2007 Enterprise
 
#9

Re: Bitmap zu klein

  Alt 30. Jan 2009, 21:46
Danke, Graphics32 werd ich wahrscheinlich eh benützen aber das mit Bitmaps hab ich auch versucht nur dacht ich mir vielleicht wenn ich 300 kb datei lade und das 11 oktave mal sagen wir 40 wäre auch viel.
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#10

Re: Bitmap zu klein

  Alt 1. Feb 2009, 00:31
Naja so schwer ist das an sich doch nicht? Statt einfach alles zu zeichnen implementierst du eine Funktion die von Zeitpunkt A bis zum Zeitpunkt B die Noten auf ein TBitmap zeichnet. Nun ruft die "alte" Funktion diese mit den Parametern 0 bis Länge des Tracks.

Und ansonsten baust du dir eine Scrollbar hin welche sich beim bewegen meldet und die Bitmap neu zeichnen lässt.

MfG
xZise
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz