С Новым годом! Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.59/34: Рейтинг темы: голосов - 34, средняя оценка - 4.59
 Аватар для tonline_kms65
-16 / 0 / 0
Регистрация: 17.09.2016
Сообщений: 224

Как развернуть одну из координат угла

09.09.2017, 13:44. Показов 7101. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем здравствуйте.
Такая проблема у меня появилась, я не могу сообразить как можно развернуть одно из полученных значений угла сущности.
Как бы понятнее объяснить.
Например у меня есть сущность:
с позицией float pos[3]
pos[0] = 200.0;
pos[1] = 100.0;
pos[2] = 0.0;
и есть углы этой сущности float ang[3] (направление "взгляда")
ang[0] = 100.0;
ang[1] = 50.0;
ang[2] = 10.0;

Мне нужно развернуть одно из значений угла, например ang[2] в противоположную сторону.
Как это можно сделать? Перепробовал разные варианты, всё не то.

Один из вариантов - получаю из углов вектор направления.
GetAngleVectors(ang, vecDir, NULL_VECTOR, NULL_VECTOR);
и делаю этот вектор негативным (*-1)
NegateVector(vecDir);
после получаю уже из негативного вектора углы float fwd[3]
GetAngleVectors(vecDir, fwd, NULL_VECTOR, NULL_VECTOR)
к сожалению результат не тот.
Кто с таким сталкивался, отпишитесь пожалуйста. Может кто что придумал.
Точно такая-же, но нерешенная тема есть здесь

У меня просьба, пожалуйста без предложений кватернионов, матриц поворота, углов Эйлера и т.д.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.09.2017, 13:44
Ответы с готовыми решениями:

Как развернуть систему координат формы
Как развернуть систему координат формы? чтоб отсчёт шел с нижнего угла а не с верхнего

Как закрыть одну форму, и развернуть другую
Ребята, не пойму почему после выбора radioButton, я хочу закрыть окно и открыть форму с окнами, но происходить иное: опускается окно...

Как свернуть две формы в одну иконку в трей и развернуть
И так думаю всё понятно по названию темы но еще раз скажу у меня две формы при сворачивании одной должна свернуться другая, но Private Sub...

27
44 / 44 / 19
Регистрация: 04.05.2014
Сообщений: 190
09.09.2017, 14:21
Что такое угол сущности? В каких единицах измерения все эти цифры?

Добавлено через 4 минуты
ang[2] =360 - ang[2]
сработает?
0
 Аватар для tonline_kms65
-16 / 0 / 0
Регистрация: 17.09.2016
Сообщений: 224
09.09.2017, 15:50  [ТС]
Углы это, грубо говоря, xyz координаты направления в 3d пространстве сущности(ее взгляда)
0
Айлурофил
 Аватар для Massaraksh7
511 / 445 / 111
Регистрация: 27.05.2017
Сообщений: 2,665
Записей в блоге: 5
09.09.2017, 16:31
Смещаете всё в точку (0,0,0), меняете угол, и смещаете обратно.
t(i)=ang(i)-pos(i)
t(i0)=-t(i0)
ang(i)=t(i)+pos(i)
0
 Аватар для tonline_kms65
-16 / 0 / 0
Регистрация: 17.09.2016
Сообщений: 224
09.09.2017, 19:00  [ТС]
Вот это интересно. А для чего такой маневр? Что он даёт?
Делать это в цикле?

Добавлено через 50 минут
Цитата Сообщение от cordfield Посмотреть сообщение
В каких единицах измерения все эти цифры?
Честно сказать - сам не пойму. Я даже где-то такую тему поднимал, то-ли это синус угла, то-ли радианы.
Кликните здесь для просмотра всего текста
dron [0] 2.020084/[1] 156.586502/[2] -0.071075
client [0] 2.904000/[1] 157.120056/[2] 0.000000
dron [0] 3.020084/[1] 157.586502/[2] 0.928924
client [0] 2.904000/[1] 157.120056/[2] 0.000000
dron [0] 2.020084/[1] 156.586502/[2] -0.071075
client [0] 2.904000/[1] 157.120056/[2] 0.000000
dron [0] 3.020084/[1] 157.586502/[2] 0.928924
client [0] 2.904000/[1] 157.120056/[2] 0.000000
dron [0] 2.020084/[1] 156.586502/[2] -0.071075
client [0] 2.904000/[1] 157.120056/[2] 0.000000
dron [0] 3.020084/[1] 157.586502/[2] 0.928924
client [0] 2.904000/[1] 157.120056/[2] 0.000000
dron [0] 2.020084/[1] 156.586502/[2] -0.071075
client [0] 2.904000/[1] 157.120056/[2] 0.000000
dron [0] 3.020084/[1] 157.586502/[2] 0.928924
client [0] 2.904000/[1] 157.120056/[2] 0.000000
dron [0] 2.020084/[1] 156.586502/[2] -0.071075
client [0] 2.904000/[1] 157.120056/[2] 0.000000

Я пытаюсь сравнивать именно в этих таинственных значениях.
Но значения не выходят за пределы 360. Возможно что это градусы.

Добавлено через 21 минуту
Цитата Сообщение от cordfield Посмотреть сообщение
ang[2] =360 - ang[2]
сработает?
Работает, но очень неуверенно. Я такой вариант пробовал уже.
Для чего мне это нужно - у меня игрок удалённо вызывает эту самую сущность (ENT). Непосредственно поворот я делаю прибавлением значений к каждому из 3 значений угла ENT. За основу, для сравнения, я беру углы игрока. Но так как игрок смотрит на ENT, она естественно, разворачивается к игроку задом, т.е. в направлении взгляда игрока. Я считаю это самый дешевый вариант, который не грузит процессор. Но вот есть такой косяк. А как с ним бороться не знаю.

Кликните здесь для просмотра всего текста
if(client_angle[0] > drone_angle[0]){ // сравниваю угол игрока client_angle[0] с текущим углом ENT drone_angle[0]
drone_angle[0]=FloatAdd(drone_angle[0], 1.0); //прибавляю значение с частотой 1.0
}else{
drone_angle[0]=FloatSub(drone_angle[0], 1.0); // отнимаю значение с частотой 1.0
}
// и т.д.
if(client_angle[1] > drone_angle[1]){
drone_angle[1]=FloatAdd(drone_angle[1], 1.0);
}else{
drone_angle[1]=FloatSub(drone_angle[1], 1.0);
}

if(client_angle[2] > drone_angle[2]){
drone_angle[2]=FloatAdd(drone_angle[2], 1.0);
}else{
drone_angle[2]=FloatSub(drone_angle[2], 1.0);
}


Самый точный - вектором. Но я тогда не могу плавно повернуть сущность в направлении на игрока. Вернее могу, но получается масса вычислений. А резко, понятно, смотрится дико.
0
1967 / 823 / 114
Регистрация: 01.10.2012
Сообщений: 4,814
Записей в блоге: 2
10.09.2017, 08:10
Цитата Сообщение от tonline_kms65 Посмотреть сообщение
Как бы понятнее объяснить.
Например у меня есть сущность:
с позицией float pos[3]
pos[0] = 200.0;
pos[1] = 100.0;
pos[2] = 0.0;
и есть углы этой сущности float ang[3] (направление "взгляда")
ang[0] = 100.0;
ang[1] = 50.0;
ang[2] = 10.0;
В 3D для некоторых объектов (напр камера или источник света) вращение задается точкой куда смотрит объект (reference) + углом поворота вокруг этой оси (reference - позиция объекта). Это переводится в 3 угла, но roll (ang[2]) не меняет reference, он предназначен чтобы напр поставить камеру вверх ногами.

Расскажите чего Вы хотите добиться на простом примере, избавьтесь от слова "сущность" (здесь совершенно неуместного)
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
10.09.2017, 18:17
Название: ScreenShot00375.jpg
Просмотров: 251

Размер: 21.3 Кб
Повернуть AB относительно A на 180?
C=A - (B-A)
0
 Аватар для tonline_kms65
-16 / 0 / 0
Регистрация: 17.09.2016
Сообщений: 224
10.09.2017, 19:21  [ТС]


Сделал видео для наглядности.
Видно что при вызове сущности (здесь сущностью может быть все что угодно, в данном случае это Дрон) она всегда поворачивается к вызывающему "задом".

Для определения положения Дрона я использую координаты игрока (камеры) т.е. углы. Как бы понятнее объяснить - я при развороте Дрона, беру за образец углы глаз игрока (камеры) сравниваю с углами Дрона. Так проще. Регулировка идет в основном только по 2 осям, X (yaw - рыскание) и по Y (pitch - тангаж), Z можно не трогать, так как эта координата у камеры игрока не меняется.

Если крутить Дрона вектором, то все нормально получается, но при ориентировании по углам зрения игрока - проблема с разворотом углов именно игрока т.е. камеры. Спасибо за подсказку. Я как то об этом даже и не подумал.
Я так понял что координаты камеры изменить невозможно? Тогда это меняет дело. Я и так и этак мучился.

Тогда нужно играть углами Дрона.
Я уже собирался просто модель перекомпилировать, развернуть меши модели и по новой привязать их к костям. Но это такой головняк. Это просто полная перекомпиляция модели, причем со всеми её анимациями.

Добавлено через 7 минут
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Повернуть AB относительно A на 180?
C=A - (B-A)
Попробую, пригодится.

Можно же сделать так:
1. angle[1] = -angle[1]
2. angle[1] = angle[1]*-1
Просто "развернуть".
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
10.09.2017, 20:55
Цитата Сообщение от tonline_kms65 Посмотреть сообщение
же сделать так:
Нет. Причем тут только X?
По рис. выше.
C=A+u*-1
Проблема решена?
0
 Аватар для tonline_kms65
-16 / 0 / 0
Регистрация: 17.09.2016
Сообщений: 224
11.09.2017, 00:15  [ТС]
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Проблема решена?
Подожди, подожди. Это только начало. Я мастер себе проблемы создавать.
Пока не могу практикой проверить. Я на работе. А в теории я слаб.
Приеду домой - проверю.
Я сомневаюсь что решена будет эта проблема. Ты разворачиваешь вектор направления, а мне нужно развернуть только одну из 3 координат угла. Я для примера взял angle[1]. В теории вроде всё должно получиться, а на деле либо крутить начинает по конски, либо вообще не работает.
С векторами работать проще и точнее, но придется сравнивать вектора, поворачивать один из векторов, без синусов косинусов уже никак не обойтись. А это дополнительные расчеты.
Или делать трассировку до попадания именно в вызывающего игрока, опять дополнительная нагрузка.
Есть еще вариант, самый простой но самый геморройный, перекомпиляция модели полностью. Что бы изменить положение основной кости.

Было бы конечно проще использовать кватернионы с матрицей поворота, но это не тот язык, если только прикрутить сюда готовую библиотеку, но это уже ООгромный геморрой.
Это всё недоделанный SourcePawn, не в обиду будет сказано, для работы с 3D моделью очень мало, доступа к костям вообще нет! Что то типа бейсика, для работы с текстом, только шустрее бейсика раз в 10, если не больше. Тогда и делали бы уже SourceBasic.
По идее, сама функция вызова мне не нужна. Но нужны те возможности которые потом можно будет использовать. Если я пойму как они работают.
Приеду домой - займусь. Информация от Igor3D меня заинтересовала. Очень похоже на реальность.
0
1967 / 823 / 114
Регистрация: 01.10.2012
Сообщений: 4,814
Записей в блоге: 2
11.09.2017, 11:14
Цитата Сообщение от tonline_kms65 Посмотреть сообщение
Видно что при вызове сущности (здесь сущностью может быть все что угодно, в данном случае это Дрон) она всегда поворачивается к вызывающему "задом".
Упрямо настаивая на термине "сущность" Вы изрядно затрудняете общение Ладно, я понял так: объект (напр дрон) должен поворачиваться задом к камере. Тогда зачем вообще углы? Вам нужно совместить одну из осей СК объекта (напр -Z) с направлением (drone - camera). Это можно сделать матрицей поворота или кватернионом. Если нужны детали - распишу
Цитата Сообщение от tonline_kms65 Посмотреть сообщение
У меня просьба, пожалуйста без предложений кватернионов, матриц поворота, углов Эйлера и т.д.
Все эти вещи неизбежны если хотите работать в 3D.

Цитата Сообщение от Excalibur921 Посмотреть сообщение
Повернуть AB относительно A на 180?
Для объекта поворот на 180 не определен (нет единственной оси вращения)
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
11.09.2017, 12:00
В матрице много повторов.

Проще хз как..
Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
A = {Xa, Ya, Za};
B = {Xb, Yb, Zb};
A1 = B - A;  (*получаем вектор*)
A2 = {0.0, 0.0, 1.0}; (*задаем вектор нужен для поиска оси матрицы*)
A3 = Cross[ A1, A2]; (*получаем ось матрицы фиолетовый вектор*)
 
x = A3[[1]]; (*читаем компоненту 1 вектора A3*)
y = A3[[2]];
z = A3[[3]];
a = Alfa;(* задаем угол поврота точки*)
 
(*Задаем матрцу поворота вокруг произвольной оси в 3д*)
M := {{Cos[a] + (1 - Cos[a]) x^2, (1 - Cos[a]) x y - 
    Sin[a] z, (1 - Cos[a]) x z + Sin[a] y},  {(1 - Cos[a]) y x + 
    Sin[a] z, 
    Cos[a] + (1 - Cos[a]) y^2, (1 - Cos[a]) y z - 
    Sin[a] x}, {(1 - Cos[a]) z x - Sin[a] y, (1 - Cos[a]) z y + 
    Sin[a] x, Cos[a] + (1 - Cos[a]) z^2}};
 
A4 = A1.M; (* множим Вектор на матрицу*)
A5 = Normalize[A4]; (*нормализация длинны A4*)
DistA1 = EuclideanDistance[{0, 0, 0}, A1];  (*находим длинну A1*)
A6 = DistA1*A5;  (*множим единичный вектор на длинну A1*)
A7 = A + A6;  (*получаем финальный вектор  повернутая точка B 
относительно A на угол Alfa*)
Название: x1_gif.gif
Просмотров: 255

Размер: 319.5 Кб
1
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
11.09.2017, 12:28
Нужно нормировать:
Haskell
1
A3 = Normalize[Cross[ A1, A2]]; (*получаем ось матрицы фиолетовый вектор и нормализуем*)
0
1967 / 823 / 114
Регистрация: 01.10.2012
Сообщений: 4,814
Записей в блоге: 2
11.09.2017, 13:56
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Проще хз как..
Есть 2 вектора. Нужно довернуть первый ко второму по кратчайшей дуге. Матрицами это делается так

- находим векторное произведение исходных векторов (для угла 180 пролетаем)
- выписываем первую матрицу 3x3 (первый вектор и произведение)
- выписываем вторую матрицу 3x3 (второй вектор и произведение)
- теперь первую матрицу транспозим и множим на вторую. Вот она матрица поворота

Если все это расписать на бумажке - получится та самая "ужасная" матрица что выше
0
 Аватар для tonline_kms65
-16 / 0 / 0
Регистрация: 17.09.2016
Сообщений: 224
11.09.2017, 17:45  [ТС]
Excalibur921 Igor3D
Спасибо ребятки за развернутые ответы.
Насчет матриц и т.д. - ну не тот это язык (SourcePawn), не тот.
Это просто скриптовый язык. не объектно-ориентированный. По стилю и по скорости он похож на с++, но не более того.

Цитата Сообщение от Igor3D Посмотреть сообщение
Ладно, я понял так: объект (напр дрон) должен поворачиваться задом к камере.
Проблема в том что Дрон должен повернуться к камере НЕ "задом" а "мордой". Сейчас Дрон как раз поворачивается только "задом". Причем этот разворот отрабатывается просто на отлично, по всем 3 координатам. С каково положения я бы Дрон не вызывал, и в каком бы положении Дрон не валялся (лапами вверх, боком, на хвосте и т.д.) при вызове все отрабатывается четко, по всем координатам Дрон выравнивается согласно координатам камеры вызывающего игрока, проще говоря так как игрок стоит при вызове - так Дрон и развернется. Но развернется ЗАДОМ к игроку, в направлении взгляда игрока, поэтому я и хочу развернуть именно координаты взгляда (камеры), а это то и не получается сделать.

Цитата Сообщение от Igor3D Посмотреть сообщение
Вам нужно совместить одну из осей СК объекта (напр -Z) с направлением (drone - camera).
Про этот вариант я писал - работает отлично:
1. получаю вектор направления Дрон-Игрок (если изменить Игрок-Дрон то направление вектора поменяется => поменяется направление модели)
2. получаю вектор направления Дрона
3. сравниваю вектора (я думаю можно даже не нормализовать)
Этот вариант неплох в принципе, но это дополнительные расчеты.
В случае с ориентацией на углы камеры все просто, очень просто, никаких особых расчетов. Даже синусов и косинусов нет. Но вот есть недоработка в самом языке, нет доступа к костям модели.
Здесь скелетная анимация, она основана на костях. Если смотреть на углы модели, то углы определяются именно от положения основной кости модели. и изменить их я пока не знаю как. Нет к костям доступа в этом языке. Вот и получается направление углов камеры игрока совпадает с направлением углов кости модели Дрона. Знал бы про этот косяк, изначально делал бы модель Дрона с обратным расположением костей. Но разве всё можно предвидеть. Вот сейчас и мучаюсь.

Простейшая задачка вроде-бы а не решаема. Можно, как я писал, перекомпилировать модель, но у меня просто не хватит уже терпения. Это я для тех кто не хочет таких же проблем. Меши модельки нужно сразу располагать на костях правильно.
Миниатюры
Как развернуть одну из координат угла  
0
 Аватар для tonline_kms65
-16 / 0 / 0
Регистрация: 17.09.2016
Сообщений: 224
11.09.2017, 17:55  [ТС]
Как приеду, еще помучаюсь и наверно остановлюсь на векторах.
Обидно просто - казалось бы простая задача, а решения нет, а всё потому что модель изначально сделал неправильно. Вернее не совсем правильно, всё внимание уделил анимациям.
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
12.09.2017, 12:36
Цитата Сообщение от tonline_kms65 Посмотреть сообщение
Насчет матриц и т.д. - ну не тот это язык (SourcePawn), не тот
Причем тут язык? Все пашет на всех языках одинаково…
http://ru.solverbook.com/sprav... na-vektor/
Попробовал матрицу поворота через кватернион.
Снова много повторов.

Работает, а расчетов меньше.
Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
A = {Xa, Ya, Za};
B = {Xb, Yb, Zb};
A1 = B - A;  (*получаем вектор*)
A2 = {0.0, 0.0, 1.0}; (*задаем вектор нужен для поиска оси матрицы*)
A3 = Normalize[Cross[ A1, A2]]; (*получаем ось матрицы фиолетовый вектор и нормализуем*)
w = Cos[Alfa/2];
angle = Sin[Alfa/2];
x = A3[[1]]*angle; (*читаем компоненту 1 вектора A3*)
y = A3[[2]]*angle;
z = A3[[3]]*angle;
(*матрица поворота через кватернион*)
M1 := {
   {1 - 2  y^2 - 2 z^2, 2 x y - 2 z w, 2 x z + 2 y w},  
   {2 x y + 2 z w, 1 - 2 x^2 - 2 z^2, 2 y z - x w },
   {2 x z - 2 y w, 2 y z + 2 x w, 1 - 2 x^2 - 2 y^2 }
   };
A4 = A1.M1; (* множим Вектор на матрицу*)
A7 = A + A4;(*получаем финальный вектор  повернутая точка B относительно A на угол Alfa вокруг оси A3*)
0
1967 / 823 / 114
Регистрация: 01.10.2012
Сообщений: 4,814
Записей в блоге: 2
12.09.2017, 13:53
Цитата Сообщение от tonline_kms65 Посмотреть сообщение
Здесь скелетная анимация, она основана на костях. Если смотреть на углы модели, то углы определяются именно от положения основной кости модели.
Покажите как Вы переводите вектор в углы (тело GetAngleVectors)

Добавлено через 1 час 13 минут
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Причем тут язык? Все пашет на всех языках одинаково…
Не совсем. Подозреваю ребятка уперся в злополучный поворот на 180 - а он-то как раз работать и не будет (хоть с матрицами, хоть с кватернионами. хоть как). Если GetAngleVectors штатная ф-ция его языка - то все нормуль, анимировать в углах можно, надо только взять угол ну хотя бы 179

В общем, как в том анекдоте где трусы линяют
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
12.09.2017, 14:39
Не знаю что это такое:
Цитата Сообщение от Igor3D Посмотреть сообщение
злополучный поворот на 180
Цитата Сообщение от Igor3D Посмотреть сообщение
как в том анекдоте
Работает до 2 пи в обоих кодах. Модель это массив векторов. Значит крутить будет на любой угол.

Например мне непонятно как дрон знает куда прилетать и направление взгляда дрона…Самое простое массив координат точек на карте с проверкой не занято ли это место другим объектом + временная блокировка подхода игроков к этому месту.

Я так понял анимация модели это посадка всегда на плоскость с постоянной высоты. Тогда всего 1 угол у модели определяет направление взгляда дрона в плоскости параллельной земле. Тут повернуть всю модель до анимации вокруг Z и все.

Записать координаты центра игрока в момент вызова дрона. Зная точку посадки дрона заранее и точку вызова найти направление взгляда дрона. После посадки дрон смотрит на точку откуда был вызван.
0
1967 / 823 / 114
Регистрация: 01.10.2012
Сообщений: 4,814
Записей в блоге: 2
12.09.2017, 15:15
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Работает до 2 пи в обоих кодах. Модель это массив векторов. Значит крутить будет на любой угол.
Возьмите напр зажигалку или пачку сигарет. Положите ее на стол. Поверните ее на 180 в плоскости стола (вокруг Y). Верните в исходное положение и поверните ее вокруг X (один конец на столе, другой поворачивается). Как видите в обоих случаях исходный вектор повернут на 180, но конечные положения объекта совершенно разные (напр после вращения по X объект лежит на столе уже др стороной). Математика подтвердит это простое наблюдение. Создать матрицу нечем (векторное произведение нулевое), а у кватерниона w = 0. Чтобы определиться нужна ось вращения - но откуда ее взять?

Да, и насколько я понял, ребятке вовсе не нужен "поворот по кратчайшей дуге". Напр камера оказалась выше дрона по Y - но дрон ведь не станет "задирать хвост" - он хочет довернуть его только вокруг Y, вот и ищет угол
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.09.2017, 15:15
Помогаю со студенческими работами здесь

Как сделать точку отсчёта координат угла от центра и использовать Box2D?
Здравствуйте. Под действием гравитации летит квадрат, изначально повёрнутый под углом в 55 градусов, после столкновения с землёй он...

Вот есть кнопочки: свернуть, развернуть, закрыть. Как скрыть кнопку развернуть?
Вот есть кнопочки: свернуть, развернуть, закрыть. Как скрыть кнопку развернуть? Что кнопки свирнуть и закрыть оставались на местах....

прототипирование алгоритма вычисления координат/угла поворота
Не нашел отдельной ветки на форуме. Ищу помощи в решении задачи моделирования алгоритма вычисления координат и угла поворота по данным силы...

Задача на нахождение угла при известных точках в 2D системе координат
Вот собственно наглядный рисуночек приложен. Помогите пожалуйста.

Из какого угла picturebox выходят оси координат и какая где из них?
запутался из какого угла оси координат изображения выходят и какая где из них? picturebox


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru