|
Основной форум Сюда все проблемы связанные с программированием. |
16.01.2010, 22:29
|
#1
|
Оператор ЭВМ
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений (для 6 пользователей)
|
Отрисовка толстых линий
Как сделать толстую линию? Даже идей нет, как и наработок. И так же дела с векторами состоят(
|
(Offline)
|
|
16.01.2010, 22:36
|
#2
|
Задрот
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений (для 863 пользователей)
|
Ответ: Ошибка синтаксиса.
А какя связь между названием темы и ее содержанием?
|
(Offline)
|
|
16.01.2010, 22:37
|
#3
|
Задрот
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений (для 863 пользователей)
|
Ответ: Ошибка синтаксиса.
А вообще у линии есть угол , вот собственно толстая линия - это несколько обычных линий под одним и тем же углом. Значит, к координате X надо прибавлять косинус угла, а к Y - синус. Учите тригонометрию
|
(Offline)
|
|
16.01.2010, 22:46
|
#4
|
Оператор ЭВМ
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений (для 6 пользователей)
|
Ответ: Ошибка синтаксиса.
А как угол найти? ))
|
(Offline)
|
|
16.01.2010, 22:50
|
#5
|
Задрот
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений (для 863 пользователей)
|
Ответ: Ошибка синтаксиса.
Ну ты же паскаль юзаешь, ты и должет знать. В Блице есть команда Atan2, собственно она то и возвращала угол...
|
(Offline)
|
|
16.01.2010, 23:26
|
#6
|
Оператор ЭВМ
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений (для 6 пользователей)
|
Ответ: Ошибка синтаксиса.
И какая же в Паскале? Мой гугль не помогает) И хелп по МП тож
|
(Offline)
|
|
16.01.2010, 23:35
|
#7
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Ответ: Ошибка синтаксиса.
В MP не все так просто, надо свой алгоритм выдумывать.
Сейчас с наскока сообразить не могу, может потом поковыряюсь
|
(Offline)
|
|
17.01.2010, 10:16
|
#8
|
Задрот
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений (для 863 пользователей)
|
Ответ: Ошибка синтаксиса.
Ну можно логически подумать.... Есть две точки на плоскости, соответственно они представляют из себя прямоугольный треугольник. Ну вот значит надо вычислить этот угол, зная его синус(или косинус) . А найти этот самый синус можно, разделив длину противолежащего катета к гипотенузе. Косинус - эт вроде прилежащего к гипотенузе. тангенс - прилежащего к противолежащему...Ну в общем зная синус и косинус угла наверно сожно найти и угол
|
(Offline)
|
|
17.01.2010, 11:51
|
#9
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Ошибка синтаксиса.
я када граф часы делал, рисовал часовую стрелку как-то так:
drawline(x,y,w,h);
drawline(x+1,y,w,h);
drawline(x,y+1,w,h);
примерно ровно, если хочешь узнать точнее копай исходник в конце темы с noxOS
|
(Offline)
|
|
17.01.2010, 13:16
|
#10
|
Знающий
Регистрация: 26.07.2009
Адрес: Россия, Москва
Сообщений: 318
Написано 103 полезных сообщений (для 331 пользователей)
|
Ответ: Ошибка синтаксиса.
Ваще ничо не понял. Толстая линия == несколько тонких линий. В чем проблема?
|
(Offline)
|
|
17.01.2010, 13:45
|
#11
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Ответ: Ошибка синтаксиса.
Сообщение от Tronix
Ваще ничо не понял. Толстая линия == несколько тонких линий. В чем проблема?
|
По вертикали и горизонтали никаких, а так - угол (относительно OX) может быть a<90, 90<a<180, 180<a<270, 270<a<360, во всех этих случаях линии нужно рисовать по-разному.
|
(Offline)
|
|
17.01.2010, 16:08
|
#12
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: Ошибка синтаксиса.
рисуйте окружности. Радиус R - толщина линии. Над расстояниям - надо подумать..
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
17.01.2010, 23:35
|
#13
|
Знающий
Регистрация: 26.07.2009
Адрес: Россия, Москва
Сообщений: 318
Написано 103 полезных сообщений (для 331 пользователей)
|
Ответ: Ошибка синтаксиса.
Ну не знаю. Если MP не позволяет под углом линии рисовать - то классически по Брезенхаму. Всю жизнь так рисовал. Даже интро запиливал неплохие.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
18.01.2010, 16:51
|
#14
|
Оператор ЭВМ
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений (для 6 пользователей)
|
Ответ: Ошибка синтаксиса.
Сообщение от impersonalis
рисуйте окружности. Радиус R - толщина линии. Над расстояниям - надо подумать..
|
я об этом думал и даже что-то вывел(через формулу y=kx+b и последующем подставлением(долго)), но что делать с вектором?(Lib_vector)
Сообщение от cherepets
drawline(x,y,w,h);
drawline(x+1,y,w,h);
drawline(x,y+1,w,h);
|
не понял. Это разве не треугольник получается?
Павел, угол можно найти зная синус ИЛИ косинус, вроде=) А их найти по отношению проекций... Но получится ли.. Или зачем нам теперь вообще угол?
Сообщение от Павел
Значит, к координате X надо прибавлять косинус угла, а к Y - синус.
|
Вот и решение? О_О(/me сомневаиццо и затупилось)
Сообщение от Tronix
Ну не знаю. Если MP не позволяет под углом линии рисовать - то классически по Брезенхаму. Всю жизнь так рисовал. Даже интро запиливал неплохие.
|
Я немного не въехал, ни в метод, не в язык на котором написанно...
{130 просотров за 2 дня О_О}//offtop
Последний раз редактировалось VotapilD, 18.01.2010 в 20:31.
|
(Offline)
|
|
22.01.2010, 20:31
|
#15
|
Оператор ЭВМ
Регистрация: 07.12.2009
Адрес: Мытищи
Сообщений: 44
Написано 6 полезных сообщений (для 6 пользователей)
|
Ответ: Ошибка синтаксиса.
Сообщение от Tronix
Ну не знаю. Если MP не позволяет под углом линии рисовать - то классически по Брезенхаму. Всю жизнь так рисовал. Даже интро запиливал неплохие.
|
O_O А не долговато ли? Толстую линию по Брезенхаму?
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 18:28.
|