PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Suche *Edge 3D* Algorithmus.


Cord Worthmann
15.12.2005, 23:15
Moin Community,

ich suche dringend einen Algo, der mir aus einer gegebenen Grund/Hintergrundfarbe passende Edge 3D Schattierungen errechnet.
Für die beleuchteten Seiten sollen dies "LightShadowColor" u. "LightColor" sein, für die von der Lichtquelle abgewandten dementsprechend "DarkColor" u. "DarkShadowColor".

Der Hintergrund - für verschachtelte HTML DIVs soll ein 3D-Border-Effekt simuliert werden, der automatisch aus einer gegebenen Hintergrundfarbe erstellt wird.


Bin für jede Anregung dankbar!
:-)


Grüsse
Cord


Jan Krüger
16.12.2005, 00:01
Ist im Prinzip leicht: wähle für die hellere Kante den Mittelwert zwischen der Grundfarbe und weiß, für die dunklere Kante den Mittelwert zwischen der Grundfarbe und schwarz. Beispiel: für eine Grundfarbe von (HTML-Schreibweise) #808080 wählt man #c0c0c0 als helle und #404040 als dunkle Farbe.
Lässt sich z.B. dadurch variieren, dass man den gewählten Wert etwas absolut oder relativ vom Mittel verschiebt, wie z.B. eine Art "2/3-Wert": mit einem Grund von #707070 nimmt man #d0d0d0.
Spiel am besten ein bisschen damit rum und entscheide, ob's dir gefällt. :)

Cord Worthmann
16.12.2005, 00:25
Ist im Prinzip leicht: wähle für die hellere Kante den Mittelwert zwischen der Grundfarbe und weiß, für die dunklere Kante den Mittelwert zwischen der Grundfarbe und schwarz. Beispiel: für eine Grundfarbe von (HTML-Schreibweise) #808080 wählt man #c0c0c0 als helle und #404040 als dunkle Farbe.
Lässt sich z.B. dadurch variieren, dass man den gewählten Wert etwas absolut oder relativ vom Mittel verschiebt, wie z.B. eine Art "2/3-Wert": mit einem Grund von #707070 nimmt man #d0d0d0.
Spiel am besten ein bisschen damit rum und entscheide, ob's dir gefällt. :)

Das hatte ich mir auch schon überlegt und ausprobiert (über die RGBs), aber mitunter fallen die Ergebnisse nicht so prall aus, weil die charaktergebende Farbe mehr betont werden müsste.


Grüsse

Jan Krüger
16.12.2005, 00:57
Eine andere Möglichkeit wäre vielleicht, die RGB-Werte jeweils auf das Intervall [0,1) umzuskalieren und für die dunkle Seite mit 1,5 und für die helle Seite mit 0,5 zu potenzieren (auch diese Werte lassen sich natürlich anpassen). Danach skalierst du wieder auf [0,255] hoch und fertig.
Hab's nicht ausprobiert, aber das gibt vielleicht interessantere Ergebnisse.

eViL_oNe
16.12.2005, 09:36
vielleicht erreicht man evtl. bessere Ergebnisse, wenn man statt mit RGB oder CMYK mit Hue, Saturation und Luminance arbeitet?