Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на языке Pascal

Выпуск № 065
от 11.12.2002, 09:30

Администратор:
Имя: Sensey
URL: Информационный ресурс
ICQ: 105679124
Украина, Харьков
О рассылке:
Задано вопросов: 114
Отправлено ответов: 305
Активность: 267.5 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

Pinman
Статус: Опытный
Общий рейтинг: 152.57
URL: Программирование и заработок
[Подробней >>]
X-RayMan
Статус: Начальный
Общий рейтинг: 144.44
[Подробней >>]
Vadim
Статус: Доверительный
Общий рейтинг: 147.72
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 112. Здравствуйте! Мне бы вот алгоритм для рисования граика x^2. Тока не дескретные точки - а чтобы как т... (ответов: 3)

Вопросов: 1, ответов: 3


 Вопрос № 112

Здравствуйте! Мне бы вот алгоритм для рисования граика x^2. Тока не дескретные точки - а чтобы как то обсчитывать промежутки между точками чтолбы плавные линии получались. По идее надо сохранять координаты предыдущей точки и рисовать линию от них до новых координат по алгоритму Брезенхама. Я тут написал.. но как то криво строит - тоесть видимо для построения правой части этот алгоритм в моём случае не пашет. Написал на паскалике со вставками на скорую руку - я вообще заметил - ЧЕСТНО СЛОВО - когда компилю, то график получается то дёрганный какой-то, то дискретный, то ваще... правда, а каждый раз када компилю - по разному немного выходит.
Пожалуйста скажите алгоритм и если можно - кто знает pascal - подправьте прогу pls. Надо к колледжу срочно...
PS: может мне тоже пригодятся знаменитые лабы Джонсона?


Приложение:


Вопрос отправлен: 08.12.2002, 09:27
Отправитель: Эдик Самосвал0в (zeleniy_kot@yahoo.com)

[Следующий вопрос >>] [Список вопросов]

Отвечает Pinman

Здравствуйте, Эдик Самосвал0в!
Честно говоря нет особо времени разбираться в программе. Расскажу, как я это делаю.
function func(x:real):real - функция
MoveTo(1,480-Func(Kx*(Xm));
for i:=2 to 640 do
LineTo(i,480-Func(Kx*(Xm+StepX*i));


Ответ отправлен: 08.12.2002, 22:03
Отправитель: Pinman


Отвечает X-RayMan

Доброго времени суток, Эдик Самосвал0в!
Не знаю как алгоритм Брезенхама, но у меня твоя прога не работает. Сначала закрашивает экран красивым синим цветом, потом рисует на нем не менее красивые красные полосочки, подчиняющиеся хаотическому закону :).
См. приложение. Изменяя значения k,k1,b,b1 - можно соответственно растягивать график по x и y, и смещать его по x и y. Изменяя zn с 1 на -1 можно менять направление веток.
П.С. Вместо uses stdprocs и процедуры initgraphic() подставь инициализацию графики, а то у меня это все в отдельном модуле.

Приложение:

Ответ отправлен: 08.12.2002, 23:46
Отправитель: X-RayMan


Отвечает Vadim

Приветствую Вас, Эдик Самосвал0в!
А нельзя было обойтись стандартным BGI-драйвером? И, соответственно, стандартной процедурой Line?
Для прорисовки линий в нестандартных графических режимах я использую такую процедуру (см. приложение). Работает без сучка и задоринки в любых режимах. Пиксел можно рисовать или в память или через биос.
Кстати, при таком низком разрешении трудно получить что-то красивое (я имею в виду графики :)). Почему бы не попробовать VESA-режимы?
И еще, при Y-разрешении в 200 пикселей, значения MinX и MaxX выглядят очень большими, либо надо использовать какой-то коэффициент, много меньше еденицы.


Приложение:

Ответ отправлен: 09.12.2002, 09:39
Отправитель: Vadim



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (40)
C / C++ (29)
Perl (6)
Delphi (22)
Pascal (24)
Basic / VBA (9)
Java / JavaScript (10)
PHP (5)
MySQL / MSSQL (8)
Пользователю
Windows 95/98/Me (31)
Windows NT/2000/XP (22)
"Железо" (30)
Поиск информации (13)
Администратору
Windows NT/2000/XP (12)
Linux / Unix (15)
Юристу
Гражданское право (10)
Семейное право (3)
Трудовое право (6)
КоАП (3)

Отправить вопрос всем экспертам выбранной рассылки.




Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное