Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 12.04.2009, 16:45   #1
Сэм
Пользователь
 
Регистрация: 12.04.2009
Сообщений: 31
По умолчанию Нарисовать кораблик (Turbo Pascal)

Здравствуйте, люди добрые! Окажите содействие чайнику написать программу, которая выводит на экран изображение совершенно банального кораблика
Вложения
Тип файла: doc Кораблик.doc (23.5 Кб, 113 просмотров)
Сэм вне форума
Старый 12.04.2009, 17:10   #2
Лукманов Александр
работа не волк....
Форумчанин
 
Аватар для Лукманов Александр
 
Регистрация: 09.06.2008
Сообщений: 337
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Image1.Visible:=true;
end;
два раза щёлкаешь на добавленной кнопке и добавляешь этот код.

так же добавляешь на форму Image. Заходишь в свойство Picture и прописываешь путь картинки. Также свойство Visible = False
Цель, для которой требуются неправые средства, не есть неправая цель.
Лукманов Александр вне форума
Старый 12.04.2009, 18:21   #3
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

У Лукманова выводится готовый рисунок. Вот метод для рисования "вручную". Открываем новый проект в Дельфи.В Object Inspector открываем вкладку Events (события) и дважды кликаем по OnPaint. Далее ручками прописываем следующий код :
Код:
With Form1.Canvas do
  begin
    Pen.Width:= 2;
    Pen.Color:= clRed;
    MoveTo(200,200);
    LineTo(150,170);
    LineTo(200,140);
    lineTo(200,250);
    Pen.Color:= clBlack;
    lineTo(150,250);
    lineTo(180,350);
    lineTo(600,350);
    lineTo(650,250);
    lineTo(200,250);
    Brush.Color:= clGreen;
    Rectangle(250,200,550,250);
    Brush.Color:= clYellow;
    Rectangle(300,160,500,200);
    Brush.Color:= clBlack;
    Rectangle(350,100,400,160);
  end;
Это все методы графических примитивов. Запускаем проект (F9) и любуемся. Добавте иллюминаторы ( метод Ellipse ) и окна на верхних палубах (методом Rectangle) - троечка Вам обеспечена.
Только сейчас заметил, что нужно в среде Турбо Паскаль. Но в принципе там применимы те же операторы для модуля Graf. Думаю справитесь.
И не сомневайся даже ... отдых - кайф, работа - лажа!

Последний раз редактировалось DeKot; 12.04.2009 в 18:25.
DeKot вне форума
Старый 12.04.2009, 18:59   #4
Сэм
Пользователь
 
Регистрация: 12.04.2009
Сообщений: 31
По умолчанию

Спасибо, друзья, и на этом! Простите за наглость, но можете мне разъяснить, откуда взялись или как были вычислены (подобраны) координаты? Суть вроде понял, хотя и на делфи, а вот с координатами, ума не приложу, совсем туго что-то.СПАСИБО!
Сэм вне форума
Старый 12.04.2009, 20:33   #5
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

Это координаты формы( читай экрана дисплея) Если в компе установлено разрешение 1024 х 768 - это 1024 пикселя в ширину и 768 пикселей в высоту. Чтобы понять - возьми обыкновенный тетрадочный лист в клеточку. Одна клетка - это 20 пикселей.Теперь отсчитывая от верхнегшо левого угла листа карандашом отсчитывай указанные координаты и рисуй линии или прямоугольники согласно программе. Все станет понятно.
Начальная точка (MoveTo) 200 х 200 - это десять клеток вправо и 10 клеток вниз. Если уж и это не понятно, тогда "парашутный спорт не для Вас!"
И не сомневайся даже ... отдых - кайф, работа - лажа!
DeKot вне форума
Старый 13.04.2009, 18:05   #6
Сэм
Пользователь
 
Регистрация: 12.04.2009
Сообщений: 31
По умолчанию

Ещё раз, спасибо! Как раз то, что описали Вы я понял и очень даже хорошо. Может я неправильно выразил свои мысли, тогда прошу прощения, но я имел в виду, когда интересовался координатами, не их конкретное числовое выражение, а некую, чтоли, формулу. Ну, допустим, изображение нужно строго посередине листа, или чуть ниже, или выше, не суть. Суть в том, чтобы вводя определённые числа и подставляя их в формулу, получать изображение в нужном месте. Возможно ли это?
Сэм вне форума
Старый 13.04.2009, 21:38   #7
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

Вы же рисуете "кораблик". А это как у художника, никаких формул, одно вдохновение, как рука ляжет - так и получится рисунок. То ли "Девятый вал", то ли "Черный квадрат".Другое дело, если Вы хотите создать рисунок программно. Вот здесь как раз нужна математика, т.е знание формул.Тогда сможете рисовать синусоиды, графы, фракталы и прочую белиберду.
Цитата:
строго посередине листа, или чуть ниже, или выше, не суть. Суть в том, чтобы вводя определённые числа и подставляя их в формулу, получать изображение в нужном месте
Для этого есть координаты экрана ( или видимой программой части экрана). Даже не знаю как еще на пальцах это объяснить.Ну, скажем так - левый верхний угол видимой части экрана (формы) имеет координаты 0,0, а соответсевенно правый нижний Width,Height - соответствует разрешению дисплея. Все остальное просчитывается исходя из задачи.
И не сомневайся даже ... отдых - кайф, работа - лажа!
DeKot вне форума
Старый 14.04.2009, 18:45   #8
Сэм
Пользователь
 
Регистрация: 12.04.2009
Сообщений: 31
По умолчанию

ВСЁ ПОЛУЧИЛОСЬ!!! Уважаемый DeKot, нижайший Вам поклон и огроменнейшее СПАСИБО!!! Не знаю, правда, так или нет, но я нарисовал кораблик! С удовольствием "опрокину" за Ваше здоровье бутылочку-другую хорошего молдавского вина! Ещё раз, СПАСИБО!
Сэм вне форума
Старый 14.04.2009, 22:32   #9
Sheva-roller
 
Аватар для Sheva-roller
 
Регистрация: 14.04.2009
Сообщений: 7
По умолчанию

А можете сюда добавить овальных элементов типа Ellipse, Arc, Pie?
Чтоб эстетичность рисунка не потерялась, пожалуйста!

Хотя бы иллюминаторы добавьте, а то у меня с эллипсами вообще ноль, буду очень благодарен!

Последний раз редактировалось Stilet; 16.04.2009 в 09:31.
Sheva-roller вне форума
Старый 15.04.2009, 19:46   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Хотя бы иллюминаторы добавьте, а то у меня с эллипсами вообще ноль
шутить изволите?
ну, например так:
Код:
    Brush.Color:= clBlue;
    x := 220; y := 275;
    for i:=0 to 6 do
      Ellipse(x+i*55,y, x+i*55+40, y+40);
Serge_Bliznykov вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массив (Turbo Pascal) Wizzard Помощь студентам 2 20.01.2008 09:59
Turbo Pascal в Delphi 7 adm34 Общие вопросы Delphi 5 04.02.2007 11:29