Метафора двумерного редактирования для трехмерной графики
Иллюстрации
Показать всеИзобретение относится к созданию компьютерной графики. Техническим результатом является сокращение объема вычислений при создании трехмерной графики по сравнению с традиционным трехмерным моделированием. Система визуализации форм содержит механизм визуализации, работающий на процессоре в компьютерной системе. Кроме того, система содержит приложение, сконфигурированное для предоставления пользовательского интерфейса для выбора параметров формы. При этом пользовательский интерфейс предоставляет средство выбора одного или более соответствующих двумерных параметров для упомянутой формы. Система также содержит механизм двумерной визуализации, содержащий средство для применения эффектов двумерной формы и двумерных поверхностных эффектов к упомянутой форме, средство для создания карты текстур из двумерного текста, средство для генерирования первой исходной плоскости для эффектов двумерной формы, средство для генерирования и визуализации эффектов двумерного текста на второй исходной плоскости. Кроме того, система содержит фабрику трехмерного моделирования, содержащую средство для получения двумерной геометрии из упомянутой формы, и средство для генерирования трехмерной модели. Система также содержит средство для отображения карты текстур на трехмерную модель и средство для визуализации трехмерной модели. 2 н. и 18 з.п. ф-лы, 8 ил.
Реферат
Уровень техники
Сегодня имеется ряд средств, которые позволяют пользователям создавать профессиональную бизнес-графику, такую как презентации. Подход к добавлению глянца формам и изображениям состоит в том, чтобы применять трехмерные методики. Это обычно делается двумя способами: один заключается в использовании моделированных трехмерных эффектов для двумерных битовых карт, что приводит к формам или изображениям, выглядящим как трехмерные, без реальной трехмерной модели. Результирующая смоделированная трехмерная графика может не выглядеть в достаточной степени трехмерной при некоторых вариантах применения. Другие подходы заключаются в том, чтобы использовать полную трехмерную модель. При этом пользователи конструируют трехмерные модели элементов, которые должны быть отображены. Этот подход типично требует того, чтобы пользователи имели навыки трехмерного моделирования и использования средств трехмерного моделирования. Эта вводная информация не предназначена для того, чтобы идентифицировать проблемы, которые должны быть разрешены посредством заявляемого предмета изобретения.
Сущность изобретения
Данная сущность предусмотрена для того, чтобы в упрощенной форме представить набор идей, которые дополнительно описываются ниже в подробном описании. Эта сущность не предназначена для того, чтобы идентифицировать ключевые признаки или важнейшие признаки заявляемого предмета изобретения, а также не предназначена для того, чтобы быть использованной в качестве помощи при определении области применения заявляемого предмета изобретения.
Согласно аспектам различных описанных вариантов осуществления предоставляется система, которая комбинирует двумерное и трехмерное моделирование при визуализации форм. В одном аспекте, система включает в себя: фабрику трехмерного моделирования, чтобы формировать трехмерную модель с выбранными параметрами или свойствами форм; фабрику передней поверхности, чтобы формировать двумерный текст и текстовые эффекты, а также некоторые эффекты двумерных форм (к примеру, эффекты заливки); фабрику исходной плоскости, чтобы формировать эффекты, которые визуализируются на исходной плоскости формы; растеризатор/подсистему компоновки, чтобы комбинировать двумерные и трехмерные эффекты, формируемые посредством фабрики передней поверхности, фабрики исходной плоскости и фабрики трехмерного моделирования.
Фабрика передней поверхности визуализирует любые двумерные текстовые эффекты (к примеру, затенение, блеск, отражение); любые эффекты двумерной формы; любые двумерные поверхностные эффекты (к примеру, заливка, градиентная заливка, изображение и т.д.) и двумерную геометрию формы; и создает карту отображения текстуры с помощью визуализированных двумерных текстовых эффектов и двумерных поверхностных эффектов для передней поверхности формы. Такие двумерные эффекты - это некоторые из двумерных метафор, которые сохраняются при применении к трехмерным формам. Фабрика исходной плоскости формирует исходную плоскость для двумерных эффектов формы (если имеются). Помимо этого, если текст имеет примененные трехмерные эффекты, фабрика исходной плоскости формирует исходную плоскость для двумерных текстовых эффектов. Фабрика трехмерного моделирования формирует трехмерную модель из геометрии двумерной формы посредством задания свойств экструзии и скашивания для формы. Фабрика трехмерного моделирования затем формирует координаты для отображения текстуры на передней поверхности трехмерной модели. Растеризатор/подсистема компоновки далее комбинирует результирующую форму из фабрики трехмерного моделирования (т.е. с трехмерной геометрией и двумерной картой отображения текстуры) с исходной плоскостью из фабрики исходной плоскости. Растеризатор/подсистема компоновки использует координаты текстуры, чтобы отображать текстуру на трехмерную модель.
В другом аспекте цвет(а) формы, выбираемые пользователем, сохраняются независимо от освещения и/или ориентации формы.
В еще одном другом аспекте формы могут быть сгруппированы так, чтобы управлять перспективой в трехмерных сценах. Например, несгруппированные трехмерные формы могут визуализироваться так, что каждая из них, как кажется, имеет отдельную точку схода. В отличие от этого, сгруппированные трехмерные формы могут визуализироваться так, что они, как кажется, имеют одну и ту же точку схода. Соответственно, пользователь может использовать знакомую концепцию двумерного редактирования группы и применять знание о редактировании двумерной графики к трехмерному миру. Группировка интуитивно делает то, что надо, и таким образом, позволяет пользователям приспосабливаться к новому миру, когда трехмерное редактирование возможно.
В еще одном другом аспекте система дает возможность пользователю управлять упорядочением визуализируемых форм. В одной реализации система использует двумерную метафору "переместить вперед", "переместить назад" и т.д., используемую в некоторых двумерных средствах для того, чтобы предоставлять пользователю возможность управлять тем, как формы должны отображаться для того, чтобы быть упорядоченными в трехмерном пространстве. Например, пользователь может указать то, что в конкретной перспективе форма A должна быть "впереди" формы B, но "позади" формы C. Помимо этого, знакомая концепция z-размещения двумерных форм для упорядочивания форм впереди или позади других форм может быть применена к упорядочиванию трехмерных форм в трехмерном пространстве.
В другом аспекте система предоставляет пользовательский интерфейс, который направляет и многократно использует двумерные команды так, что они были применимы в трехмерном контексте.
Варианты осуществления могут быть реализованы как компьютерный процесс, компьютерная система (в том числе, мобильные карманные компьютерные устройства) или как изделие, такое как вычислительный программный продукт. Компьютерным программным продуктом может быть машиночитаемый носитель, считываемый компьютерной системой и кодирующий компьютерную программу, содержащую команды для исполнения компьютерного процесса. Компьютерным программным продуктом также может быть распространяемый сигнал по несущей, считываемый компьютерной системой и кодирующий компьютерную программу, содержащую команды для исполнения компьютерного процесса.
Краткое описание чертежей
Не ограничивающие и не всесторонние варианты осуществления описаны со ссылками на следующие чертежи, на которых одинаковые цифры ссылок ссылаются на одинаковые элементы в различных представлениях, если не указано иное.
Фиг.1 - это блок-схема, представляющая примерную систему с несколькими приложениями и подсистемой двумерной/трехмерной, графики, согласно варианту осуществления.
Фиг.2 - это блок-схема, представляющая примерные компоненты подсистемы двумерной/трехмерной графики по фиг.1, согласно варианту осуществления.
Фиг.3 - это схема, представляющая трехмерную форму с контурами на основе двумерной геометрии формы, согласно варианту осуществления.
Фиг.4 - это схема, представляющая трехмерный текст и текстовые эффекты, применяемые к тексту формы, согласно варианту осуществления.
Фиг.5 - это блок-схема, представляющая последовательность операций способа формирования трехмерной графики из входных данных двумерной формы, согласно варианту осуществления.
Фиг.6 - это схема, представляющая примерный снимок экрана из пользовательского интерфейса (UI), использующего двумерную метафору для заливки, согласно варианту осуществления.
Фиг.7 - это схема, представляющая пример другого упорядочивания форм в трехмерном пространстве, согласно одному варианту осуществления.
Фиг.8 - это схема, представляющая пример несгруппированных объектов в трехмерной перспективе и пример сгруппированных объектов в трехмерной перспективе, согласно варианту осуществления.
Подробное описание изобретения
Различные варианты осуществления подробнее описываются ниже со ссылкой на прилагаемые чертежи, которые составляют их часть и которые иллюстрируют конкретные примерные варианты осуществления для использования на практике различных вариантов осуществления. Тем не менее, другие варианты осуществления могут быть реализованы во многих различных формах и не должны рассматриваться как ограничивающие варианты осуществления, изложенные в данном документе; наоборот, эти варианты осуществления предоставляются с тем, чтобы данная сущность была всесторонней и полной. Варианты осуществления могут быть использованы на практике как способы, системы или устройства. Соответственно, варианты осуществления могут принимать форму аппаратной реализации, полностью программной реализации или реализации, комбинирующей программные и аппаратные аспекты. Нижеследующее подробное описание, следовательно, не должно рассматриваться в ограничивающем смысле.
Логические операции различных вариантов осуществления реализуются (1) как последовательность машинореализуемых этапов, выполняющихся в компьютерной (вычислительной) системе, и/или (2) как взаимосвязанные машинные модули в рамках компьютерной системы. Реализация зависит от требований к производительности компьютерной системы, реализующей вариант осуществления. Следовательно, логические операции, составляющие варианты осуществления, описанные в данном документе, упоминаются альтернативно как операции, этапы или модули.
Примерная двумерная/трехмерная комбинированная система визуализации
Проблемы вышеупомянутых подходов трехмерной имитации и трехмерного моделирования заключаются в том, что они являются незавершенными в отношении типичного бизнес-использования. Например, пользователи могут иметь формы с двумерным эффектом (к примеру, градиентом), который они хотят поместить в трехмерную перспективу для эффекта, или комплексную трехмерную модель, для которой они хотят использовать карту отображения текстуры изображения, градиентный эффект или простое затенение. Подход трехмерной имитации и подход трехмерного моделирования отдельно предоставляют только часть решения для вышеописанного примерного сценария.
Варианты осуществления, представленные ниже, предоставляют использование трехмерных и двумерных эффектов, комбинированных в один конвейер, который формирует профессионально оформленную бизнес-графику. Пользователь не обязательно должен иметь доскональное понимание трехмерного моделирования (что вероятно среди типичных бизнес-пользователей) для того, чтобы использовать варианты осуществления системы.
Фиг.1 иллюстрирует примерную систему 100, которая комбинирует двумерное и трехмерное моделирование при визуализации форм. В этом варианте осуществления система 100 включает в себя подсистему 102 двумерной/трехмерной графики (2D/3D подсистема) и одну или более прикладных программ, указанных как приложения от 104-1 до 104-N на фиг.1. Приложения от 104-1 до 104-N используют подсистему двумерной/трехмерной графики для того, чтобы предоставлять трехмерные эффекты для двумерных форм и эффектов форм, введенных пользователями приложений от 104-1 до 104-N. Помимо этого, 2D/3D подсистема 102 также может предоставлять трехмерные эффекты для текста, ассоциативно связанного с формами. В соответствии с одним вариантом осуществления, 2D/3D подсистема 102 принимает входные данные двумерной формы и формирует трехмерную модель некоторых частей двумерной формы, с тем чтобы вывод визуализации содержал части, которые сформированы из двумерных форм и эффектов (и двумерного текста и эффектов, если имеется), и части, которые сформированы из трехмерной модели. Этот комбинированный подход отличается от вышеупомянутого подхода трехмерной имитации (который не включает в себя трехмерную модель) и подхода чистого трехмерного моделирования. Примерная реализация 2D/3D подсистемы 102 описана ниже в связи с фиг.2.
Хотя выше описан вариант осуществления "совместно используемой" 2D/3D подсистемы, в альтернативных вариантах осуществления каждое приложение, которое может формировать трехмерные формы, может иметь встроенную 2D/3D подсистему вместо отдельной 2D/3D подсистемы 102.
Примерные компоненты 2D/3D подсистемы
Фиг.2 иллюстрирует примерные компоненты 2D/3D подсистемы 102 (фиг.1) согласно одному варианту осуществления. В этом варианте осуществления 2D/3D подсистема 102 включает в себя фабрику 202 трехмерного моделирования, фабрику 204 передней поверхности, фабрику 206 исходной плоскости и растеризатор/подсистему 208 компоновки. Фабрика 202 трехмерного моделирования формирует трехмерную модель с выбранными параметрами или свойствами формы. Фабрика 204 передней поверхности формирует двумерные текст и текстовые эффекты и некоторые двумерные эффекты формы (к примеру, эффекты заливки). Фабрика 206 исходной плоскости формирует эффекты, которые визуализируются на исходной плоскости формы. Растеризатор/подсистема 208 компоновки комбинирует двумерные и трехмерные эффекты, формируемые посредством фабрики 204 передней поверхности, фабрики исходной плоскости 206 и фабрики 202 трехмерного моделирования.
При работе, когда 2D/3D подсистема 102 принимает форму с двумерными эффектами, как указано позицией 200 (к примеру, выбранными пользователем с помощью пользовательского интерфейса, предоставляемого посредством такого приложения, как приложение 104-1 по фиг.1), фабрика 204 передней поверхности разбирает форму на следующие части: текст, включенный в форму (если имеется); двумерная поверхность передней поверхности (т.е. поверхностные эффекты для передней поверхности формы); трехмерные эффекты (если имеются), применяемые к тексту; все эффекты исходной плоскости (к примеру, эффекты затенения, блеска, отражения, которые визуализируются в исходной плоскости формы); геометрия формы (к примеру, окружность, прямоугольник, стрелка и т.д.).
В этом варианте осуществления фабрика 204 передней поверхности визуализирует: все двумерные текстовые эффекты (к примеру, затенение, блеск, отражение); все двумерные эффекты формы; все двумерные поверхностные эффекты (к примеру, заливка, градиентная заливка, изображение и т.д.) и двумерную геометрию формы; и создает карту отображения текстуры с помощью визуализированных двумерных текстовых эффектов и двумерных поверхностных эффектов для передней поверхности формы. В соответствии с этим вариантом осуществления фабрика 204 передней поверхности формирует карту отображения текстуры с тем, чтобы передняя поверхность формы сохраняла свои двумерные поверхностные эффекты (к примеру, цвет заливки) для всех ориентаций формы при всех условиях имитированного освещения. Для типичных бизнес-пользователей этот эффект сохранения двумерного поверхностного эффекта является желательным (даже если он может казаться менее реалистичным), поскольку введенный двумерный поверхностный эффект (к примеру, цвет заливки) - это эффект, который пользователи фактически хотят в качестве результата (в отличие от того, как поверхностный эффект может выглядеть, когда форма с этим поверхностным эффектом переориентируется).
Дополнительно в одном варианте осуществления фабрика 204 передней поверхности расширяет текстуры (к примеру, содержащие эффект заливки или изображение) на один пиксел, чтобы удостовериться в том, что все части передней поверхности трехмерной модели охватываются посредством заливки изображения.
В этом варианте осуществления фабрика 206 исходной плоскости формирует исходную плоскость для двумерных эффектов формы (если имеются). Помимо этого, если текст имеет примененные трехмерные эффекты, фабрика 206 исходной плоскости формирует исходную плоскость для двумерных текстовых эффектов. Формирователь 206 исходной плоскости берет двумерные эффекты, такие как затенение, размытость и отражение, и наносит их на плоскость фона. Когда трехмерный эффект добавляется к форме посредством фабрики трехмерного моделирования (к примеру, как описано выше), исходная плоскость создается, и двумерные эффекты формы, такие как затенение, размытость и отражение, визуализируются на исходной плоскости. Исходная плоскость затем должна быть визуализирована позади формы. Исходная плоскость для трехмерного текста и его эффектов визуализируется впереди формы. Этот признак позволяет использовать главным образом двумерные операции при визуализации трехмерной сцены, при этом фактическим результатом является реалистично выглядящая трехмерная сцена.
В этом варианте осуществления фабрика 202 трехмерного моделирования формирует трехмерную модель из геометрии двумерной формы посредством задания свойств экструзии и скашивания для формы. Фабрика трехмерного моделирования затем формирует координаты для отображения текстуры на передней поверхности трехмерной модели. Например, фабрика трехмерного моделирования "заворачивает" двумерные поверхностные эффекты (к примеру, изображение или цвет) вокруг скоса.
Дополнительно в одном варианте осуществления фабрика 202 трехмерного моделирования формирует контуры трехмерных форм на основе нижележащей двумерной геометрии. Пример контуров проиллюстрирован на фиг.3. В этом примере, когда пользователь задействует признак контуров для формы, "очертание" формы становится толще. Цвет контура задается пользователем. Например, белые контуры могут быть использованы для того, чтобы оттенять темные формы на темном фоне. Вместо формирования контуров в ходе трехмерного моделирования контуры формируются из нижележащей двумерной формы, а также частей трехмерной модели, сформированной из двумерной формы (показанной как форма 302), и применяются для экструзии и скашивания. Результат проиллюстрирован как форма 304.
В этом варианте осуществления растеризатор/подсистема 208 компоновки затем комбинирует результирующую форму из фабрики 202 трехмерного моделирования (т.е. с трехмерной геометрией и двумерной картой отображения текстуры) с исходной плоскостью из фабрики 206 исходной плоскости. Растеризатор/подсистема 208 компоновки использует координаты текстуры для того, чтобы отображать текстуру на трехмерную модель.
Примерные компоненты для визуализации трехмерного текста
В одном варианте осуществления (не показан) предусмотрена отдельная фабрика передней поверхности, фабрика исходной плоскости и фабрика трехмерного моделирования для трехмерного текста. Фабрика трехмерного моделирования визуализирует двумерные эффекты текста. Фабрика трехмерного моделирования формирует трехмерную модель текста посредством задания свойств экструзии и скашивания текста и отображения двумерных текстовых эффектов на трехмерную модель текста. Фабрика исходной плоскости создает отдельную исходную плоскость для трехмерного текста, а затем двумерные эффекты, такие как затенение, размытость и отражение, визуализируются на этой исходной плоскости. Эта исходная плоскость должна находиться поверх формы, с тем чтобы текстовые эффекты были видимыми. Пример трехмерного текста проиллюстрирован на фиг.4.
Примерная последовательность операций формирования трехмерной графики из двумерной входной формы
Фиг.5 - это блок-схема, представляющая последовательность 500 операций способа формирования трехмерной графики из входных данных двумерной формы, согласно варианту осуществления. Последовательность 500 операций может осуществляться в любом подходящем компьютерном оборудовании. Например, последовательность 400 операций может исполняться посредством системы, такой как 2D/3D подсистема 102 (фиг.2). Следовательно, описание последовательности 500 операций может относиться, по меньшей мере, к одному из компонентов по фиг.2. Тем не менее, любая подобная ссылка на компоненты по фиг.2 служит только для целей описания, и следует понимать, что реализации фиг.2 являются неограничивающей средой для последовательности 500 операций. В этой примерной последовательности операций пользователь, использующий приложение, такое как приложение 104-1 (фиг.1), создал форму, которая должна быть визуализирована.
На этапе 502, если форма содержит текст, подсистема двумерной визуализации визуализирует все двумерные текстовые эффекты, которые должны быть применены к тексту (к примеру, разрешенные пользователем через приложение). В одном варианте осуществления подсистема двумерной визуализации - это стандартная подсистема двумерной визуализации, и она является частью фабрики 204 передней поверхности (фиг.2).
На этапе 504, если применяются трехмерные текстовые эффекты (к примеру, разрешенные пользователем), фабрика исходной плоскости (к примеру, аналогичная фабрике 206 исходной плоскости, но направленная на текст вместо форм) создает трехмерную исходную плоскость для текста. Эта исходная плоскость является отдельной от исходной плоскости формы.
Этапы 502 и 504 в этом примере выполняются только в том случае, если трехмерные эффекты должны быть применены к тексту формы.
На этапе 506 двумерные эффекты формы применяются к форме. В одном варианте осуществления вышеупомянутая подсистема двумерной визуализации применяет двумерные эффекты формы (к примеру, эффект затенения, эффект блеска, эффект отражения) к форме.
На этапе 508 создается исходная плоскость формы, и двумерные эффекты формы ассоциативно связываются с исходной плоскостью формы. В одном варианте осуществления фабрика исходной плоскости, такая как фабрика 206 исходной плоскости, создает исходную плоскость и ассоциативно связывает двумерные эффекты формы (к примеру, эффект затенения, эффект блеска, эффект отражения) с исходной плоскостью формы.
На этапе 510 выполняется то же, что и на этапе 502, но в сценариях, в которых трехмерные эффекты не применяются к тексту формы.
На этапе 512 двумерные поверхностные эффекты применяются к форме. В одном варианте осуществления подсистема двумерной визуализации фабрики передней поверхности применяет эффекты поверхности (к примеру, заливка, градиентная заливка, изображение и т.д.) к форме.
На этапе 514 карта отображения текстуры создается с помощью двумерных текстовых эффектов и двумерных поверхностных эффектов из этапов 510 и 512. В одном варианте осуществления фабрика передней поверхности создает карту отображения текстуры.
На этапе 516 двумерная геометрия получается из формы. В одном варианте осуществления фабрика трехмерного моделирования, такая как фабрика 202 трехмерного моделирования (фиг.2), получает двумерную геометрию из формы.
На этапе 518 трехмерная модель формируется из двумерной геометрии, полученной на этапе 516. В одном варианте осуществления вышеупомянутая фабрика трехмерного моделирования формирует трехмерную модель посредством задания параметров экструзии и скашивания для формы.
На этапе 520 карта отображения текстуры из этапа 514 отображается на трехмерную модель из этапа 518. В одном варианте осуществления фабрика трехмерного моделирования отображает карту отображения текстуры на трехмерную модель, с тем чтобы передняя поверхность формы имела двумерный текст, текстовые эффекты и поверхностные эффекты из этапов 510 и 512. Помимо этого, фабрика трехмерного моделирования также может применять карту отображения текстуры к трехмерным свойствам, таким как экструзия и скашивание (к примеру, "оборачивание" заливки вокруг скашиваний и экструзий).
На этапе 522 битовая карта создается из трехмерной формы из этапа 520, комбинированной с исходной плоскостью из этапа 508. В одном варианте осуществления растеризатор/подсистема компоновки, такая как растеризатор/подсистема 208 компоновки (фиг.2), создает битовую карту. Кроме того, в сценариях, в которых трехмерные эффекты применяются к тексту формы, растеризатор/подсистема компоновки также использует исходную плоскость из этапа 504 для того, чтобы создать битовую карту.
Хотя последовательность 500 операций проиллюстрирована и описана последовательно в конкретном порядке, в других вариантах осуществления операции, описанные на этих этапах, могут быть выполнены в другом порядке, несколько раз и/или параллельно. Дополнительно в некоторых вариантах осуществления одна или более операций, описанных на этапах, могут быть обособлены в другой этап, опущены или комбинированы.
Фиг.6 иллюстрирует примерный снимок 600 экрана из пользовательского интерфейса (UI), использующего двумерную метафору для заливки, согласно варианту осуществления. В этом примере пользователь может выбирать цвет для поверхности формы (т.е. трехмерного прямоугольника с закругленными углами и закругленным скашиванием). Этот признак UI алогичен признаку выбора заливки цвета для двумерного средства, которое преимущественно дает возможность пользователю, который имеет опыт работы с двумерным средством, относительно просто приспосабливаться к трехмерному средству с 2D/3D подсистемой, такой как подсистема, проиллюстрированная на фиг.2.
Дополнительно фабрика 204 передней поверхности (фиг.2) дает возможность корректировки цвета передней поверхности трехмерного объекта без влияния освещения. Это достигается в одном варианте осуществления посредством предоставления пользователю заранее заданных очертаний освещений, которые удовлетворяют следующим ограничениям:
(1) sum[Ld*(NLdir)] = 1 - Ambient Light
(2) Min[Vs*sum[Ls*(N*H)P].
В уравнении (1) Ld - это цвет направленного света, Ldir - это направленный вектор света, а N - это поверхность, нормальная к передней поверхности (которая почти всегда описывается (0, 0, -1) в двумерных контекстах). Ambient Light - это цвет и интенсивность окружающей среды.
В уравнении (2) Vs - это отраженный цвет формы, Ls - это отраженная интенсивность света, N - это нормальная поверхность (которая опять-таки почти всегда равна (0,0,-1)), H - это половинный вектор, а P - это глянец поверхности. Уравнение (2) минимизировано и в идеале должно быть равно нулю. Это может быть выполнено множеством способов, таких как присвоение Vs значения ноль, уменьшение отраженной интенсивности или задание P очень большим.
Посредством разработки световых комбинаций, которые удовлетворяют уравнению (1) и минимизируют уравнение (2), передняя поверхность трехмерной формы должна сохранять свой цвет для любого освещения, которое используется, и любой ориентации, которую имеет трехмерная форма. Эта оптимизация возможна, поскольку мы можем сделать допущение о том, что нормаль передней поверхности трехмерной формы наиболее часто является точкой в направлении (0, 0, -1).
Фиг.7 иллюстрирует пример другого упорядочивания форм в трехмерном пространстве, согласно одному варианту осуществления. В этом примере UI, показанный на фиг.7 позволяет пользователю управлять упорядочением визуализируемых форм. В одном варианте осуществления система использует двумерную метафору "переместить вперед", "переместить назад" и т.д., используемую в некоторых двумерных средствах для того, чтобы предоставлять пользователю возможность управлять тем, как формы должны отображаться для того, чтобы быть упорядоченными в трехмерном пространстве. Например, на снимке 702 экрана порядок форм следующий: форма 704 находится позади формы 706, которая, в свою очередь, находится позади формы 708. Пользователь может использовать UI для того, чтобы изменять порядок форм 704, 706 и 708. Например, на снимке 710 экрана пользователь изменил порядок посредством использования команды "переместить назад" для формы 706. В альтернативном варианте осуществления команды "переместить вперед" и "переместить назад" реализуются так, чтобы размещать формы с наложением, как деревянные блоки в трехмерном пространстве. Этот вариант осуществления не проиллюстрирован. В еще одних других вариантах осуществления эти команды "переместить вперед с наложением" и "переместить назад с наложением" могут быть использованы помимо вышеупомянутых команд "переместить вперед" и "переместить назад".
Фиг.8 - это схема, представляющая пример несгруппированных форм 802 в трехмерной перспективе и пример сгруппированных форм 812 в трехмерной перспективе, согласно варианту осуществления. Как можно видеть на фиг.8, каждая форма из несгруппированных форм 802, как кажется, имеет отдельную точку схода, тем самым предоставляя менее реалистичную перспективу форм. В отличие от этого, сгруппированные формы 812 (которые группируются с помощью команды "сгруппировать", аналогичной командам группировки, доступным в некоторых двумерных средствах), как кажется, имеют общую точку схода. Эта общая точка схода предоставляет более реалистичную трехмерную перспективу форм.
В данном подробном описании содержится ссылка на "один вариант осуществления", "вариант осуществления" или "примерный вариант осуществления", что означает то, что конкретный описанный признак, структура или характеристика включена, по меньшей мере, в один вариант осуществления. Таким образом, использование таких фраз может относиться более чем только к одному варианту осуществления. Помимо этого, описанные признаки, структуры или характеристики могут быть комбинированы любым надлежащим образом в одном или более вариантов осуществления.
Тем не менее, специалисты в данной области техники могут признавать, что варианты осуществления могут быть использованы на практике без одной или более конкретных подробностей или с другими способами, ресурсами, материалами и т.д. В других случаях, широко распространенные структуры, ресурсы или операции не показаны или описаны подробно просто для того, чтобы избежать затруднений в понимании аспектов вариантов осуществления.
Хотя проиллюстрированы и описаны примерные варианты осуществления и применения, следует понимать, что изобретение не ограничено точной конфигурацией и ресурсами, описанными выше. Различные модификации, изменения и вариации, очевидные специалистам в данной области техники, могут быть выполнены в структуре, работе и деталях способов и систем, раскрытых в данном документе, без отклонения от области применения заявленного изобретения.
1. Способ визуализации форм посредством комбинирования двумерного и трехмерного моделирования, при этом способ содержит этапы, на которых:предоставляют пользовательский интерфейс для выбора параметров формы, при этом пользовательский интерфейс предоставляет:одно или более средств управления для выбора одного или более соответствующих двумерных параметров для упомянутой формы,при этом пользовательский интерфейс содержит выбираемое пользователем средство управления упорядочением для управления упорядочением форм, визуализируемых в трехмерном пространстве, при этом упомянутое упорядочение вынуждает выбранную трехмерную форму размещаться перед по меньшей мере одной другой трехмерной формой, причем пользовательский интерфейс содержит средство управления группированием для группирования трехмерных форм, и когда сгруппированные трехмерные формы имеют вид как имеющие общую точку схода и когда каждая из несгруппированных трехмерных форм имеет вид как имеющая отдельную точку схода;применяют эффекты двумерной формы, используя механизм двумерной визуализации, к упомянутой форме;применяют двумерные поверхностные эффекты, используя механизм двумерной визуализации, к упомянутой форме;создают карту текстур из двумерного текста, которая включает в себя примененные эффекты двумерного текста и двумерные поверхностные эффекты, причем эффекты двумерного текста содержат по меньшей мере одно из: затенения, блеска и отражения, причем двумерные поверхностные эффекты содержат по меньшей мере одно из: заливки, градиентной заливки и изображения,получают двумерную геометрию из упомянутой формы,генерируют первую исходную плоскость для эффектов двумерной формы,генерируют и визуализируют эффекты двумерного текста на второй исходной плоскости, когда трехмерные эффекты применены к двумерному тексту,генерируют трехмерную модель, используя полученную двумерную геометрию,отображают карту текстур на упомянутую трехмерную модель, визуализируют трехмерную модель.
2. Способ по п.1, в котором двумерные параметры включают в себя цвет заливки для упомянутой формы.
3. Способ по п.2, в котором внешний вид цвета заливки остается постоянным в ответ на изменение ориентации трехмерной модели.
4. Способ по п.2, в котором внешний вид цвета заливки остается постоянным в ответ на изменение освещения трехмерной модели.
5. Способ по п.2, в котором двумерные параметры включают в себя градиент цвета заливки для упомянутой формы.
6. Способ по п.1, в котором двумерные параметры включают в себя цвет линий для упомянутой формы.
7. Способ по п.1, в котором двумерные параметры включают в себя вес линий для упомянутой формы.
8. Способ по п.1, в котором двумерные параметры включают в себя упорядочение двух или более форм, визуализируемых на дисплее.
9. Способ по п.8, в котором пользовательский интерфейс включает в себя выбираемое пользователем средство управления для компоновки выбранной трехмерной формы поверх по меньшей мере одной другой трехмерной формы.
10. Способ по п.8, в котором пользовательский интерфейс включает в себя выбираемое пользователем средство управления для компоновки выбранной трехмерной формы позади по меньшей мере одной другой трехмерной формы.
11. Способ по п.1, в котором пользовательский интерфейс включает в себя выбираемое пользователем средство управления, чтобы группировать две или более трехмерных форм, визуализируемых на дисплее.
12. Способ по п.11, дополнительно содержащий выбираемое пользователем средство управления, чтобы отменять группировку двух или более сгруппированных трехмерных форм.
13. Система визуализации форм, при этом система содержит:механизм двумерно/трехмерной визуализации, работающий на процессоре в компьютерной системе и выполненный с возможностью визуализировать формы, созданные с использованием как двумерного, так и трехмерного моделирования,приложение, сконфигурированное для предоставления пользовательского интерфейса для выбора параметров формы, при этом пользовательский интерфейс предоставляет:средство выбора одного или более соответствующих двумерных параметров для упомянутой формы, содержащее выбираемое пользователем средство управления упорядочением для упорядочения форм, визуализируемых в трехмерном пространстве, и средство управления группированием для группирования трехмерных форм, и когда сгруппированные трехмерные формы имеют вид как имеющие общую точку схода и когда каждая из несгруппированных трехмерных форм имеет вид как имеющая отдельную точку схода;механизм двумерной визуализации, содержащий средство для применения эффектов двумерной формы и двумерных поверхностных эффектов к упомянутой форме,средство для создания карты текстур из двумерного текста, которая включает в себя примененные эффекты двумерного текста и двумерные поверхностные эффекты,средство для генерирования первой исходной плоскости для эффектов двумерной формы,средство для генерирования и визуализации эффектов двумерного текста на второй исходной плоскости, когда трехмерные эффекты применяются к двумерному тексту,фабрику трехмерного моделирования, содержащую средство для получения двумерной геометрии из упомянутой формы и средство для генерирования трехмерной модели, используя полученную двумерную геометрию,средство для отображения карты текстур на трехмерную модель,средство для визуализации трехмерной модели.
14. Система по п.13, в которой двумерные параметры включают в себя цвет заливки для трехмерной формы.
15. Система по п.14, в которой внешний вид цвета заливки остается постоянным в ответ на изменение ориентации трехмерной модели, или изменение освещения трехмерной модели, или и того, и другого.
16. Система по п.13, в которой двумерные параметры включают в себя один или более параметров, выбранных из группы, содержащей: градиент цвета заливки для упомянутой формы; цвет линий для упомянутой формы; вес линий для упомянутой формы; упорядочение двух или более форм, визуализируемых на дисплее.
17. Система по п.13, в которой пользовательский интерфейс включает в себя средство для размещения выбранной трехмерной формы перед по меньшей мере одной другой формой.