Система координат

Система координат является двумерным пространством, в котором Вы располагаете, измеряете, преобразовываете и рисуете видимые объекты своего приложения, и в котором Вы определяете местоположение пользовательских событий. Приложения в iOS и OS X полагаются на системы координат, определяющие местоположение точек с помощью горизонтальных и вертикальных осей (т.е. ось X и ось y), которые пересекаются в общей точке источника (0.0, 0.0). От источника положительные значения увеличиваются в одном направлении вдоль любой оси; отрицательные величины увеличиваются в противоположных направлениях. Вы выражаете точку в этом координатном пространстве как пара чисел с плавающей точкой в модулях пространства пользователя, неприкрепляющихся к любым модулям в пространстве устройства, таким как пиксели. Получение почти всегда происходит в секторе координатного пространства, где и ось X и значения оси y положительны.

Art/window_coordinate.jpg

Системы координат могут иметь различные ориентации получения

Система координат по умолчанию для представлений в iOS и OS X отличается по ориентации вертикальной оси. Это различие получает из графических контекстов приложение и графического использования платформ в рисовании месту назначения, таких как представление.

  • AppKit и Базовая Графика. Система координат по умолчанию возникает в нижней левой из области получения; положительные значения расширяются и вправо от него. AppKit предоставляет программируемую поддержку для «зеркального отражения» системы координат представления.

  • UIKit. Система координат по умолчанию возникает в верхней левой из области получения, и положительные значения расширяются вниз и вправо от него. Несмотря на то, что UIKit не предоставляет программируемой поддержки для «зеркального отражения» системы координат, можно выполнить эту Графику Ядра использования функции.

Art/flipped_coordinates_OSX.jpg

Windows и представления имеют их собственные системы координат

Приложение имеет многократные системы координат в игре в любое время. Окно расположено и измерено в координатах экрана, определяющихся системой координат для дисплея. Само окно представляет основную систему координат для всего получения и обработки событий, выполняемой ее представлениями. Каждое представление в окне обслуживает свою собственную систему локальной координаты для рисования себя; эта система координат определяется представлением bounds свойство. Представление frame свойство выражает свое расположение и размер в системе координат его суперпредставления; то же самое представление, в свою очередь, обеспечивает основную систему координат для расположения и калибровки его подпредставлений.

И AppKit и платформы UIKit обеспечивают методы для преобразования точек и прямоугольников между системами координат представления и другого представления, представления и его окна, и (на OS X) экран и окно. Приложение определяет местоположение мыши, планшета, жеста и мультисенсорных событий в системе координат окна, но представления могут легко преобразовать их в свои системы локальной координаты.

Можно также отобразить точки от одного координатного пространства до другого использования двумерного математического массива, известного как преобразование. Используя преобразования, можно легко масштабировать, повернуть и перевести содержание в двумерном пространстве.

Необходимые как условие статьи

Категорическое обсуждение

Проекты примера кода

  • TheElements