Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.12.2016, 12:31
Интересующийся
Отправить личное сообщение для ryslan-yc Посмотреть профиль Найти все сообщения от ryslan-yc
 
Регистрация: 18.12.2016
Сообщений: 23

Геометрия, система кординат, организовать функцыю JS
Здравствуйте!
Вот делаю одно приложение в браузере где система кординат XY
также наклон объекта incline,
//наклон (0:в гору 90:вправо +-180:вниз -90:влево)
Нужно организовать метод obj.goo(); который будет вызывать метод
this.gooXY(стать по Х,стать по Y); учитывая наклон, если наклон 45 а
функция вызвана с аргументом 50 то логично стать this.gooXY(25,25);,
если наклон 90 то логично что нужно вызывать так this.gooXY(50,0);
и так далее , нужно организовать этот метод помогите
Ответить с цитированием
  #2 (permalink)  
Старый 18.12.2016, 14:49
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,086

Сообщение от ryslan-yc
50 то логично стать this.gooXY(25,25);,
логично не 25, а 35.36
alert(Math.sqrt(35.36 * 35.36 + 35.36 * 35.36)|0);
Ответить с цитированием
  #3 (permalink)  
Старый 18.12.2016, 18:43
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

var obj = {
	gooXY: function() { console.log.apply(console, arguments); }
};

obj.goo = function(radius, incline) {
	var point = fn(radius, incline);
	this.gooXY(point.x, point.y);

	// Сама функция, которая вычисляет координаты в зависимости от радиуса и наклона
	function fn(r, t) {
   		t = 90 - t;

		return {
			x: r * Math.cos(Math.PI * t / 180),
			y: r * Math.sin(Math.PI * t / 180)
		}
	}
};

obj.goo(50, 45);
Ответить с цитированием
  #4 (permalink)  
Старый 18.12.2016, 19:19
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,086

Malleys,
вы уверены что строка 11 нужна?
Ответить с цитированием
  #5 (permalink)  
Старый 18.12.2016, 19:31
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Сообщение от рони Посмотреть сообщение
Malleys,
вы уверены что строка 11 нужна?
Да поскольку //наклон (0:в гору 90:вправо +-180:вниз -90:влево)

Т. е. углы у него отчитываются не так как обычно в полярных координатах(начиная с 0deg и против часовой стрелки), а начиная с 90deg и по часовой стрелке.
Ответить с цитированием
  #6 (permalink)  
Старый 18.12.2016, 19:34
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,086

Malleys,
ок
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Операционная Система на JS Icat Общие вопросы Javascript 3 17.04.2018 22:54
Создание теста на JS сложная система Berowz Общие вопросы Javascript 7 10.03.2012 23:42
файловая система и js - возможно ли? jestalnar Общие вопросы Javascript 3 12.06.2009 19:24