Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
marinka0613
1 / 1 / 0
Регистрация: 29.10.2011
Сообщений: 11
1

рисование графических примитивов по данным из файла

17.12.2011, 14:52. Просмотров 1058. Ответов 4
Метки нет (Все метки)

дан текстовый файл. в файле на каждой строке записана процедура рисования графического примитива и значения параметров через 1 пробел.например:

Rectangle 10 10 200 300
Circle 200 200 50

для примера считать, что в файле может быть 4-5 типов процедур. процедуры могут быть записаны в разном порядке и повторяться. выполнить записанные в файл процедуры с данными параметрами(нарисовать соответствующие примитивы)

с объяснениями
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2011, 14:52
Ответы с готовыми решениями:

Использование графических примитивов
Используя графические примитивы,задав параметры пера и кисти нарисовать щенка! Скажите как это...

Построение основных графических примитивов
С помощью процедуры нарисовать узор

Постройте графическое изображение с использованием графических примитивов
Изобразите мигающую мишень и летящую в нее стрелу

Используя библиотеку графических примитивов построить узор
Используя библиотеку графических примитивов построить узор. Обязательно предусмотреть возможность...

Рисование графических примитивов
Приложение, которое читает данные из файла о координатах и размерах различных графических...

4
miss.tiramisu
0 / 0 / 0
Регистрация: 21.12.2011
Сообщений: 5
21.12.2011, 17:48 2
Ребят, помогите пожалуйста. Очень нужно решение этой задачи...
0
Puporev
Модератор
56347 / 43123 / 29829
Регистрация: 18.05.2008
Сообщений: 102,491
21.12.2011, 19:00 3
Можно так.
Исходный файл.
Rectangle 10 10 200 300
Circle 200 200 50
Line 500 240 600 340
Ellipse 150 350 0 360 80 40
Arc 350 350 180 360 100



Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
uses graph;
const pr:array[1..5] of string=('Rectangle','Circle','Line','Ellipse','Arc');
var f:text;
    n,i,x,y:integer;
    s,s1:string;
    a:array[1..6] of integer;
begin
assign(f,'F1.txt');
reset(f);
x:=0;
initgraph(x,y,'');
while not eof(f) do
 begin
  readln(f,s);
  s1:=copy(s,1,pos(' ',s)-1);
  for i:=1 to 5 do
  if s1=pr[i] then x:=i;
  delete(s,1,pos(' ',s));
  s:=s+' ';
  n:=0;
  while pos(' ',s)>0 do
   begin
    n:=n+1;
    s1:=copy(s,1,pos(' ',s)-1);
    val(s1,a[n],y);
    delete(s,1,pos(' ',s));
   end;
  case x of
  1:rectangle(a[1],a[2],a[3],a[4]);
  2:circle(a[1],a[2],a[3]);
  3:line(a[1],a[2],a[3],a[4]);
  4:ellipse(a[1],a[2],a[3],a[4],a[5],a[6]);
  5:arc(a[1],a[2],a[3],a[4],a[5]);
  end;
 end;
close(f);
readln
end.
1
miss.tiramisu
0 / 0 / 0
Регистрация: 21.12.2011
Сообщений: 5
21.12.2011, 19:21 4
Огромное спасибо!!!
0
Puporev
Модератор
56347 / 43123 / 29829
Регистрация: 18.05.2008
Сообщений: 102,491
21.12.2011, 19:25 5
Лучший ответ Сообщение было отмечено как решение

Решение

Кстати это для Турбо Паскаль написано. Поправите сами?

Добавлено через 1 минуту
Три строки убрать и 1 изменить.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
uses graphABC;
const pr:array[1..5] of string=('Rectangle','Circle','Line','Ellipse','Arc');
var f:text;
    n,i,x,y:integer;
    s,s1:string;
    a:array[1..6] of integer;
begin
assign(f,'F1.txt');
reset(f);
while not eof(f) do
 begin
  readln(f,s);
  s1:=copy(s,1,pos(' ',s)-1);
  for i:=1 to 5 do
  if s1=pr[i] then x:=i;
  delete(s,1,pos(' ',s));
  s:=s+' ';
  n:=0;
  while pos(' ',s)>0 do
   begin
    n:=n+1;
    s1:=copy(s,1,pos(' ',s)-1);
    val(s1,a[n],y);
    delete(s,1,pos(' ',s));
   end;
  case x of
  1:rectangle(a[1],a[2],a[3],a[4]);
  2:circle(a[1],a[2],a[3]);
  3:line(a[1],a[2],a[3],a[4]);
  4:ellipse(a[1],a[2],a[3],a[4],a[5],a[6]);
  5:arc(a[1],a[2],a[3],a[4],a[5]);
  end;
 end;
close(f);
end.
4
21.12.2011, 19:25
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.12.2011, 19:25

Рисование графических примитивов
Задача такова: Необходимо нарисовать ромб. Ну а почему бы и нет? Можно и треугольник (не квадрат...

Рисование графических примитивов на форме
Народ. Интересует рисование на форме, то есть круги, треугольники, линии движением мыши, но начиная...

Рисование надписей и графических примитивов
Как сделать возможным рисование на PictureBox, рисовать графические примитивы, надписи, другие...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru