Ротация и трансформация в Codenameone

Я работал над проектом под кодовым названием one. У меня было несколько вопросов относительно преобразований: 1. Что такое Альтернатива graphics.transform в codenameone? 2. Я выполняю вращение объекта, но хочу установить окружность или радиус вращения, так как этот радиус вращения больше, чем размер объекта. Я кое-что поразил. Я не знаю, как установить радиус вращения. У меня есть объект Circle, и я хочу, чтобы другой объект, например прямоугольник, вращался на поверхности круга с радиусом вращения, таким же, как у размера прямоугольника. Пожалуйста помоги!!!!


person Chika    schedule 31.12.2015    source источник


Ответы (1)


Графика Codename One имеет свои собственные операции преобразования, очень похожие на набор операций преобразования Java2D. Обратите внимание, что они находятся на уровне графического рисования и не применяются к слою компонентов, поэтому, если вы имеете в виду узел преобразования FX, например, это не имеет смысла для Codename One.

Этого можно достичь в Codename One, поскольку вы можете переопределить краску и просто установить преобразование перед краской и восстановить ее после. Это может работать в некоторых случаях, но обратите внимание, что некоторые сложные вещи, например. в таких случаях ввод текста может завершиться ошибкой.

person Shai Almog    schedule 01.01.2016
comment
Все работает нормально!! Сбрасываю преобразование после применения преобразования к объектам. Но когда я хочу, чтобы другой объект вращался в углу круга, он вращался, но вращался с большей шириной, чем исходный объект. - person Chika; 01.01.2016
comment
Используете ли вы версию преобразования, которая принимает точку поворота? Имейте в виду, что компоненты расположены внутри своего родительского контейнера, поэтому они находятся не в 0,0, а в getX()/getY(). - person Shai Almog; 02.01.2016