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

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

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

Регистрация: Nov 2016
Сообщений: 3
По умолчанию Проблема с радиусом окружности

С помощью цикла создаю несколько точек, которые располагаются по окружности с радиусом 200, но после компиляции расстояние между центром окружности и точками не у всех одинаковое. Как это можно исправить?


Код AS3:
public function getCoordinates(centerPoint:Point,lengthLine:Number,angleInDegree:Number):Point
{
	const ANGLE_IN_RADIANS:Number = angleInDegree * Math.PI / 180;
 
	//Стороны:
	const SIDE_C:Number = lengthLine;
	const SIDE_B:Number = Math.sin(ANGLE_IN_RADIANS) * SIDE_C;
	const SIDE_A:Number = Math.cos(ANGLE_IN_RADIANS) * SIDE_C;
 
	return new Point(centerPoint.x - SIDE_B, centerPoint.y - SIDE_A);
}
 
 
const POINT_OF_IMPEDIMENT:Point = new Point(400, 400); 
const AMOUNT_OF_THE_POINTS_AROUND_THE_IMPEDINT:int = 360 / 36;
 
for (var indexThePointAroundTheImpediment:int = 0; indexThePointAroundTheImpediment < AMOUNT_OF_THE_POINTS_AROUND_THE_IMPEDINT; indexThePointAroundTheImpediment++)
{
	const ANGLE_OF_POINT:int = 36 * indexThePointAroundTheImpediment;
	const COORDINATES_THE_POINT_AROUND_THE_IMPEDIMENT:Point = this.getCoordinates(POINT_OF_IMPEDIMENT, 200, ANGLE_OF_POINT);
	const DISTANCE_BETWEEN_THE_POINT_AND_THE_IMPEDIMENT:Number = Point.distance(COORDINATES_THE_POINT_AROUND_THE_IMPEDIMENT, POINT_OF_IMPEDIMENT);
 
	trace(DISTANCE_BETWEEN_THE_POINT_AND_THE_IMPEDIMENT);
}

200
200
200
200
200.00000000000003
200
200
200.00000000000003
199.99999999999997
200.00000000000003

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

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

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


 


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


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