![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Update 2
--------------- W paczce takze UnitTesty (SimpleTest) dla obu klas. Co mozna nia zrobic? - przejscie tonalne miedzy dwoma kolorami, - inwersje koloru - pobranie wartosci koloru jako tablice intow, lub wersji HTML dla kazdej skladowej osobno lub dla calego koloru, - (brakuje fadeTo) wymaga php5 http://northslope.lap.pl/dev/Color/
Ten post edytował dr_bonzo 7.02.2006, 13:37:46 -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Tak przygladam sie Twojej klasie i nie bardzo moge zrozumiec koncepcje. Aby stworzyc gradient wywolujesz metode obiektu Color i jako parametr przekazujesz jej obiekt bedacy inna instancja tej samej klasy.
Nie lepiej byloby stworzyc osobna klase gradient do ktorej przekazywalbys dwa obiekty klasy Color? To samo tyczy sie metody fadeTo. Pod wzgledem koncepcyjnym o wiele bardziej podoba mi sie klasa stworzona przez FiDO http://forum.php.pl/index.php?showtopic=21562. Dodajesz kolory do obiektu i pobierasz gradient. -------------------- bigZbig (Zbigniew Heintze) | blog.heintze.pl
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Cytat Aby stworzyc gradient wywolujesz metode obiektu Color i jako parametr przekazujesz jej obiekt bedacy inna instancja tej samej klasy.Nie lepiej byloby stworzyc osobna klase gradient do ktorej przekazywalbys dwa obiekty klasy Color? OK, za malo przemyslalem to rozwiazanie. Dodam nowa klase z Iteratorem po kolorach gradientu. Dodam podawanie kolowow przez nazwy np. Color::BLACK, Color::RED i opcjonalnie przez stringi "black" "red" -- jesli ktos tak woli. Gradient z posrednimi stanami -- nawet nie pomyslalem ![]() Dzieki za uwagi. -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
@dr_bonzo postanowilem powalczyc troszke z Twoja klasa i wspominanym juz przeze mnie rozwiazaniem FiDO i stworzylem swoja klase o podobnej funkcjonalnosci, ktora niesmialo nazwalem bigColor ;-)
-------------------- bigZbig (Zbigniew Heintze) | blog.heintze.pl
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Fajne, fajne.
Ma wszystko to czego mojej brakowalo. ----edit: Skoro masz bigColorColection, to nie bylo by lepiej zwracac z gradientu kolekcje kolorow? -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Tworzac instancje klasy gradient masz automatycznie do czynienia z obiektem klasy bigColorColection bo bigColorGradient jest rozszerzeniem klasy bigColorColection. Nalezy oczywiscie uzyc metody generate klasy bigColorGradient bo inaczej kolekcja nie bedzie zawierac kolorow posrednich. Nie widze potrzeby wprowadzania dodatkowego posrednika jakim bylby pierwotny obiekt klasy bigColorColection zwracany przez klase generujaca gradient.
-------------------- bigZbig (Zbigniew Heintze) | blog.heintze.pl
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Aha, bo nie zagladalem do kodu, tylko do przykladow uzycia. Ale teraz nie pasuje mi logiczne zlozenie obiektow: to ze gradient dziedziczy po kolekcji, a przeznaczenie ma inne -- on tworzy kolekcje i sam nia jest :|
BTW. Dzisiaj wyjdzie moja wersja klas Kolorowych ![]() --------------------- edit: updatowalem pierwszy post. bigZbig dzieki za uwagi: dodalem klase do robienia Gradientow -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Cytat(dr_bonzo @ 2006-02-07 12:07:52) Ale teraz nie pasuje mi logiczne zlozenie obiektow: to ze gradient dziedziczy po kolekcji, a przeznaczenie ma inne -- on tworzy kolekcje i sam nia jest :| Hmm faktycznie jest pewien zgrzyt logiczny ale czy aby napewno? Gradient jest kolekcja kolorow. Jesli nie wygenerujesz kolorow posrednich to w sumie tez masz gradient tyle, ze w postaci maksymalnie uproszczonej. Jak na to spojrzec w ten posob to kazda kolekscja jest gradientem. No zapedzilem sie juz w rozwazania filozoficzne, a nie o to przecierz chodzi aby na sile udowadniac swoja racje. Powiem szczerze zrobilem tak aby zaoszczedzic sobie pracy z metodami odpowiedzialnymi za dodawanie koloru do obiektu. Po glebszym zastanowieniu przyznaje Ci racje, ze klase gradient nalerzy raczej traktowac jak narzedzie niz jak pojemnik. Tymczasem zrobilem maly formularz generujacy kolorowe naglowki. @dr_bonzo - przyjrze sie Twojemu dzielu -------------------- bigZbig (Zbigniew Heintze) | blog.heintze.pl
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Przyjzalem sie blizej kodowi:
- [ bigColor]Globale w OOP? Nie lepiej zawrzec to w klasie:
- [ bigColorCollection]
manual: Cytat The is_a() function is deprecated as of php 5 in favor of the instanceof type operator. * [ bigColorCollection]
chyba troche nie trafiles z komentarzem: $aColors powinno byc tablica bigColor[], a komentarz masz od konstruktora bigColor'u :| + Znajdowanie nazwy dla koloru podanego jako liczby/-a + Masz wiecej nazwanych kolorow ? Przydalby sie iterator po bigColorCollection, bo na razie jest pojemnikiem na tablice bigColor[], musze wybrac ->getColors() zeby otrzymac tablice i dopiero po miej puscic foreach() ![]()
To nie jest konieczne, gwarantuje ci to matematyka ![]() PS. Zgodnie z regulaminem powinienes zalozyc nowy watek dla swojej klasy ![]() -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Zastosowalem sie do wszystkich Twoich rad - za wyjatkiem zalozenia nowego watku ;-)
-------------------- bigZbig (Zbigniew Heintze) | blog.heintze.pl
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 04:24 |