![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
leone.incognito |
![]()
Сообщение
#1
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 57 Пол: Мужской Реальное имя: Левон Репутация: ![]() ![]() ![]() |
Собственно сам ворпос:Как нарисовать !!точками!! круг или дугу(с помощью функции PutPixel?) в Паскале?
![]() Добавлено через 1 мин. хотя-бы принцып! -------------------- "Непросто тем,кто полагается на истину авторитета,вместо того,чтобы полагаться на авторитет истины"
Джэрольд Мэсси |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Собственно, переходим в полярную систему координат... Как нарисовать окружность в полярной системе? Правильно, Phi изменяем от 0 до 360 с нужным тебе шагом, R остается неизменным. Все что тебе осталось - это вот тут:
Графика взять процедуру перевода координат из полярной СК в декартову, и отрисовать точки |
leone.incognito |
![]()
Сообщение
#3
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 57 Пол: Мужской Реальное имя: Левон Репутация: ![]() ![]() ![]() |
хе-хе.А сколько лет мне далжно быть чтоб лазить в этом форуме?(А так : спосибо)
-------------------- "Непросто тем,кто полагается на истину авторитета,вместо того,чтобы полагаться на авторитет истины"
Джэрольд Мэсси |
compiler |
![]()
Сообщение
#4
|
Человек ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 050 Пол: Мужской Реальное имя: Станислав Репутация: ![]() ![]() ![]() |
у меня сейчас немного похожая задача возникает, поетому я тут обдумывал много способов...
если тебя пугает полярная система координат или тригонометрия, то круг можна нарисовать так ![]() 1)найти координаты точки А нам нужна любая начальная точка... для этого выражаем одну координату через другое(уравнение длины отрезка), а вторую координату оставляем такой как есть 2)Шаг нам необходимо выбрать шаг(длинна АС) если шаг задается в длине дуги(а не отрезка), то находим длину отрезка(через пи). 3)треугольник АСО выражаем длинны АС и СО 4)система уравнений 2 уравнения, 2 неизвестных. решаем... рисуем точку в получиных координатах ЗЫ так как использовались уравнения 2-го порядка будут моменты когда надо будет делать выбор... но в круге это не важно ЗЗЫ если пространство трехмерное то необходима еще одна точка(например точка напротив А) для третьего уравнения. ЗЗЗЫ( ![]() -------------------- Спасибо!
Удачи! |
leone.incognito |
![]()
Сообщение
#5
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 57 Пол: Мужской Реальное имя: Левон Репутация: ![]() ![]() ![]() |
а моно-ли не использовать шаг... а определить его с помощью угла?(насчёт предыд.сообщения :я перешёл в девятый) .Дело в том что основная моя задача создать массив точек в ТРЁХ измерениях ,использовать какую-нибудь из них как ось и прокрутить всё это вокруг неё. Я уже писал нечто подобное в алгоритмах но там мне указали на квантерионы(так они наз.?) и всё.Я почитал статьи-обалдел ....
![]() ![]() Добавлено через 4 мин. а так спасибо -------------------- "Непросто тем,кто полагается на истину авторитета,вместо того,чтобы полагаться на авторитет истины"
Джэрольд Мэсси |
klem4 |
![]()
Сообщение
#6
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
uses graph; -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
Archon |
![]()
Сообщение
#7
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 618 Пол: Мужской Репутация: ![]() ![]() ![]() |
Странно, что никто не вспомнил алгоритм Брезенхама для рисования окружности. Вот подробное описание вместе с реализацией на Паскале: МИФ N 4(7)/1998 Алгоритм Брезенхема построения окружности
-------------------- Close the World...txeN eht nepO
|
Чужак |
![]()
Сообщение
#8
|
![]() меркантильный ![]() ![]() ![]() Группа: Пользователи Сообщений: 161 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вот смотри-эллипс не только отрисовывается по точкам,
но и вращается. Как реализовывать систему координат, объяснял на форуме volvo.
Убираешь отсюда цикл while i<360 do, убираешь ClearDevice;и angl:=angl+0.01; -это все для вращения. И вот-отрисовка эллипса по точкам. А часный случай эллипса-это круг. -------------------- Смысл откроется тебе. Красками играя
Жизнь предстанет как поток без конца и края. В этом мире порой разбиваютсямечты Но чтобы он стал другой Вдруг в него приходишь ТЫ... После странствий и скитаний настают другие времена. Старая волна уходит и приходит новая волна. |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 17:39 |