Jump to content

[Delphi]Kolorowanie


5corpio

Recommended Posts

Sprawa wygląda tak chcę zrobić takie powiedzmy kolorowanie pędzlem potrzebuje tego do edytora map ;) Chodzi o to, że mam Punkt pomalowany już na jakiś kolor i kolor pędzla i teraz chcę zrobić tak by przy każdym następnym naciśnięciu myszki na "wierzchołku" kolor "zbliżał" się do tego wybranego.

 

Pomyślałem, że wystarczy zinterpolować oba kolory no i spoko tylko problem polega na tym jak wyliczyć "ten stopień/krok" wymagany przy interpolacji ?

Ot taka mini-strona moja po godzinach :)http://www.wnetrzekuchni.pl

Link to comment
Share on other sites

Witam!

 

Interpolacja powinna wystarczyć.

KODwynik = Interpolacja_Liniowa(A,B,t);

 

t jest przedziału od 0 do 1, a wiemy że im większa różnica pomiędzy A i B to tym wolniej zmieniamy t tak ?

 

policz sobie dystans na jakim interpolujesz

KODL = odleglosc(A, B);

 

Trzymany przycisk

t = t+L*wsp_czasowy;

jesli t > 1-epsilon to t=1;

 

 

Teraz pozostaje dobór wsp_czasowy można wybrać jakąś stałą liczbę wtedy zmiana koloru będzie równomierna

ale można go zwiększać w każdym następnym pozytywnym teście wciśniecie przycisku wtedy dostaniemy coraz szybszą zmienię koloru do docelowego.

 

To tylko moja prosta propozycja można tez użyć innej metody interpolacji np kubicznej i przestawienie przedziałów interpolacji zależnie od potrzeb podobnie jak go rozciągnęliśmy za pomocą długości...

Pozdrawiam

Spider

www.spider.dathox.com :)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...