company_banner

Фракталы и GUI


    Рассматривая различные существующие способы к построению пользовательских интерфейсов, меня вдруг посетила мысль, что возможно выбран в принципе неверный путь. Вновь людьми выбрана «квадратная» модель отображения информации, как и почти во всех других областях своей деятельности. Я не призываю к революции в построении пользовательских интерфейсов, но возможно мысли о фракталах многие найдут интересными.

    На протяжении тысячелетий люди создают различные рукотворные объекты, оперируя всего несколькими простейшими геометрическими фигурами и их комбинациями. Основными объектами стали: прямоугольник, круг, треугольник, и их трехмерные аналоги — параллелепипед, шар, пирамида. Примеры можно приводить бесконечно. но проще всего посмотреть на постройки, которые нас окружают. Начиная от элементов из которых мы создаем здания:


    И кончая самими постройками:


    Пожалуй нашу цивилизацию вполне можно назвать «квадратной», или по желанию «прямоугольной». Так сложилось за тысячи лет развития общества и видимо продлится, если не вечно, то еще многие сотни или тысячи лет. Но выбранные человеком базовые формы далеко не идеальны и природа оперирует совсем другим классом объектов — фракталами.


    Фрактал — это бесконечно самоподобная геометрическая фигура, каждый фрагмент которой повторяется при уменьшении масштаба.


    Фрактальная форма оптимальна для живых объектов и мы можем встретить ее повсеместна. Человек открыл это великолепие форм совсем недавно. С момента публикации работы «Фрактальная геометрия природы» Бенуа Мандельброта в 1977 году прошло всего несколько десятков лет. Миг в сравнении культурных эпох человека. И не удивительно, что человек делает только маленькие шаги, пытаясь освоить те возможности, которая дает ему математика фракталов и новые геометрические формы.

    Например, фрактальное устройства антенны, позволяет ей принимать широкий спектр частот, и мы активно используем эту фрактальность в сотовых телефонах.


    А теперь я хочу робко намекнуть на идею, о возможности использования фракталов в нашем с вами общении с компьютером. В представлении информации и графических интерфейсах. Я не готов высказать законченную идею, но возможно кого-то подготовлю к этому. :)

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

    Чтобы одна программа могла по настоящему красиво выглядеть на разных гаджетах, ее интерфейс нужно каждый раз модифицировать под конкретное устройство. Где-то расположить по-другому элементу, где-то убрать неосновные кнопки. И все это связанно с вновь выбранной идеологией «квадратности». Ведь если присмотреться, то интерфейс типовой программы состоит их квадратных элементов:


    И даже если используются круги или эллипсы, то это мало влияет на суть. Это просто украшения, а вовсе не новый подход к созданию интерфейсов.

    А теперь перейдем к сути вопроса и фракталам. Основной бедой современных интерфейсов является их перегруженность и сложность поиска нужных элементов. То есть навигация. С этим пытаются бороться различными способами. Приведу несколько примеров.
    1. В меню Старт в Windows выносятся наиболее часто запускаемые программы, а для запуска более редких предлагается заглянуть во вкладку «Все программы».
    2. В новом интерфейсе Word 2007 ряд элементов позволяют выполнить как стандартное действие, так и при желании позволяют уточнить команду.


    Это означает, что искусственно приходится делить элементы по важности их использования. А количество элементов, которые следует отобразить и спрятать обусловлено размером шрифта и разрешением экрана. Работа с классическим меню, имеющим несколько вложенных уровней еще более ужасна.

    Одним из свойств фрактала является, четкое выделение крупных и мелких элементов. И если в «квадратных» интерфейсах мы должны искусственно вводить понятие крупных/мелких, видимых/спрятанных элементов, то во фракталах это может произойти самой собой. При этом каждая часть фрактала подобна и поэтому интерфейс будет единообразным, вне зависимости от глубины погружения, например в пункты меню или настроек.

    Я затрудняюсь нарисовать фрактальный интерфейс, тем более красивый. Попробую только схематично отобразить свою мысль. Возьмем интерфейс абстрактного телефона. В нем есть меню верхнего уровня, представленное значками. Нажатие значка открывает подменю и так далее. С фрактальным вариантом, все вроде то же самое, но в нем мы можем быстрее осуществить навигацию, приблизительно зная область в которой находится интересующий нас объект. То есть элемент фрактала, обозначающий глубоко лежащее подменю или конечный элемент, может быть не виден на экране совсем, или обозначаться набором цветных точек. Зная, что мы ищем, мы можем быстро перейти к нужной нам области. Не зная, мы можем двигаться постепенно.


    Уверен, что-то подобное уже есть, но явно мало распространено. Крупные объекты подписаны или имеют крупные значки. Более мелкие могут отображаться маленькие значками. Совсем мелкие — просто цветные треугольники. Мы можем двинуться вглубь фрактала постепенно, нажав например раздел «игры». И тогда нам будет показана увеличенная часть фрактала:


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

    Так как я это изобразил, это может смотреться не очень удобно, но надеюсь идея ясна. А теперь еще важное преимущество подобного интерфейса выбора. Он легко масштабируется для различных разрешений! Просто чем мельче экран, тем менее детализированным мы будем видеть фрактал.

    Надеюсь мои мысли покажутся кому-то интересными и они возьмут их на вооружение. Если для типовых приложений, подобный интерфейс не кажется столь полезным, то например для игр, работающих на различных устройствах, он может оказаться весьма интересным.
    Intel
    Company

    Comments 65

    • UFO just landed and posted this here
    • UFO just landed and posted this here
        +6
        «Intel объединяет нас, Intel ведет нас.» © Агент Смит
        • UFO just landed and posted this here
            +3
            «Ты?! -Я, я, я! -Я тоже...» © Агент Смит
          +2
          это наверное скрытая реклама новый «фрактальных» процессоров Intel))
          «процессоры Intel — сверх производительность от природы»
          +2
          Burj Dubai как раз на основе фрактала спроектирована (по образцу лилии):

            0
            Тайловые WM (XMonad, патченый dwm) умеют распологать окна в виде спирали Бернулли, разделяя экран в пропорции золотого сечения. Полезность сомнительна, но идею нахожу изящной.
              +2
              Увидев первую картинку на главной, я ожидал чего-то большего и более мозгосносительного, чем «треугольный интерфейс вместо квадратного». Нарисуйте такой же, только с прямоугольником в основе и докажите нам, что мы «квадратная цивилизация» :)
                –2
                тем, кто хочет полюбоваться красивыми фракталами, рекомендую XaoS
                  +1
                  сложно пока представить такое развитие интерфейсов

                    0
                    ЦИтирую:

                      +6
                      Прашу пардон, случайно вышло. Так вот, цитирую:
                      На протяжении тысячелетий люди создают различные рукотворные объекты, оперируя всего несколькими простейшими геометрическими фигурами и их комбинациями. Основными объектами стали: прямоугольник, круг, треугольник, и их трехмерные аналоги — параллелепипед, шаг, пирамида.

                      Чем же ваш интерфейс ушел от треугольно-гнездового способа мышления? Вы не предложили ничего нового, та же матрица с вложениями, разделенная на группы? У меня так же поделены в моем телефоне (благо в нем меню настраивается полностью) папки, разделенные по категориям и рассортированые в порядке важности / родства.

                      Впринципе, ваща идея неплоха, но реализация — хромает на три ноги из двух.
                        0
                        Я уверен, что можно придумать гораздо более интересную и удобную форму. Но это задача серьезного исследования. Рисунок приведен просто в качестве примера навигации по фракталу.
                      –4
                      Мы квадратная цивилизация из-за формы глаз, век, лба и скул, которые ограничивают поле зрения и делают его прямоугольным.

                      Ничего не поделаешь…
                        +2
                        Мне кажется или оно на самом деле овальное?
                          –3
                          Овал, это круг вписанный в прямоугольник =)
                          Что подтверждает.

                          Понятное дело, что все люди на вкус разные (исповедь каннибала), но у большинства, обзор по бокам больше чем вверх-вниз.

                          Закройте обзор руками и так и так, проверьте на себе.
                            0
                            Ну так ведь всё равно овал, а не прямоугольник. Или я чего‐то не улавливаю.
                              +1
                              ОМГ!!! круг вписаный в прямоугольник — это сильно! покруче дробной размерности фрактала… ((:
                                0
                                Это да, я ступил =)
                                Не вписанный, а впихнутый =)
                                0
                                Почему-то сразу вспомнил, как выглядит круг с разрядностью 2 в 3Dmax. (для тех, кто не в теме, он выглядит как квадрат)

                                Это уж смотря с какой стороны посмотреть. Зрение человека вообще тут никаким боком не привязано. Вы можете часами крутить ладошками у глаз, пытаться пялиться во все стороны и все, чего Вы добьетесь, это статус психа в обществе после таких действий, поскольку реальный кругозор — это именно круг. Человек не видит границ кругозора, если смотрит прямо. А границы четкости картинки именно круглые, так как глазик у нас шарообразный. Все остальное, периферийное зрение — в активном зрении не участвует.
                              0
                              Да и, признаться, я не очень верю что у вас все части тела квадратно‐прямоугольные.
                                –2
                                Пруфпик еще потребуйте. Я говорил не о прямоугольности, а об ограниченности поля зрения.
                                Хотя человека можно плотно вписать в прямоугольник. И ладонь его. И ступню. И форму черепа.
                                Но никак не в треугольник, и не во фрактал.

                                К верхнему комментарию (я раз в 5 минут только могу):
                                Соотношение сторон не 1 к 1.

                                Вы с чем спорите? С прямоугольностью цивилизации?
                                  –2
                                  Но, согласитесь, ограниченность не синоним прямоугольности.
                                  Я не спорю, а выражаю мнение на счёт непрямоугольности человека.
                                  Проще человека вписывать в круг, вспомните хотя бы витрувианского человека.

                                  Ну и, соответственно, прямоугольность цивилизации не совсем понятно откуда взялась.

                                  У Рериха есть «Последнее обращение к человечеству». Выдержка:
                                  … Мир хаотичен, в нём нет ничего незыблемого, в том числе — мерности. Мерность пространства во Вселенной колеблется, плавно изменяется в весьма широких пределах. Наилучшим условием возникновения органической жизни является мерность пространства, равная +π (3,14...). Значительные отклонения от этой величины пагубно действуют на живую Природу. В настоящее время, окрестность солнечной системы имеет мерность равную +3,00017… Близость этого числа к целому числу 3 (три) ввела вас в заблуждение….

                                  Это всего лишь ещё раз подтверждает фрактальность вселонной… или вселенных.
                                    0
                                    Так и знал что вспомните витрувианского =)
                                    А вы видели, как его раскорячило? Проще?

                                    А я похожий текст видел под названием «Третье Послание Комкона человечеству».

                                    Причём тут мерность и фрактальность? Причём тут Рерих?

                                    Мы о науке, или о чём вообще?
                                      –2
                                      Текст, просто, из книг Рериха. Текст не похожий а этот же, только не комкон, а Коалиционный Отряд Наблюдателей (К.О.Н.). Весь текст не влезет сюда.

                                      А про мерность прочитайте в первом комментарии:
                                      >строго, фрактал — это объект, размерность Хаусдорфа-Безиковича которого не равна целому числу. Например, квадрат имеет размерность 2, куб — 3. Фрактальная фигура может иметь размерность 2,44534…
                                      Самоподобие — это свойство фрактала. Но если внести при его построении элемент случайности, геометрического самоподобия не будет. Т.е., технически это будет фрактал, но это уже не будет регулярный самоподобный объект.

                                      И, собственно, я о том что изначальная фрактальность природы должна быть основой всего. По крайней мере стоит попробовать, чтобы решить. Фрактальность природы в данном контексте является подтверждением того что мир имеет не целую мерность. Соответственно, прямоугольность нашего мира является сомнительным решением. И уж точно никакие прямоугольные глаза тут ни при чём.
                                        +2
                                        комкон это из стругацких кажется)
                                        с мерностью не шутите. это очень красиво звучит и возбуждает воображение людей без математического опыта, но если это звучит не в тексте доказательства, а в тексте мистического прозрения — ценность информации даже не ноль, а отрицательна))

                                        в случае фракталов — упомянутая Хаусдорфова размерность метрического пространства, не является мерностью векторного пространства (как раз то что мы все имеем в виду под 1,2,3-х-мерностью и т.д.). она может быть определена лишь в уже определенном пространстве, и на определенном множестве в нём.

                                        «Размерность Хаусдорфа — естественный способ определить размерность множества в метрическом пространстве. Размерность Хаусдорфа согласуется с нашими обычными представлениями о размерности в тех случаях, когда эти обычные представления есть. Например, в трёхмерном евклидовом пространстве хаусдорфова размерность конечного множества равна нулю, размерность гладкой кривой — единице, размерность гладкой поверхности — двум и размерность множества ненулевого объёма — трём. Для фрактальных множеств размерность Хаусдорфа может принимать дробные значения.» //вики

                                        Есть еще понятие метрики пространства, которая задает функцию определения расстояния между двумя точками. Короче, не валите все в кучу, плз.
                                          –1
                                          Понятно. Но я бы сказал что ошибка тут как раз в математическом опыте. А суть заключается в том чтобы выйти за рамки математических условностей. Я не мастер жонглировать математическими понятиями, но вся математика основывается на определённых когда‐то утверждениях, аксиомах и условностях и, что греха таить, прекрасно кореллирует с нашим миром замечательно укладываясь в нашем сознании. В геоцентрической системе были формулы для вычисления положения небесных тел. Они были очень сложные, но работали. А как только систему сменили на гелиоцентрическую эти формулы сильно упростились.

                                          Почему же вы не допускаете что 3‐х мерность, да и вообще целая постоянная мерность, может быть ошибочным допущением. Или вы знаете как можно доказать что мерность нашего мира абсолютная троечка?
                                            0
                                            В любой момент времени, соответственно. Да и вообще, что такое время, не условное ли допущение?
                                              0
                                              Но я бы сказал что ошибка тут как раз в математическом опыте. А суть заключается в том чтобы выйти за рамки математических условностей.

                                              Математический опыт гораздо, гораздо шире реальности, и рамки его невообразимо широки. Он позволяет описать все что могло бы быть, включая то что есть. И так же позволяет определить что не может быть в принципе. Поэтому если расшифровка например математически невозможна, и это доказано, то это действительно невозможно.

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

                                              точка, оставляет след — прямая, прямая оставляет след — плоскость, плоскость оставляет след — твердое (3-м) пространство. Вы можете повторить эту операцию 2 с половиной раза? эта мерность по определению является количеством таких преобразований.

                                              время — это процесс. он может быть связан с дополнительной размерностью, а может и нет. все что мы знаем — это процесс, относительно которого мы измеряем любые интервалы. и еще мы знаем, что свет и другие три вида взаимодействий — непосредственная часть этого процесса и их скорости эквивалентны.
                                                –1
                                                Это всё определения в рамках математических понятий. А вся математика, как я уже писал, сама жиждется на ряде допущений, в том числе описанном вами — ряде натуральных чисел. И это при том что в природе не найти соответствия этому ряду. А вы говорите что этим рядом через формулы описывается всё.

                                                >точка, оставляет след — прямая, прямая оставляет след — плоскость, плоскость оставляет след — твердое (3-м) пространство.
                                                Вы же понимаете что само понятие след уже предполагает двумерность: как минимум одна размерность из пространства в котором движется что‐либо и вторая — время, в течении которого движется. Наверное, теоретически, время можно не учитывать, но тогда придётся принять некие допущения, и мы снова возвращаемся к истокам математики — допущениям и условностям.
                                                А теперь представьте что точка, образуемая ею прямая, образуемая ею плоскость начинают двигаться одновременно, оставляя след — получим фрактал, точнее бесконечное их количество, которое заполнит полученное в итоге трёхмерное пространство. Получается что пространство в итоге состоит из фракталов. Подозреваю что тут никаких формул и вычислительных мощностей не хватит.
                                                Если мы предположим что пространство не трёхмерно, а, скажем, те же 3,14, то получим пространство состоящее из криволинейных спиральных фракталов. То есть с каждым «тактом» движения будет происходить поворот или смещение.

                                                Для появления точки, как видите не нужны следы, она существует вне времени. А ведь всё пространство, в итоге, состоит из бесконечного числа точек.Так есть время в этом пространстве или нет? И если нет, то как же появляются следы? И как тогда образуется мир?

                                                Последний ваш абзац говорит о том, что и вовсе ничего о времени математика не знает, а лишь принимает условно некие эмпирические данные.

                                                Вот вам и математический опыт, который гораздо шире реальности, при этом к реальности имеющий довольно опосредованное отношение. Я не говорю что математика это фигня. Она, несомненно, очень полезна и во многих областях прекрасно работает, но надо отдавать себе отчёт в том что часто математика лишь сильно упрощённое описания моделей вещей и событий реального мира.
                                                  0
                                                  *Зиждится —конечно.

                                                  Вообще я понимаю что пишу это на сайте где большая часть пользователей программисты и математика для них как библия для Папы римского. Но, порой, необходимо допускать альтернативные варианты даже очевидных вещей. Только так можно познать мир по‐моему.
                                                    0
                                                    ну раз логика вам необязательна в этих рассуждениях — то обсуждать это бессмысленно. но я писал для тех кто будет читать, а не строго вам.)

                                                    математика, логика, и естесственно научный путь познания мира — отличаются от библии Папы римского тем, что на протяжении всего пути, всё проверяется, а не принимается на веру или «допускается».
                                                    и благодаря этому Вы можете в тепле и уюте посылать нам эти буковки и допускать «альтернативные варианты».
                                  0
                                  Просто строить из прямоугольных блоков гораздо удобнее. И получаются из прямоугольных блоков обычно «прямоугольные» здания. Оттуда и пошло.
                                    0
                                    прикольная, но необоснованная теория.
                                    прямоугольность форм антропогенных объектов может быть обусловлена более глубокими причинами, свойствами жизни в поле тяготения и даже свойствами самого пространства…
                                    +1
                                    Прихожу к выводу, что блочность имеет гораздо более раннюю причину — египетские иероглифы.
                                    pavelgorlov.ru/interface/egyptfacepg.jpg

                                  • UFO just landed and posted this here
                                      +12
                                      www.cesmes.fi/pallo.swf
                                      вот такое будет меню у сотовых)
                                        +1
                                        Нечто! Нужно срочно внедрять такую аналитику: pavelgorlov.ru/interface/iteration.jpg
                                          0
                                          вместо подписи
                                          нужно мышкой по картинке повозить
                                            0
                                            «Цифровая подпись». Или пароль — уникальный жест.
                                          +3
                                          а кстати очень удобный кажется. еще бы закрывались эти кружочки по таймауту, было бы отлично!
                                            0
                                            Нужно еще зум добавить, а то опять квадрат получается…
                                            +5
                                            > Фрактальная форма оптимальна для живых объектов

                                            псевдорелигиозный бред
                                              0
                                              Ну, не такой уж и бред: vimeo.com/9953368
                                                +4
                                                Какая религия имеется в виду, интересно ) Фракталианство? )
                                                +2
                                                Приняв во внимание природу фрактала, хочется дополнить

                                                > Зная, что мы ищем, мы можем быстро перейти к нужной нам области. Не зная, мы можем двигаться постепенно

                                                а иногда и бесконечно :)
                                                  +1
                                                  А я увидел классную мысль, но на нынешних экранах пока слабореализуемую. Чтоб вложенные элементы меню были видны из «материнского» меню. Тоже попробую выразить в картинках:

                                                  habreffect.ru/files/5dd/4c74a0aa0/fractal-circlez.jpg

                                                  На данный момент тупо не хватит разрешений уже для первого подменю (ну разве что на больших монторах, но не на сотовых).

                                                  И как ни странно, зачатки этого есть в Windows:

                                                  habreffect.ru/files/714/a863c60b6/fractal-win.jpg
                                                    +3
                                                    Вопрос к автору: по вашему прямоугольные дома из прямоугольных модулей, или на прямоугольном экране, прямоугольные окна с прямоугольными кнопками — не являются «бесконечной самоподобной геометрической фигурой», фракталом. Илм же вы предномеренно сравниваете структурные сущности с элементарными, или не разбираетесь совершенно в затронутой теме. И чем предложеный треугольный модуль лучше прямоугольного, тем что дял рационального использования таким интерфейсом площади нужны треугольные мониторы (причем в основе должен быть обязательно подобный треугольник, и чем опять же качественно равносторонний прямоугольник у вас в примере лучше скажем прямоугольного треугольника, который хоть как то можно подогнать под уже существующие мониторы).

                                                    Прямоугольная форма повсеместно не от того, что кому-то она нравится, а остальные без фантазии. Она повсеместна потому, что легко воиспроизводима без специального инструментария и обладает максимальной компакностью в качестве модуля.

                                                    Фракталы же, если очень грубо, это геометрическое отображение структуры на основе ирархии и подобия, которая, в свою очередь, в современных интерфейсах и ПК используется повсеместно (наипростейшие пример: древовидная структура хранения данных на ПК, контекстных и выподающих меню).

                                                    Так что статья из серии «сам не знаю, но вас научу».
                                                      0
                                                      Я и не говорил, что разбираюсь в данной тематике. Я высказал некоторые свои мысли. Буду рад, если Вы напишите свою статьи на данную тему. Мне действительно будут интересно.
                                                      0
                                                      Покажите же уже пример, как «использовать фарактал» для построения пользовательских неквадратных интерфейсов!
                                                        +2
                                                        Спасибо за интересную книгу! («Фрактальная геометрия природы» Бенуа Мандельброт)
                                                          0
                                                          Если я вас правильно понял, то описываете идею Zoomable User Interface, ZUI, о которой довольно подробно писал Джеф Раскин в своей известной книге.

                                                          А чем не угодили прямоугольные формы? Мне кажется, что рано их со счетов списывать.
                                                            0
                                                            Прямоугольные формы часто занимают больше места, чем следует. Возможно, можно придумать, как фракталы сделают интерфейс более компактным. Как мне кажется, это актуально для телефонов и так далее.
                                                              0
                                                              «Возможно, можно» — это интуиция или как?
                                                              А более компактными — это сочетается с более удобными или как?
                                                              Приведите уже нормальный пример.
                                                            0
                                                            В Вашем подходе я вижу единомышленника :) Я давно задумываюсь над новыми интерфейсами для новых же мултитач электронных музыкальных инструментов. Возможно, фрактальная природа может здесь здорово помочь, будем думать!
                                                              +2
                                                              Тут несколько скриншотов телефона ElseMobile, не фракталы конечно, но и квадраты уж точно.
                                                              Движение всё же есть, только самого телефона пока нет…
                                                                0
                                                                Факт 1: квадрат воспринимается легче чем фрактал
                                                                Факт 2: чем легче воспринимается интерфейс тем лучше
                                                                Вывод: квадратный интерфейс лучше фрактального
                                                                  0
                                                                  давайте уже сразу к губке Менгера перейдем
                                                                    +2
                                                                    Менюшки в винде — теже самые «фракталы». И папки в проводнике тоже. Проблема не во фракталах, а том, чтобы всё сгруппировать по тому, как пользуется софтом юзер.
                                                                      0
                                                                      Ваша идея ни чем не отличается от иерархии меню. Неудобство остается та же — нужно помнить где лежит дочерний елемент.
                                                                      Мне кажется фрактал не применим так как дочерний елемент должен как бы быть повторением, а реально имеет другой набор елементов.
                                                                      А от применение фракталов в процессе разработки програмного обеспечения уже реальней.
                                                                        +1
                                                                        Хорошая статья! даже прочитаю
                                                                          –1
                                                                          Раскритиковав прямоугольную культуру, предложили треугольную :)

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

                                                                          Работать же с регулярной структурой проще. Заполняемость пространства (именно: квадрат, треугольник, шестиугольник) очень важна. Круг, кстати, уже не годится…

                                                                          Only users with full accounts can post comments. Log in, please.