![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
что для этого надо использовать? ф-я допустим F(x)= sin(x)
Я пробовал на поверхности image(в image загружена картинка) рисовать - он выдавал ошибку. Помогите пожалуйста, если можно привести код, а то могу не понять на словах) |
|
#2
|
|||
|
|||
|
а обязательно на image рисовать?
|
|
#3
|
||||
|
||||
|
А ты рисуй прямо на холсте формы картинку и на ней функцию...т.е. не используя компонент TImage...
Методом Draw рисуй на холсте картинку и к примеру методом Pixels прорисовывай график... http://www.helloworld.ru/texts/comp/...phi1/les14.htm |
|
#4
|
|||
|
|||
|
Дело в том, что мне нужно рисовать на карте Земли( ее изображение у меня в jpeg файле), как ее можно отобразить методом draw?
Последний раз редактировалось Владимир77, 06.04.2010 в 18:33. |
|
#5
|
||||
|
||||
|
Вот пример загрузки картинки и рисования на ней,
если надо картинку именно с Image грузить то заменяем одну строчку Код:
Bmp.Assign(Image1.Picture.Graphic); Код:
Uses Jpeg;
Var Bmp: TBitMap;
procedure TForm1.Button1Click(Sender: TObject);
Var
Jpg: TJpegImage;
Y,x: Real;
begin
Jpg:= TJpegImage.Create;
Bmp:= TBitMap.Create;
Jpg.LoadFromFile('C:\1.jpg');
Bmp.Assign(Jpg);
Jpg.Free;
x:= -80; // Начальный Х
Y:= 0;
Repeat
Y:= 50*Sin(x/4); //50 - Амплитуда 4 - частота
x:= x + 0.01; // Шаг изменения Х
Bmp.Canvas.Pixels[100+Round(x),100+Round(Y)]:= clRed; //100,100 нач.координаты.
Until x >= 80; //Конечный Х
Form1.Repaint;
end;
procedure TForm1.FormPaint(Sender: TObject);
begin
Form1.Canvas.Draw(0, 0, Bmp);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
Bmp.Free;
end; |
|
#6
|
|||
|
|||
|
спасибо большое, вы очень помогли.
|