Зная координаты центральной точки, нужно найти координаты X1, X2, Y1, Y2
Зная координаты центральной точки, нужно найти координаты X1, X2, Y1, Y2
Последний раз редактировалось Item; 28.10.2016 в 19:26.
ну к примеру: Х=200 У=400 Z=просто есть
X1-5, Х2+5, У1-10, У2+10 это = 195, 205, 390, 410 разве ни так все просто?
Последний раз редактировалось SliM; 28.10.2016 в 19:48.
PHP код:
/*======================================
y2 *---------------*
| |
height | cy * |
| cx |
y1 *---------------*
x1 width x2
======================================*/
GetRectEdgesCoordsFromCenter(
Float:cx, Float:cy, Float:width, Float:height,
&Float:x1, &Float:y1, &Float:x2, &Float:y2)
{
static Float:width_div_2, Float:height_div_2;
width_div_2 = floatdiv(width, 2.0);
height_div_2 = floatdiv(height, 2.0);
x1 = cx - width_div_2, x2 = cx + width_div_2;
y1 = cy - height_div_2, y2 = cy + height_div_2;
return 1;
}
Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
Стол заказов:
Мои работы:
___up
За основу взята GetXYInFrontOfPlayer, пробуй
PHP код:
GetXYInFrontOfCenter(Float:cX, Float:cY, Float:width, Float:height, Float:angle, &Float:minX, &Float:minY, &Float:maxX, &Float:maxY)
{
minX = cX - ((width / 2.0) * floatsin(-angle, degrees));
minY = cY - ((height / 2.0) * floatcos(-angle, degrees));
maxX = cX + ((width / 2.0) * floatsin(-angle, degrees));
maxY = cY + ((height / 2.0) * floatcos(-angle, degrees));
}
Последний раз редактировалось Nexius_Tailer; 30.10.2016 в 17:36. Причина: / 2 -> / 2.0
Не хотите постоянно проверять обновления моих скриптов?
Подключите его последним, после всех остальных
Nexius's Update Checker
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)