Thread View: pl.comp.lang.delphi
9 messages
9 total messages
Started by stchebel
Wed, 21 Dec 2016 22:32
Lazarus/Scanline
Author: stchebel
Date: Wed, 21 Dec 2016 22:32
Date: Wed, 21 Dec 2016 22:32
16 lines
1705 bytes
1705 bytes
Witam,
Znowu problemy.. :(
Zacznijmy od D6. Jest sobie BitMapa o nazwie 'SliczneDziewcze.bmp'. Chcę możliwie jak najszybciej wykonać (tylko i wyłącznie) na owym pewne działania.
Po kolei:
1) w D6 zadeklarowałem zmienne globalne
var P:PByteArray;
k:byte;
2)Robię gdzieś tam w procedurze k:=ObrazPodstawowy.ScanLine[y]; (ObrazPodstawowy, to bitmapa)
3) Dalej robię próbę przypisania k:= BezZnarzecja... W D6 kompilacja przechodi bezproblemowo, Lazarus krzyczy podczas kompilacji o niekompatybilnąści Typów (k,P). Tymczasem w D6 wszystko przechodzi na poziomie kompilacji.
Co sugerujecie??!!
Re: Lazarus/Scanline
Author: Piotr S.
Date: Thu, 22 Dec 2016 06:52
Date: Thu, 22 Dec 2016 06:52
9 lines
1235 bytes
1235 bytes
W dniu 2016-12-21 o 23:32, stchebel@gmail.com pisze: > 3) Dalej robię próbę przypisania k:= BezZnarzecja... W D6 kompilacja przechodi bezproblemowo, Lazarus krzyczy podczas kompilacji o niekompatybilnąści Typów (k,P). Tymczasem w D6 wszystko przechodzi na poziomie kompilacji. > Co to jest "BezZnarzecja"? Podaj kompletny kod a nie jakieś urywki. P.S.
Re: Lazarus/Scanline
Author: stchebel
Date: Thu, 22 Dec 2016 07:58
Date: Thu, 22 Dec 2016 07:58
32 lines
2149 bytes
2149 bytes
W dniu czwartek, 22 grudnia 2016 07:52:53 UTC+1 użytkownik Piotr S. napisał:
> W dniu 2016-12-21 o 23:32, stchebel@gmail.com pisze:
> > 3) Dalej robię próbę przypisania k:= BezZnarzecja... W D6 kompilacja przechodi bezproblemowo, Lazarus krzyczy podczas kompilacji o niekompatybilnąści Typów (k,P). Tymczasem w D6 wszystko przechodzi na poziomie kompilacji.
> >
>
> Co to jest "BezZnarzecja"?
>
> Podaj kompletny kod a nie jakieś urywki.
>
> P.S.
OK, wygląda to mniej więcej tak:
var
ObrazPodstawowy:TBitMap;
P:PByteArray;
x,y,i:integer;
k:byte;
begin
ObrazPodstawowy:=TBitmap.Create;
ObrazPodstawowy.LoadFromFile('obrazek.bmp');
y:=0;
P:=ObrazPodstawowy.ScanLine[y];
i:=0;
k:=P[i];
W ostatnim wierszu Lazarus wywala błąd kompilacji : Incompatible types: got "TbyteArray" expected "Byte".
Tymczasem to samo w D6 przechodzi bez problemu.
Re: Lazarus/Scanline
Author: mmm
Date: Thu, 22 Dec 2016 08:15
Date: Thu, 22 Dec 2016 08:15
20 lines
1580 bytes
1580 bytes
> Co sugerujecie??!! > 1) Założyć konto na github 2) Założyć nowe repozytorium 3) Opublikować problem w postaci projektu To by bardzo ułatwiło nikt sie nie bedzie domyslał co masz w kodzie, jak opublikujesz link z adresem do swojego repozytorium to bedzie raptem pare sekund aby obejrzeć projekt z problemem a wtedy to ja chętnie pomogę. Kolejna zaleta to wartość dydaktyczna, ktoś będzie miał podobny problem i dokopie się do Twojego kodu z rozwiązaniem które moze sie tu pojawi:) A co do samego problemu to w lazarus/fpc nie wszystko jest tak 100% kompatybilne. I jeszcze pytanie czy byleś tutaj ? http://wiki.lazarus.freepascal.org/Developing_with_Graphics M
Re: Lazarus/Scanline
Author: mmm
Date: Thu, 22 Dec 2016 08:19
Date: Thu, 22 Dec 2016 08:19
7 lines
1071 bytes
1071 bytes
> P:PByteArray; > k:=P[i]; Strzelam w ciemno ! k:=P^[i]; M
Re: Lazarus/Scanline
Author: stchebel
Date: Thu, 22 Dec 2016 08:29
Date: Thu, 22 Dec 2016 08:29
23 lines
2371 bytes
2371 bytes
W dniu czwartek, 22 grudnia 2016 09:15:23 UTC+1 użytkownik mmm napisał: > > Co sugerujecie??!! > > > 1) Założyć konto na github > 2) Założyć nowe repozytorium > 3) Opublikować problem w postaci projektu > To by bardzo ułatwiło nikt sie nie bedzie domyslał co masz w kodzie, > jak opublikujesz link z adresem do swojego repozytorium to bedzie raptem > pare sekund aby obejrzeć projekt z problemem a wtedy to ja chętnie pomogę. > Kolejna zaleta to wartość dydaktyczna, ktoś będzie miał podobny problem > i dokopie się do Twojego kodu z rozwiązaniem które moze sie tu pojawi:) > Tak uczynię, ale najpierw zrobię trochę porządku w kodzie, bo taki burdel jak mam w tej chwili to wstyd publikować. > A co do samego problemu to w lazarus/fpc nie wszystko jest tak 100% > kompatybilne. > > I jeszcze pytanie czy byleś tutaj ? > http://wiki.lazarus.freepascal.org/Developing_with_Graphics > > Interesujące, thks.
Re: Lazarus/Scanline
Author: Piotr S.
Date: Thu, 22 Dec 2016 08:30
Date: Thu, 22 Dec 2016 08:30
21 lines
1546 bytes
1546 bytes
W dniu 2016-12-22 o 08:58, stchebel@gmail.com pisze:
>
> ObrazPodstawowy:=TBitmap.Create;
> ObrazPodstawowy.LoadFromFile('obrazek.bmp');
> y:=0;
> P:=ObrazPodstawowy.ScanLine[y];
> i:=0;
> k:=P[i];
>
> W ostatnim wierszu Lazarus wywala błąd kompilacji : Incompatible types: got "TbyteArray" expected "Byte".
>
> Tymczasem to samo w D6 przechodzi bez problemu.
>
http://wiki.freepascal.org/Code_Conversion_Guide
Patrz "When accessing values in a pointer to a record you must
dereference first". Dotyczy typów record ale widocznie w tym przypadku
jest tak samo.
P.S.
Re: Lazarus/Scanline
Author: stchebel
Date: Thu, 22 Dec 2016 08:35
Date: Thu, 22 Dec 2016 08:35
9 lines
1505 bytes
1505 bytes
W dniu czwartek, 22 grudnia 2016 09:19:26 UTC+1 użytkownik mmm napisał: > > P:PByteArray; > > k:=P[i]; > > Strzelam w ciemno ! > k:=P^[i]; > Jak zwykle masz rację. Dzięki!
Re: Lazarus/Scanline
Author: stchebel
Date: Thu, 22 Dec 2016 12:26
Date: Thu, 22 Dec 2016 12:26
11 lines
1622 bytes
1622 bytes
W dniu czwartek, 22 grudnia 2016 09:30:47 UTC+1 użytkownik Piotr S. napisał: > > http://wiki.freepascal.org/Code_Conversion_Guide > > Patrz "When accessing values in a pointer to a record you must > dereference first". Dotyczy typów record ale widocznie w tym przypadku > jest tak samo. > Też dobry namiar. Dzięki !
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads