Здравствуйте, люди добрые! Окажите содействие чайнику написать программу, которая выводит на экран изображение совершенно банального кораблика
работа не волк.
Форумчанин
Регистрация: 09.06.2008
Сообщений: 337
procedure TForm1.Button1Click(Sender: TObject); begin Image1.Visible:=true; end;
два раза щёлкаешь на добавленной кнопке и добавляешь этот код.
так же добавляешь на форму Image. Заходишь в свойство Picture и прописываешь путь картинки. Также свойство Visible = False
Цель, для которой требуются неправые средства, не есть неправая цель.
Участник клуба
Регистрация: 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) — троечка Вам обеспечена.
Как сделать оригами «Кораблик» из тетрадного листа. How to make origami «Ship» from a notebook sheet
Только сейчас заметил, что нужно в среде Турбо Паскаль. Но в принципе там применимы те же операторы для модуля Graf. Думаю справитесь.
И не сомневайся даже . отдых — кайф, работа — лажа!
Последний раз редактировалось DeKot; 12.04.2009 в 18:25 .
Пользователь
Регистрация: 12.04.2009
Сообщений: 31
Спасибо, друзья, и на этом! Простите за наглость, но можете мне разъяснить, откуда взялись или как были вычислены (подобраны) координаты? Суть вроде понял, хотя и на делфи, а вот с координатами, ума не приложу, совсем туго что-то.СПАСИБО!
Участник клуба
Регистрация: 12.08.2008
Сообщений: 1,977
Это координаты формы( читай экрана дисплея) Если в компе установлено разрешение 1024 х 768 — это 1024 пикселя в ширину и 768 пикселей в высоту. Чтобы понять — возьми обыкновенный тетрадочный лист в клеточку. Одна клетка — это 20 пикселей.Теперь отсчитывая от верхнегшо левого угла листа карандашом отсчитывай указанные координаты и рисуй линии или прямоугольники согласно программе. Все станет понятно.
Начальная точка (MoveTo) 200 х 200 — это десять клеток вправо и 10 клеток вниз. Если уж и это не понятно, тогда «парашутный спорт не для Вас!»
И не сомневайся даже . отдых — кайф, работа — лажа!
Пользователь
Регистрация: 12.04.2009
Сообщений: 31
Ещё раз, спасибо! Как раз то, что описали Вы я понял и очень даже хорошо. Может я неправильно выразил свои мысли, тогда прошу прощения, но я имел в виду, когда интересовался координатами, не их конкретное числовое выражение, а некую, чтоли, формулу. Ну, допустим, изображение нужно строго посередине листа, или чуть ниже, или выше, не суть.
Как нарисовать КОРАБЛЬ?
Суть в том, чтобы вводя определённые числа и подставляя их в формулу, получать изображение в нужном месте. Возможно ли это?
Участник клуба
Регистрация: 12.08.2008
Сообщений: 1,977
Вы же рисуете «кораблик». А это как у художника, никаких формул, одно вдохновение, как рука ляжет — так и получится рисунок. То ли «Девятый вал», то ли «Черный квадрат».Другое дело, если Вы хотите создать рисунок программно. Вот здесь как раз нужна математика, т.е знание формул.Тогда сможете рисовать синусоиды, графы, фракталы и прочую белиберду.
строго посередине листа, или чуть ниже, или выше, не суть. Суть в том, чтобы вводя определённые числа и подставляя их в формулу, получать изображение в нужном месте |
Для этого есть координаты экрана ( или видимой программой части экрана). Даже не знаю как еще на пальцах это объяснить.Ну, скажем так — левый верхний угол видимой части экрана (формы) имеет координаты 0,0, а соответсевенно правый нижний Width,Height — соответствует разрешению дисплея. Все остальное просчитывается исходя из задачи.
И не сомневайся даже . отдых — кайф, работа — лажа!
Источник: www.programmersforum.ru
Учебники. Программирование для начинающих.
Клиника- выберите клинику — Красногорск КТ и МРТ центр Подрезково Путилково Химки, 9.. Официальный сайт сети клиник YOURMED. Клиники в Химках, Красногорск, Путилково, Подрезково, Москва. Запись на прием к врачу онлайн.
Programm.ws — это сайт, на котором вы можете почитать литературу по языкам программирования , а так-же посмотреть примеры работающих программ на С++, ассемблере, паскале и много другого..
Программирование — в обычном понимании, это процесс создания компьютерных программ.
В узком смысле (так называемое кодирование) под программированием понимается написание инструкций — программ — на конкретном языке программирования (часто по уже имеющемуся алгоритму — плану, методу решения поставленной задачи). Соответственно, люди, которые этим занимаются, называются программистами (на профессиональном жаргоне — кодерами), а те, кто разрабатывает алгоритмы — алгоритмистами, специалистами предметной области, математиками.
В более широком смысле под программированием понимают весь спектр деятельности, связанный с созданием и поддержанием в рабочем состоянии программ — программного обеспечения ЭВМ. Более точен современный термин — «программная инженерия» (также иначе «инженерия ПО»). Сюда входят анализ и постановка задачи, проектирование программы, построение алгоритмов, разработка структур данных, написание текстов программ, отладка и тестирование программы (испытания программы), документирование, настройка (конфигурирование), доработка и сопровождение.
Delphi в задачах и примерах
Графика
33. Напишите программу, по поверхности окна которой перемещается графический объект, например кораблик
Вид окна программы приведен на рис. 1.31.
Рис. 1.30. Кораблик
Рис. 1.31. Простая мультипликация — кораблик, плывущий по морю
unit ship_;interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, ExtCtrls;type
TForml = class(TForm)
Timerl: TTimer;
procedure TimerlTimer(Sender: TObject);
procedure FormPaint(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
< Private declarations )
public
I Public declarations >
end;var
Forml: TForml;implementation
x,y: integer; // координаты корабля (базовой точки)// вычерчивает на поверхности формы кораблик
// или стирает его
procedure Parohod(x,y: integer; mode: boolean);
// x,y — координаты базовой точки кораблика
// mode: True — нарисовать, False — стереть
const
/ Базовые точки кораблика находятся в узлах сетки,
шаг которой определяет размер кораблика )
dx = 5; // шаг сетки по X
dy = 5; // шаг сетки по У
var
// корпус и надстройку будем рисовать
// при помощи метода Polygon
pi: array[1..7]of TPoint; // координаты точек корпуса
р2: array[1..8]of TPoint; // координаты точек надстройки
pc,bc: TColor; // текущей цвет карандаша и кистиbegin
if not mode then
begin
// стереть
Forml.Canvas.Brush.Color := clNavy;
Forml.Canvas.Pen.Color : = ClNavy;
Forml.Canvas.Rectangle(x,y+l,x+17*dx,y-10*dy);
Forml.Canvas.Brush.Color := clNavy;
// небо
if y-10*dy
Источник: programm.ws
Помогите кто-нибудь, нужно написать программу в Паскале ABC, и сделать вот такой кораблик.
sanyamazein8969: В общем, нужны самые простые модули, тип которые только начинают применять в 8-ом классе.
Wani4kaa: ну, мы в свое время применяли Чертежника и GraphABC
Ответы
Автор ответа: Wani4kaa
line(120, 20, 20, 140);
line(120, 20, 60, 150);
line(20, 140, 60, 150);
line(120, 20, 120, 160);
line(120, 140, 240, 140);
line(240, 140, 120, 20);
line(40, 160, 240, 160);
line(240, 160, 220, 200);
line(220, 200, 80, 200);
line(80, 200, 40, 160);
circle(100, 180, 10);
circle(140, 180, 10);
circle(180, 180, 10);
circle(245, 15, 15);
line(205, 18, 159, 18);
line(210, 38, 179, 67);
line(220, 58, 200, 78);
line(240, 58, 241, 88);
line(18, 19, 38, 38);
line(38, 38, 58, 19);
line(58, 19, 37, 27);
line(37, 27, 18, 19);
circle(120, 160, 5);
sanyamazein8969: Слушай, привет) А ты сможешь раскрасить этот рисунок? Вообще в любые краски, не твое усмотрение
Источник: sous-otvet.net