stringtranslate.com

Z-порядок

Z-порядок — это порядок перекрывающихся двумерных объектов, таких как окна в стековом оконном менеджере , фигуры в векторном графическом редакторе или объекты в 3D-приложении. [1] Одной из особенностей типичного графического интерфейса является то, что окна могут перекрываться, так что одно окно скрывает часть или все другое. Когда два окна перекрываются, их Z-порядок определяет, какое из них появится поверх другого.

Определение

Термин «Z-порядок» относится к порядку объектов вдоль оси Z. В координатной геометрии X обычно относится к горизонтальной оси (слева направо), Y — к вертикальной оси (вверх и вниз), а Z — к оси, перпендикулярной двум другим (вперед или назад). Можно представить себе окна в GUI как ряд плоскостей, параллельных поверхности монитора. Таким образом, окна располагаются вдоль оси Z, и информация о Z-порядке, таким образом, определяет порядок окон на экране спереди назад. Аналогией могут служить несколько листов бумаги, разбросанных на столе, каждый лист является окном, стол — экраном вашего компьютера, а верхний лист имеет самое высокое значение Z.

Использовать

Обычно пользователи GUI могут влиять на Z-порядок, выбирая окно, которое будет выведено на передний план (то есть «выше» или «перед» всеми остальными окнами). Некоторые оконные менеджеры позволяют взаимодействовать с окнами, пока они не находятся на переднем плане, в то время как другие выводят окно на передний план всякий раз, когда оно получает ввод от пользователя. Также возможно назначить специальные окна «всегда сверху»; затем они фиксируются в верхней части Z-порядка, так что (за редкими исключениями) никакое другое окно не может их перекрывать.

При работе с визуальными объектами на экране компьютера объект с Z-порядком 1 будет визуально «под» объектом с Z-порядком 2 или больше. Это то же самое, что создавать «слои» объектов, где Z-порядок определяет, какой объект находится над другим. HTML-страница может использовать CSS для указания Z-порядка, чтобы некоторые объекты могли быть наложены друг на друга.

Z-упорядочение также используется в 3D-приложениях для определения видимости объектов на основе перекрытия с другими объектами. Это дает пользователю преимущество в скорости, поскольку компьютеру не нужно визуализировать невидимые объекты. [1] На практике, конечно, некоторые объекты могут быть скрыты лишь частично, и это осложнение, которое необходимо учитывать.

В ранней 3D-графике реального времени Z-порядок применялся на основе полигона, чтобы избежать использования Z-буфера, который в то время считался дорогим. В современной 3D-графике Z-порядок используется для рендеринга, зависящего от порядка, например, с полупрозрачными объектами. Его также можно использовать для уменьшения проблемы Z-борьбы , либо сначала рендеря более дальние объекты, а затем используя слабое неравенство в качестве теста глубины, либо, наоборот, рендеря спереди назад и используя строгое неравенство.

z-индекс

Фактическое число, назначенное определенному месту в Z-порядке, иногда называют z-индексом. В частности, свойство CSS , которое задает порядок стека определенных элементов, называется z-индексом. Элемент с большим порядком стека всегда находится перед другим элементом с меньшим порядком стека. [2]

p { позиция : относительная ; z-индекс : -1 ; }     

Отрицательные порядки стека также могут использоваться таким же образом. Отрицательное значение будет отображаться позади положительного. z-indexработает только с элементами, имеющими значение позиции (например, position: relative;), и для многих кодеров это одно из первых дел, которое нужно исследовать при отладке, чтобы выяснить, почему z-index не работает. [3]

Как и все другие свойства CSS, его можно задать с помощью JavaScript , используя следующий синтаксис:

объект.стиль.zIndex = ' 1 ' ; 

Смотрите также

Ссылки

  1. ^ ab Foley, James, Andries van Dam, Steven Feiner, and John Hughes (1987). Компьютерная графика: принципы и практика . Reading, Massachusetts: Addison-Wesley Publishing Company. стр. 870-871.
  2. ^ "Визуальная модель форматирования". World Wide Web Consortium . Указание уровня стека: свойство 'z-index'. Архивировано из оригинала 24 ноября 2018 г.
  3. ^ "CSS Z-Index не работает! Пошлите помощь!". Руководство веб-разработчика . 2019-03-28 . Получено 2019-04-10 .