Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

EAccessViolation


San1 ©   (2007-11-22 09:39:00) 

Подскажите пожалуйста, почему при обработке некоторых картинок возникает исключительная ситуация EAccessViolation with message 'Access violation at address 004053AC in module project.exe'

type
 Point_BitMap=record
 x,y:Currency;
 end;

var
 Massiv_of_PointBitMap:array of Point_BitMap;

implementation
.
.
...
...Начало моей процедуры -
Rep:=0;
S:=Image.Width*Image.Height;
SetLength(Massiv_of_PointBitMap,S);

for k:=0 to canv.Height-1 do begin

 for z:=0 to canv.Width-1 do begin

  if canv.Canvas.Pixels[z,k]=clBlue then
     begin
     Rep:=Rep+1;

     Massiv_of_PointBitMap[Rep].x:=(z/20);
     Massiv_of_PointBitMap[Rep].y:=(k/20);

     end;
 end;
end;

dz:=0;

while dz>=zed*(-1) do begin
dz:=dz-0.05;

   for k:=1 to Rep do begin
     writeln(f,FormatFloat('#.###',Massiv_of_PointBitMap[k].x),' ',FormatFloat('#.###',Massiv_of_PointBitMap[k].y),' ',FormatFloat('#.##',dz));

   end;
end;

Massiv_of_PointBitMap:=nil;


San1   (2007-11-22 10:04:00) [1]

Спасибо!


San1   (2007-11-22 10:03:00) [2]

Согласен, глупая ошибка :.)


ЮЮ   (2007-11-22 09:56:00) [3]

> Здесь задаюсь длиной массива с запасом

Да, но цикл то по canv.Height-1 и canv.Width. Их тогда и используй при определении размера массива. Или циклы организуй по Image.Width и Image.Height


Сергей М.   (2007-11-22 09:55:00) [4]


> задаюсь длиной массива с запасом


Причем здесь "запас" ?)

Что такое Image ?


San1   (2007-11-22 09:50:00) [5]

>> S:=Image.Width*Image.Height;

>Сам-то ты понял, что в этой строчке сделал ?

Здесь задаюсь длиной массива с запасом, поскольку крайняя ситуация это когда все пикселы канвы цвета clBlue.


Сергей М.   (2007-11-22 09:44:00) [6]


> почему при обработке некоторых картинок возникает исключительная
> ситуация


Видимо на этих картинах порнуха)


> S:=Image.Width*Image.Height;


Сам-то ты понял, что в этой строчке сделал ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо