Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Výpočet barevného spektra pomocí RGB

Dobrý den,

Chtěl bych se zeptat zda někdo zná algoritmus na vykreslení barevného spektra.

Budu mít okno, které má nějakou šířku a do té šířky vykreslím barevné pixely tak že vznikne barevné spektrum(duha). Rád bych použil pro každou barvu pixelu metodu RGB, potřebuji tedy poradit jak spočítat konkrétní barevný kanál.

Jde spíše o matematiku než o konkrétní program. Někde jsem jej míval, vím že se používala funkce SIN, leč program se mi někam ztratil a do googlu jsem zkusil asi 30 ruzných pojmů avšak nikde jsem nic nenašel, ale je možné že jsem špatně zadal otázku pro strejdu googla. Případně kdo by mi poradil jak by měl vypadat dotaz do googla.

Předem děkuji za pomoc.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Jak bych měl ten problém popsat důkladněji? Spektrum vypadá takto: spectrum.jpg, je to spektrum vi…
Persink163054 04.01.2016 23:23
Persink163054
Přesné viditelné spektrum pomocí RGB nedokážeš udělat. Pokud ti jde jenom o aproximaci, tak třeba zd… poslední
Wikan 05.01.2016 09:36
Wikan

Jak bych měl ten problém popsat důkladněji?

Spektrum vypadá takto:

spectrum.jpg, je to spektrum viditelného záření. Kdybych chtěl rentgenové, nebo infračervené, nepsal bych RGB.

Ten obrázek na odkazu má nějakou šířku (a je jedno zda v pixelech, twipech, bodech a pod.). Já sice mám hotový obrázek, ale chci jej vykreslit programem na plátno (DF7-canvas, VB6-formulář,...) protože každý jazyk má jinou syntaxi.

Takže mi jde jen o ten matematický vzorec jak spočítat kanály R,G,B.

Na odpovědních odkazech jsem mimo jiné našel i toto:

z:=Round(x*255/lp);
r:=Round(255*cos(z*pi/512));
g:=Round(255*cos(z* pi/255-pi/2)) ;
b:=255-r;

a to mi stačilo k tomu abych si prohlídl zdroják a zjistil že lp=šířka okna(šířka obrázku), pi je jasný a x je souřadnice v kreslení.

Bohužel tento kód nedělá uplně přesně to co chci na odkaze, ale zkouším na něm různé úpravy.

Proto prosím znovu o odpověd, zda někdo nemá hotový zdrojový kód v podobně uvedeném tvaru.

Díky.

Zpět do poradny Odpovědět na původní otázku Nahoru