AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Ein Bild mit einer Farbe multiplizieren?
Thema durchsuchen
Ansicht
Themen-Optionen

Ein Bild mit einer Farbe multiplizieren?

Ein Thema von Cyberstorm · begonnen am 23. Jan 2008 · letzter Beitrag vom 28. Jan 2008
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Cyberstorm

Registriert seit: 23. Okt 2003
159 Beiträge
 
Delphi 2010 Architect
 
#1

Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 19:40
Hallo.

ich möchte ein bild (tbitmap) mit einer farbe einfärben.

ich möchte sie aber nicht überblenden, sondern mit einem variablen faktor "multiplizieren".
also in diversen bildbearbeitungsprogrammen gibt es ja verschiedene modi, um bilder "übereinanderzupacken".

wie funktioniert rechnerisch multiplizieren bei einem bild?


wennich zum beispiel das nachfolgende bild miteinem grünton mischen will,
überblendeich esim moment nur (bild2) ich will aber (bild3) errechnen.

das ist der selbe farblayer (in bild2 und 3) mit 50%(soll im programm der faktor sein) transparenz nur einmal in photoshop mit "norma" und einmal mit "multiplizieren":

beim multiplizieren bleibt übrigens auch bei 100% noch was vom original übrig, beim normalen überblenden natürlich nur noch komplett die grüne farbe...

[edit=SirThornberry]Bilder in Anhang gepackt - Mfg, SirThornberry[/edit]
Miniaturansicht angehängter Grafiken
mult_131.jpg   blend_195.jpg   ori_829.jpg  
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 19:58
kannste nicht über das original bitmap n neues drauftun was leicht transparent ist. das zweite hat dann zum beispiel die farbe grün. wenn du was ganz anderes gemeint hast, sry!
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 20:06
Da steht doch, was er möchte. Die Farben multiplizieren und nichts transparent machen...
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 20:08
und warum macht dass was ch jetzt gemacht habe was anderes als das multiplizieren?
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Cyberstorm

Registriert seit: 23. Okt 2003
159 Beiträge
 
Delphi 2010 Architect
 
#5

Re: Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 20:10
sieh dir doch mal die beiden bilder an (normal und multiplizieren) dann enddeckst du sicherlich auch einen unterschied...
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#6

Re: Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 20:10
Weil dann das raus kommt, was oben bei "normal" steht.
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#7

Re: Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 20:12
Weil es etwas anderes ist, wenn man eine Farbe transparent dazu rechnet (Farbe1*(1-transparenz)+farbe2*transparenz), oder Farbe1*Farbe2.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#8

Re: Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 20:13
Ich gebe mal einen Link weiter, den heute morgen jemand gepostet hat (weiß nur leider gerade nicht mehr, wer ): http://www.aggpas.org/
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#9

Re: Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 20:20
In meinem Raytracer heist Multiplizieren Komponenten weise

D.h.

Orginalfarbe RGB => Trippel ( x,y,z) mit x,y,z in [ 0..1 ]

Dito mit Multiplicant RGB => Tripel ( a,b,c)

dann Neue Farbe = ( x*a*256,y*b*256,z*c*256)

Probier mal das .

So wie ich dich da Verstehe geht dein Wunsch aber mittels +

Neue Farbe = ( (x+a)*256,(y+b)*256,(z+c)*256)

du must die einzelwerte nur noch Begrenzen

also der Art

max(0,Min(255,round((x+a)*255))) ...
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01
  Mit Zitat antworten Zitat
Cyberstorm

Registriert seit: 23. Okt 2003
159 Beiträge
 
Delphi 2010 Architect
 
#10

Re: Ein Bild mit einer Farbe multiplizieren?

  Alt 23. Jan 2008, 20:54
hi.

du hast einen raytracer programmiert?
sehr interessant! (ich studiere 3d animation) .

vielen dank, werde ich morgen mal ausprobieren, bin jetzt leider nicht mehr zuhause.

im ersten fall kommen doch immer werte über 256 raus (außer bei 0, 0). wie ist das dann zu verstehen?
also wenn da was weis ich 430 herauskommt?
das hat mich auch verwirrt und davon abgehalten die farben einfach zu multiplizieren.

in den anätzen fehlt nur irgendwie der faktor, mit dem ich die ganze geschichte von 0-100% regeln kann?
kannst du mir einen tipp geben, wie das zu implementieren wäre?

liebe grüße
konrad
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


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 06:18 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