Модераторы: SoWa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Рисование дуги, Как нарисовать дугу в качестве параметро 
:(
    Опции темы
TBC
Дата 1.9.2007, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 5.8.2006
Где: Южный Урал

Репутация: нет
Всего: нет



Как нарисовать дугу в качестве параметров у которой координаты начальной точки, конечной точки, координаты центра, радиус. Может есть у кого готовая функция?
Спасибо.
--------------------
http://cadcamkbm.com - 1-я в мире интеллектуальная система-автоматhttp://cnconline.ru - ЧПУ программа в автомате с DXF. Нет ни у кого в мире!
PM MAIL WWW   Вверх
szz
Дата 1.9.2007, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 6
Всего: 33



А как это координаты начала и конца? 
Если у нас даны кооржинаты центра окружности и радиус, тот тут уместно говорить не о координатах
начала и конца, а о углах.

И функцию написать легко, достаточно вспомнить школьные базы тригонометрии.


--------------------
PM   Вверх
TBC
Дата 1.9.2007, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 5.8.2006
Где: Южный Урал

Репутация: нет
Всего: нет



Если бы в качестве входных параметров были начальный и конечный угол дуги, координаты центра радиуса и сам радиус было бы проще, у меня это даже уже реализовано в веб-сервисе просмотра DXF-файлов системы AutoCAD, но я имею в качесве кходных параметров ИМЕННО координаты начальной и конечной  точки дуги, центра радиуса и сам радиус и что то буксую здесь. Это мне нужно для просмотрщика управляющей программы для станка с ЧПУ.

"И функцию написать легко, достаточно вспомнить школьные базы тригонометрии. "

Вроде помню, но может уже стареть начал, 52 года мне.

--------------------
http://cadcamkbm.com - 1-я в мире интеллектуальная система-автоматhttp://cnconline.ru - ЧПУ программа в автомате с DXF. Нет ни у кого в мире!
PM MAIL WWW   Вверх
szz
Дата 4.9.2007, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 6
Всего: 33



Если у нас координаты, то тут ведь может ошибочка произойти.
Координата точки может не находится на самой окружности. Что в этом случае делать?
Одно из двух 
1. или принять расстояние от точки до центра за радиус (отбросив тот радиус, что нам задали)
2. или высчитать угол этой точки от центра, таким образом наплевав на фактическое расположение точки.

А может у нас такие точные данные, что координата точки будет действительно находиться на окружности?

Я бы выбрал второй вариант: вычислить угол, потому что отбрасывать заданный радиус как-то не хочется.

А угол вычистить просто - по арктангенсу.
Например будет считать угол начальной точки.
Код

var  начальная: {x:234, y:-32};
var  центр: {x:20, y:123};
// вычислим кооринаты начальной точки ОТНОСИТЕЛЬНО центра
var отношение = { 
   x :  центр.x  -  начальная.x, 
   y :  центр.y  -  начальная.y,
};
// легко вычисляем тангенс:
var тангенс_угла = отношение.x / отношение.y;
// и арктангенсом берем угол:
var угол = Math.atan(тангенс_угла);


Вот, потом также вычисляем угол второй точки, а по углам как по накатанной  smile 


--------------------
PM   Вверх
TBC
Дата 5.9.2007, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 5.8.2006
Где: Южный Урал

Репутация: нет
Всего: нет



Уважаемый szz! Спасибо за консультацию.
Цитата

 // и арктангенсом берем угол:
var угол = Math.atan(тангенс_угла);

Вот это дело то я и подзабыл. Но у меня вопрос! А не ошиблись ли Вы
в написании вот этого выражения:
Цитата

// легко вычисляем тангенс:
var тангенс_угла = отношение.x / отношение.y;

Так будет наверное правильней:
var тангенс_угла = отношение.y / отношение.x;
?
И хотелось бы получить ссылку на Ваш сайт. Мало ли как сложится впереди.
Возможно опять понадобятся консультации по математике, а может и заказ
надо будет сделать. Естественно не бескорыстно!

Добавлено через 4 минуты и 14 секунд
И я ошибся ставя задачу. На входе имеем координаты начальной точки, центра радиуса, конечной точки, а сам радиус легко вычисляем с помощью теоремы Пифагора.

--------------------
http://cadcamkbm.com - 1-я в мире интеллектуальная система-автоматhttp://cnconline.ru - ЧПУ программа в автомате с DXF. Нет ни у кого в мире!
PM MAIL WWW   Вверх
szz
Дата 5.9.2007, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 6
Всего: 33



Значит все-таки не было радиуса, я же думаю, что-то тут не так... Значит отбрасывать ничего не придется.

Дада, тангегс набарот... это, понимаете был конец рабочего дня, мозг был раскален.

Сайт держу в секрете, если хотите лично связаться - жмите ссылочку PM внизу слева от этого сообщения  smile 



--------------------
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Flash"
AlDev
SoWa
  • Если вы хотите предложить кому-либо работу, то пишите или в личку, или оставляйте сообщения в специально предназначеном для этого форуме "Объявления о найме специалистов"
  • Один вопрос - одна тема. Не надо переходов от одного вопроса к другому.
  • Если вы хотите показать какой-нибудь ваш мульт, причём показать, а не предоставить исходник, то вам сюда
  • Вопросы по разработке интернет-приложений на Flex и вопросы по MXML пишите в раздел Flex
  • Смотрим в будущее. ActionScript 3 обсуждается в форуме ActionScript 3
  • Новости из мира Flash.
  • New! [code=ascript][/code] - подсветка ActionScript + wikipedia help

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, AlDev, SoWa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | ActionScript 1,2 | Следующая тема »


 




[ Время генерации скрипта: 0.0596 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.