Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 29.07.2011, 20:54
Dmitriy913 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy913 Найти все сообщения от Dmitriy913
  № 1  
Ответить с цитированием
Dmitriy913

Регистрация: Feb 2011
Сообщений: 21
Question Помогите с построением дуги

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

Задача такая:
Нужно построить дугу. У меня есть координаты начальной точки, координаты конечной точки и центральный угол. Дуга должна идти от начальной точки к конечной, с заданным шагом. Помогите, как всё это дело описать, целый день ищу в сети, ничего не нашёл подходящего =( На форуме видел пример с рисованием дуги против часовой стрелки от точки до точки с шагом, но там ещё были координаты центра, а в моём случае они неизвестны.

Помогите пожалуйста, кто чем может!)

P.S. curveTo не предлагать =)


Последний раз редактировалось Dmitriy913; 29.07.2011 в 20:57.
Старый 29.07.2011, 21:12
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 2  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Зная координаты начальной и конечной точек и центральный угол можно определить координаты центра )

Правда, там множество корней уравнения... Всего из двух или одного, если центральный угол кратен пи радиан.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.


Последний раз редактировалось dimarik; 29.07.2011 в 22:55.
Старый 29.07.2011, 21:35
Dmitriy913 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy913 Найти все сообщения от Dmitriy913
  № 3  
Ответить с цитированием
Dmitriy913

Регистрация: Feb 2011
Сообщений: 21
А не подскажете, как? Я ума не приложу. хотелось бы вычислений поменьше при всём при этом делать.

Старый 29.07.2011, 21:58
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 4  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
В мое время это была геометрия пятого класса.
Точка A - первая, точка B - вторая. Построим отрезок AB. Перпендикуляр к его половине определяет прямую на которой будет располагаться центр окружности. Таких центров будет два -- по разные стороны отрезка. Осталось выразить радиус окружности через центральный угол. Зная радиус можно построить уравнение окружности. Построить графически дугу в семантике ActionScript становится тривиальной задачей.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 29.07.2011, 22:16
Dmitriy913 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy913 Найти все сообщения от Dmitriy913
  № 5  
Ответить с цитированием
Dmitriy913

Регистрация: Feb 2011
Сообщений: 21
Цитата:
Сообщение от dimarik Посмотреть сообщение
В мое время это была геометрия пятого класса.
Стыдно признать, но я всю геометрию 5 класса забыл, голова совершенно не варит после дня поисков... Можно хотя бы базовый пример в формулах, даже без кода? Попробую разобраться

Добавлено через 5 минут
Вроде вкуриваю... радиус выразится по теореме Пифагора:
Код AS3:
r^2 = a^2 + b^2
Уравнение окружности:
Код AS3:
(x - a)^2 + (y - b)^2 = R^2
А как дугу-то построить?
И кстати, мне ведь неизвестны координаты центра

Добавлено через 22 минуты
Нет, всё равно не понимаю, как мне найти координаты этих двух центров... Ну распишите кто-нибудь формулами хотя бы!)


Последний раз редактировалось Dmitriy913; 29.07.2011 в 22:22.
Старый 29.07.2011, 22:47
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 6  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Вам известен центральный угол. Выразим радиус как отношение половины отрезка AB к синусу половины центрального угла.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 29.07.2011, 22:58
Dmitriy913 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy913 Найти все сообщения от Dmitriy913
  № 7  
Ответить с цитированием
Dmitriy913

Регистрация: Feb 2011
Сообщений: 21
Цитата:
Сообщение от dimarik Посмотреть сообщение
...отношение половины отрезка AB к синусу половины центрального угла.
А корень извлекать не надо? И как дальше действовать, я всё равно не понимаю?...

P.S. нет, корень не надо, это из другой формулы

Старый 29.07.2011, 23:22
Vishapakahr вне форума Посмотреть профиль Отправить личное сообщение для Vishapakahr Найти все сообщения от Vishapakahr
  № 8  
Ответить с цитированием
Vishapakahr

Регистрация: Apr 2009
Адрес: Armenia , Yerevan
Сообщений: 145
если половину отрезка обозначить через 'a' a половину угла через alpha то r=a/Math.sin(alpha/2); h=a/Math.cos(alpha/2);
__________________
Urartu is a neoHittite and ProtoArmenian kingdom !!

Старый 29.07.2011, 23:32
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 9  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Не не. Тогда r = a / Math.sin(alpha), ведь "половину угла через alpha" )
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 29.07.2011, 23:39
Dmitriy913 вне форума Посмотреть профиль Отправить личное сообщение для Dmitriy913 Найти все сообщения от Dmitriy913
  № 10  
Ответить с цитированием
Dmitriy913

Регистрация: Feb 2011
Сообщений: 21
Ну а дальше-то как? Как уравнение окружности поможет в построении дуги, как всё выразить?

Создать новую тему Ответ Часовой пояс GMT +4, время: 21:46.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
Дуга , построение кривой
Опции темы
Опции просмотра

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

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


 


Часовой пояс GMT +4, время: 21:46.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.