![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
}0pa |
![]() ![]()
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 75 Пол: Мужской Репутация: ![]() ![]() ![]() |
Проблема такова: В прикрепленном файле находятся файлы KRD-карты районов. Каждый из них содержит название района, координаты точек, макс. и мин. значения "х" и "у". Помогите вывести на экран хотя бы одну карту
Код interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TForm1 = class(TForm) Image1: TImage; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; x,y,h:real; I1,I2,J1,J2:integer; x1,x2,y1,y2:real; implementation {$R *.dfm} {------------------------------------------------------------------------------} function II(x:real):Integer; begin II:=I1 + Trunc ((x-x1)*(I2-I1)/(x2-x1)) end; {------------------------------------------------------------------------------} function JJ(y:real):Integer; begin JJ:=J1 + Trunc ((y-y1)*(J2-J1)/(y2-y1)) end; {------------------------------------------------------------------------------} procedure TForm1.Button1Click(Sender: TObject); begin with Image1 end; end. Прикрепленные файлы ![]() -------------------- Ну, а почему бы в свободное время не позаниматься программированием?
|
![]() ![]() |
}0pa |
![]()
Сообщение
#2
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 75 Пол: Мужской Репутация: ![]() ![]() ![]() |
Смотрю по коду, вроде должно работать, но все равно карту не рисует из файла:
1.Название района 2.Название райцентра 3.Координаты 4.,5.Макс по Х и мин по Х, соотевтсвенно макс по у и мин по у... Остальные просто координаты! В качестве примера взял один файл с название "район1" Код var Form1: TForm1; x1,y1,x2,y2,h:real; x,y,col:integer; I1,J1,I2,J2,n,j,k:integer; s1,s2:string; f:TextFile; implementation {$R *.dfm} {------------------------------------------------------------------------------} function II(x:real):integer; begin II:=I1+Trunc((x-x1)*(I2-I1)/(x2-x1)) end; {------------------------------------------------------------------------------} function JJ(x:real):integer; begin JJ:=J1+Trunc((y-y1)*(J2-J1)/(y2-y1)) end; {------------------------------------------------------------------------------} procedure DrawGraphic; begin reset(f); k:=0; with Form1.Image1,Form1.Image1.Canvas do begin x:=1413;y:=1294; MoveTo(II(x),JJ(-y)); while not eof(f) do begin k:=k+1; while not eoln(f) do begin Rectangle(0,0,Width,Height); if (k=1)or(k=2) then read(f,s1) else if k=4 then read(f,n) else if k=7 then read(f,col) else begin read(f,x,y); LineTo(II(x),JJ(-y)) end end; readln(f) end; close(f); end; end; {------------------------------------------------------------------------------} procedure TForm1.FormCreate(Sender: TObject); begin AssignFile(f, 'D:\Documents and Settings\Administrator\My Documents\Delfi_files\Map\RAION1.KRD'); n:=200; x1:=-6; y1:=-6; x2:=6;y2:=6; I1:=0;J1:=0; I2:=Image1.Width;J2:=Image1.Height; DrawGraphic; end; Сообщение отредактировано: }0pa - 19.11.2006 10:30 Прикрепленные файлы ![]() -------------------- Ну, а почему бы в свободное время не позаниматься программированием?
|
![]() ![]() |
![]() |
Текстовая версия | 8.07.2025 10:49 |