Виталий Донцов – Программирование для Android и работа с датчиками в среде Delphi 11 (страница 16)
Для добавления элементов используют
(или:
for i:= 0 to Memo1.Lines.Count – 1 do
begin
X:=X+5; // X с шагом = 5 точек
R.Top:=Path1.Height – StrToInt(Memo1.Lines [i]) // Y
R.Bottom:=R.Top +3; // Диаметр кружка: 1+3=4
R. Left:= X;
R. Right:=R. Left +3;
Path1.Data.AddEllipse (R); //Рисуем кружок
end;
Как видите, рисование в Android не доставляет того же удовольствия, как в Delphi 7. Поэтому гораздо проще использовать фигуры из группы Shape, которые не требует ничего этого и свойства которых можно определять в Object Inspector.
11.4. РИСОВАНИЕ СРЕДСТВАМИ DELPHI ANDROID
Основной класс для для графики в Delphi Android –
Основу рисования составляет
Для оценки цвета можно использовать канал
Яркость = 0.6*Зеленый +0.3*Красный +0.1*Синий. Коэффициенты отражают неравномерность чувствительности глаза к разным участкам спектра.
В
Создать цвет, например, для компонента прямоугольник, можно смешав 3 цвета (A: Byte = $FF – прозрачность до 255):
var
col: TAlphaColorRec;
begin
col. R:= 255;
col. G:= 255;
col. B:= 255;
col. A:= 255;
Rectangle1.Fill.Color:= TAlphaColor (col);
Rectangle1.Fill.Kind:= TBrushKind.Solid;
end;
Для назначения цвета можно использовать вывод его в 16-ричном формате: $FFF000000 соответствует непрозрачному красному цвету; но удобнее и чаще всего используют
var color: TAlphaColors;
color:= TAlphaColors.Red;//Подсказка выводится после точки
Предусмотрены также ряд специализированных компонентов на вкладке Color:
Рис. 32. Различные компоненты отображения цвета вкладки Color.
Рисование фигур включает прежде всего описание их свойств внутри
DrawLine (P1, P2, 1);
теперь превращается в целую историю:
в событии OnPaint основной
constant R: TREctF;
var
P1, P2: TPointF;
x1, y1,x2, y2: Integer;
color: TAlphaColor;
Begin
x1:= 10;
y1:= 20;
x2:= 100;
y2:= 200;
P1.X:= x1;
P1.Y:= y1;
P2.X:= x2;
P2.Y:= y2;
with Canvas do
if (
try
Stroke.Kind:=TBrushKind.Solid;
Stroke.Color:=TAlphaColors. Blue;
Stroke.Thickness:=2;
Canvas. DrawLine (P1, P2, 1);
finally
endScene;
end;
Для вывода рисунка здесь нужно нажать Button и присвоить
Методы Canvas: