Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Технологии программирования > Программирование графики
Перезагрузить страницу Поворот треугольника
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Prosto_Toxa Prosto_Toxa вне форума
Новичок
 
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 28.08.2014
По умолчанию Поворот треугольника - 19.05.2015, 19:01

Здравствуйте.

Пытаюсь повернуть треугольник на 45 градусов.
Получается вот такая шляпа:
***

Что я делаю не так?

Функция для получения координат нового икса:
cpp Код:
float xNew(float x, float xs, float y, float ys)
{
    return (( cos(45.0) * (x - xs) + sin(45.0) * (y - ys)) + xs);
}
x, y - это текущие x[i] и y[i] (x1,x2,x3, y1,y2,y3)
xs = (x1+x2+x3)/3

Ну и:
cpp Код:
float yNew(float x, float xs, float y, float ys)
{
    return (( cos(45.0) * (y - ys) - sin(45.0) * (x - xs)) + ys);
}

Последний раз редактировалось Egorro; 19.05.2015 в 19:04 Причина: файлопомойка
Ответить с цитированием
  (#2 (permalink)) Старый
Egorro Egorro вне форума
Специалист
 
Аватар для Egorro
 
Сообщений: 13,078
Сказал(а) спасибо: 402
Поблагодарили 2,128 раз(а) в 2,056 сообщениях
Регистрация: 06.01.2011
Адрес: Чубаксары
По умолчанию 19.05.2015, 19:04

Как присоединить картинку? - Компьютерный форум
Ответить с цитированием
  (#3 (permalink)) Старый
Prosto_Toxa Prosto_Toxa вне форума
Новичок
 
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 28.08.2014
По умолчанию 19.05.2015, 19:53

До и после:
Миниатюры
aacuiyiiue.png  
Ответить с цитированием
  (#4 (permalink)) Старый
beroal beroal вне форума
Member
 
Сообщений: 108
Сказал(а) спасибо: 3
Поблагодарили 4 раз(а) в 4 сообщениях
Регистрация: 13.12.2002
По умолчанию 20.05.2015, 11:28

Выражения вроде правильные. Возможно, ошибка в другом месте программы.
Ответить с цитированием
  (#5 (permalink)) Старый
Alexiski Alexiski на форуме
Любитель давать советы
 
Сообщений: 4,266
Сказал(а) спасибо: 27
Поблагодарили 54 раз(а) в 54 сообщениях
Регистрация: 16.10.2005
По умолчанию 20.05.2015, 16:39

cpp Код:
float xNew(float x, float xs, float y, float ys)
{
    return (( cos(45.0) * (x - xs) - sin(45.0) * (y - ys)) + xs);
}
float yNew(float x, float xs, float y, float ys)
{
    return (( cos(45.0) * (y - ys) + sin(45.0) * (x - xs)) + ys);
}

То есть знаки перепутаны в обеих процедурах
Ответить с цитированием
Ads.
  (#6 (permalink)) Старый
beroal beroal вне форума
Member
 
Сообщений: 108
Сказал(а) спасибо: 3
Поблагодарили 4 раз(а) в 4 сообщениях
Регистрация: 13.12.2002
По умолчанию 20.05.2015, 16:48

Цитата:
Сообщение от Alexiski Посмотреть сообщение
То есть знаки перепутаны в обеих процедурах
В ваших выражениях замените 45.0 на -45.0 и получите выражения, которые написал Prosto_Toxa. Такого искажения, как на картинке, быть не должно.
Ответить с цитированием
  (#7 (permalink)) Старый
Prosto_Toxa Prosto_Toxa вне форума
Новичок
 
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 28.08.2014
По умолчанию 20.05.2015, 16:53

Цитата:
Сообщение от Alexiski Посмотреть сообщение
То есть знаки перепутаны в обеих процедурах
Не помогло.
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поворот объекта n@t Программирование графики 0 26.09.2011 00:21
Как определить параметры треугольника naymetal Pascal 2 01.07.2011 23:48
проблема с БД и построением треугольника Nickothin Prolog 14 14.11.2010 23:26
Программа для сравнивания площади треугольника skamaica С/С++ 1 05.11.2008 22:07
Описанная окружность треугольника dorfe Prolog 3 24.01.2008 14:31
Вычислить площадь полученного треугольника Sid0001 Вопросы начинающих программистов 5 24.10.2006 18:32
Программа на определение типа треугольника на C++ Katrinka Вопросы начинающих программистов 5 17.05.2006 01:07
Поворот!! Tough Prolog 1 06.12.2005 12:30
Как вычислить площадь треугольника в С++ imported_Marinchik Вопросы начинающих программистов 5 13.06.2005 14:30
Площадь треугольника March Prolog 2 01.03.2005 10:42
Движение треугольника как реализовать emm Pascal 5 23.02.2005 14:27
Заливка треугольника цветом _Cyclope Алгоритмы 4 09.02.2004 10:26



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов