![]() |
|
Модераторы: Snowy, Alexeis, MetalFan |
![]()
|
|
| dimych83 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 21.3.2007 Где: Красноярск Репутация: нет Всего: нет |
Добрый день!
Народ, поделитесь пожалуйста функцией для рисования линии под углом Что-нибудь типа: LineAngle(x: integer; y:integer; length: integer; angle: integer). Это сообщение отредактировал(а) dimych83 - 28.3.2008, 06:30 |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
dimych83, аналитическую геометрию учить нада
Уравнение прямой 1) y = k * x + b; 2) y = tg(a) * x + b оно же выраженное через начальную и конечную точки 3) (y1 - y) / (y2 - y1) = (x - x1) / (x2 - x1) Уравнения 2 и 3 позволяют выразить координаты x2, y2 через tg(a) и b. А длинна линии length не позволяет построить одну кривую, при заданных условиях можно построить более одной прямой, так как длинна length^2 = (x2 - x1)^2 + (y2 - y1)^2 связана с координатами квадратным уравнением -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| dimych83 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 21.3.2007 Где: Красноярск Репутация: нет Всего: нет |
Блин, никогда терпеть не мог математику, ни в школе ни в универе...
хорошо хоть по жизни редко с ней сталкиваюсь. |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 6 Всего: 27 |
Alexeis, Зачем так сложно?
Всё гораздо проще! x2 = sin(angleRad)*length; y2 = cos(angleRad)*length; Всё. Вот функция, возвращающая x2 и y2
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
Bitter, ну ну, а теперь проверь
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 6 Всего: 27 |
Проверял. что не так?
вот как ей пользоваться
Всё работает как часы... |
|||
|
||||
| dimych83 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 21.3.2007 Где: Красноярск Репутация: нет Всего: нет |
Спасибо большое!
Правда мне надо чтобы координаты X и Y были центром линии а не началом, но это доработаю... надо просто нарисовать вторую линию с приращением градуса равным 180. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Звук, графика и видео" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |