Nazgool 250 Опубликовано 1 Августа 2015 (изменено) Я не знаю как сейчас действует эта правка, возможно что-то уже изменили, но расскажу предысторию её появления и собственно как я с ней работал. Началось с того, что когда я делал в OGSE сейф, то работа остановилась из-за поворачивающегося диска с цифрами. Дело в том, что для поворота статика, в xml-описателе необходимо было применять свойство "heading=1". Но после его применения статик движково (не могу знать зачем это вообще было сделано) поджимается по ширине (справа и слева) на величину 16/10. Это значит следующее : при соотношении сторон 4/3 правильный круг становиться вытянутым по верткали овалом ; при соотношении сторон 16/9 вытянутым по горизонтали овалом ; и только при разрешении 16/10 сжатие статика посредством 'heading' (тоже 16/10) компенсировалось растяжением по ширине монитора, и круг оставался кругом. Поэтому Malandrinus ввел правку указанную Shadows. Но... Чтобы она работала для всех статиков, в xml-описателях необходимо для каждого статика, независимо от того нужно это или нет, прописывать "heading=1". Если UI рисуется скриптово (а также - при использовании xml - всех не статиков, которым нужно исправление соотношения), то для координат 'x' и 'width' нужно явно указывать эту поправку local WIDTH_FACTOR = get_static_rescale_factor() ... weel_button.width = 32 * WIDTH_FACTOR Изменено 1 Августа 2015 пользователем Nazgool 3 1 Поделиться этим сообщением Ссылка на сообщение
Nazgool 250 Опубликовано 1 Августа 2015 (изменено) , Это хорошо. Вот работаю я с uip, wx, и если рисую 300х300, то получаю квадрат. И не понимаю, с какой такой такой радости в сталкере это прямоугольник Нет, ну понимаю конечно. Это так...к слову сказал. Я сделал подобное скриптово. Но это очень сложно. Лучше всего конечно, если есть возможность, сделать это в движке. Изменено 1 Августа 2015 пользователем Nazgool Поделиться этим сообщением Ссылка на сообщение