Помогите [Решено]Vector

  • Автор темы Автор темы Derik
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Derik

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Derik
Код:
Location location = player.getLocation();
 Vector vec = player.getLocation().getDirection();
 z = vec.getZ() - 0.045;
 vec.setZ(z);
 location.setDirection(vec);
               
 StandSpawn(player, location, name);

Данный код спавнит стойку, но как ее развернуть на 180 градусов? Чтобы стояла лицом к игроку, а не задницей. Пробую z поменять, но больше чем на 45 градусов стойка не поворачивается.
 
МБ надо менять yaw и pitch?
 
Пробуй так

Код:
Location location = player.getEyeLocation();
Vector vec = location.getDirection();
double x = -vec.getX();
double z = -vec.getZ();
Vector vector = new Vector(x, 0, z).normalize();
location.setDirection(vector);
StandSpawn(player, location, name);

А вообще, если нужно развернуть вектор на какой-нибудь угол, то используй вот эти формулы
x = x * cos A - y * sin A
y = x * sin A + y * cos A
 
Вот про косинусы и синуксы, можно как нить по подробней. Ну или ссылку на урок.
 
Геометрия. 8 класс
Разве в школе учат нормально пользоваться косинусами и синусами? Нас только учили находить их в треугольниках. Типо синус угла А равен противолежайшую сторону делить на гипотенузу. Косинус = прилежащую на гипотенузу.

И наврятли эти знания можно будет использовать в коде.
 
Вот про косинусы и синуксы, можно как нить по подробней. Ну или ссылку на урок.
Чувак, во-первых ты даже не сказал, работает ли тот код, что я тебе дал. Если нет, то я бы тебе помог дальше, если да, то можно было бы и спасибо сказать. А что касается тригонометрии, то я уже рассказал про эти формулы.
У нас есть вектор a {1;0;3} (1 - х, 0 - у, z - 3) допустим. Ну и для наглядности и простоты счёта, предположим, что нужно повернуть его на 90 градусов в плоскости XZ. Делается это так:
x = x * cos A - y * sin A
y = x * sin A + y * cos A
Давай подставим значения.
x = 1 * cos 90 - 3 * sin 90
x = -3
y = x * sin 90 + y * cos 90
y = 1
Получаем новый вектор b{-3; 0; 1}
Проверь на тетрадном листочке, если не веришь
Геометрия. 8 класс
Такую охинею я ещё ни разу не читал. Какой 8 класс, тебя куда черти то загнали? В 8 классе давали понятия их, а вот тригонометрия примерно со второй половины первого семестра в 10 классе, и то, там вас не обучат ни чему, что действительно может пригодиться. Спасибо хоть на том, что о векторах расскажут, что сейчас, как видно, актуально, и то, те знания будут просто каплей в море... В море бензина
 
Последнее редактирование:
Статус
Закрыто для дальнейших ответов.
Назад
Верх