Перейти к содержанию
Fire Monkey от А до Я
  • 0

Bitmap DrawLine


Ильдар

Вопрос

Добрый день, идеология такая:

- создать битмап, рисовать на нем, не делая его видимым.

- нашлепать на канву панели подготовленный битмап.

 

На деле не получается нарисовать линию на битмапе. Т.е после процедуры Draw2 прожимаю процедуру Draw - получаю на панели красный прямоугольник битмапа без нарисованной линии...

Посоветуйте чего-нибуть, спасибо!

 


//BITMAP
  Bm:= TBitmap.Create;
  bm.Width:= round (Panel.Width/2);
  bm.Height:= round (Panel.Height/2);

  bm.Canvas.BeginScene();
    bm.Canvas.Clear(TAlphacolorrec.Red); //($FF484848);
  bm.Canvas.EndScene;



procedure TChart.Draw2;
var
  A,B:TPointF;
begin
  A:=TPointF.Create(0,0);
  B:=TPointF.Create(200, 200);

  bm.Canvas.BeginScene();
    bm.Canvas.DrawLine(A,B,1);
  bm.Canvas.EndScene;
end;


procedure TChart.Draw;
var
  A: TPointF;
  R: TRectF;
begin
  A.X:= Panel.Position.X+3;
  A.Y:= Panel.Position.Y+3;
  R:= TRectF.Create(A, bm.Width , bm.Height);

  panel.Canvas.BeginScene();
    Panel.Canvas.DrawBitmap(bm,r,r, 20);
  panel.Canvas.EndScene;
end;

 

Ссылка на комментарий

Рекомендуемые сообщения

  • 0
22 минуты назад, krapotkin сказал:

а каким цветом рисуете? )

Черным, по дефолту)  Если тут поменять bm на Panel - на канве панели исправно рисуется черная линия.

procedure TChart.Draw2;
var
  A,B:TPointF;
begin
  A:=TPointF.Create(0,0);
  B:=TPointF.Create(200, 200);

  bm.Canvas.BeginScene();
    bm.Canvas.DrawLine(A,B,1);
  bm.Canvas.EndScene;
end;

Прогуглил немного, раньше надо было обязательно добавлять bitmapchanged; но в 10.2 он вроде не доступен. Может, рисование на канве контрола и рисование на битмапе отличается чем то?

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...