Как найти координаты конца отрезка JS/PHP

Найти координаты конца отрезка, если известны координаты начала, его длина и угол наклона можно по формулам:

x = x0 + cos(α) * Z
x = x0 + sin(α) * Z

Где:
x, y – координаты конца отрезка,
x0, y0 – координаты начала отрезка,
α – угол наклона в радианах (относительно горизонта),
Z – длина отрезка.

Пример расчета координат и построении линии в canvas:

var x0 = 250;  // Начальная точка x
var y0 = 400;  // Начальная точка y  
var z = 400;   // Длина отрезка
var deg = -60; // Угол наклона, градусы

var x = Math.round(x0 + Math.cos(deg * Math.PI / 180) * z);
var y = Math.round(y0 + Math.sin(deg * Math.PI / 180) * z);

// Рисование линии
var canvas = document.getElementById('canvas');
var ctx = canvas.getContext('2d');	

ctx.beginPath();
ctx.lineWidth = 2;
ctx.strokeStyle = 'red';
ctx.moveTo(x0, y0);
ctx.lineTo(x, y);
ctx.stroke();
JS

Пример вывода линии в библиотеки GD:

$x0 = 250;  // Начальная точка x
$y0 = 400;  // Начальная точка y  
$z = 400;   // Длина отрезка
$deg = -60; // Угол наклона, градусы

$x = round($x0 + cos(deg2rad($deg)) * $z);
$y = round($y0 + sin(deg2rad($deg)) * $z);

// Рисование линии
$img = imagecreate(800, 800); 
$bg = imagecolorallocate($img, 0, 0, 0);
imagesetthickness($img, 2);
imageline($img, $x0, $y0, $x, $y, 0x000000);
imagepng($im);
imagedestroy($im);
PHP
22.02.2022, обновлено 21.03.2022
375

Комментарии 1

Alexander Kulikov Alexander Kulikov
23 февраля 2022 в 13:49
0
"Расщитать" от слова "щит" ))
но это частность - в целом спасибо

, чтобы добавить комментарий.

Другие публикации

Обработка изображений в PHP
Библиотека GD дает возможность работать с изображениями в PHP. Далее представлены примеры как изменить размер, вырезать часть изображения и т.д.
43350
+10
Как изменить Favicon сайта из JavaScript
Для замены Favicon во вкладке браузера достаточно у элемента link rel="icon" в атрибуте href указать путь до нового...
5803
+3
Генерация QR-кода в PHP
Вопрос генерации QR-кодов в PHP достаточно освещён, есть много библиотек, одной из них является «PHP QR Code» – быстрый и легкий класс, рассмотрим его применение совместно с графической библиотекой...
37497
+11
Перетаскивание элементов Drag and drop (jQuery UI Droppable)
UI Droppable – плагин, который позволяет сделать перетаскивание элементов мышью (Drag&Drop).
1501
+1
Изображения WebP в GD PHP
WebP – формат сжатия изображений, разработанный Google. Имеет более меньший размер файла по сравнению с JPG, но не поддерживается продуктами Apple.
13333
+6
Таблица Alt-кодов
Alt-код – метод вставки символа сочетанием нажатой клавиши Alt и числа, набранного на цифровой клавиатуре (Num Lock должен быть включен).
2284
+2