BRPI0615776A2 - efeitos visuais extensìveis em conteúdo ativo em interfaces do usuário - Google Patents

efeitos visuais extensìveis em conteúdo ativo em interfaces do usuário Download PDF

Info

Publication number
BRPI0615776A2
BRPI0615776A2 BRPI0615776-9A BRPI0615776A BRPI0615776A2 BR PI0615776 A2 BRPI0615776 A2 BR PI0615776A2 BR PI0615776 A BRPI0615776 A BR PI0615776A BR PI0615776 A2 BRPI0615776 A2 BR PI0615776A2
Authority
BR
Brazil
Prior art keywords
effect
visual element
output
input
effects
Prior art date
Application number
BRPI0615776-9A
Other languages
English (en)
Inventor
Robert A Wlodarczyk
Biliana K Kaneva
Eduardo M Maia
Patrick J Sweeney
Rahul V Patil
Adam M Smith
Sriram Subramanian
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0615776A2 publication Critical patent/BRPI0615776A2/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Studio Circuits (AREA)
  • Materials For Medical Uses (AREA)

Abstract

EFEITOS VISUAIS EXTENSìVEIS EM CONTEúDO ATIVO EM INTERFACES DO USUáRIO. A presente revelação descreve métodos e sistemas para aplicar efeitos visuais a conteúdos ativos, como botões, caixas de combinação, vídeo, campos de editar, etc., mantendo a interatividade do conteúdo ativo. Além disso, a presente revelação oferece um mecanismo para que os desenvolvedores possam construir novos efeitos visuais e aplicá-los ao conteúdo ativo.

Description

"EFEITOS VISUAIS EXTENSÍVEIS EM CONTEÚDO ATIVO EMINTERFACES DO USUÁRIO"
ANTECEDENTES DA INVENÇÃO
Às vezes, os desenvolvedores de aplicativos dese-jam implementar interfaces do usuário que contenham elemen-tos únicos capazes distinguir a interface do usuário das de-mais e/ou aperfeiçoar a experiência do usuário quando estemexe no aplicativo por meio da interface do usuário. Uma dasmaneiras em que o desenvolvedor pode desejar personalizar ainterface do usuário consiste em criar efeitos visuais queocorrem para indicar uma modificação na interface do usuá-rio, ou em modificar um elemento da interface do usuário. Noentanto, as atuais plataformas não dão suporte à aplicaçãode um efeito visual a conteúdos usados como parte da inter-face do usuário.
SUMÁRIO
A seguir, é apresentado um sumário simplificado darevelação com o intuito de familiarizar o leitor com algunsaspectos descritos neste documento. 0 presente sumário não éuma visão geral extensiva da revelação, muito menos identi-fica elementos essenciais/fundamentais da invenção ou deli-neia o âmbito da invenção. Sua única finalidade é a de apre-sentar alguns conceitos da invenção numa forma simplificadapara servir de prelúdio à descrição mais detalhada apresen-tada mais adiante.
A presente revelação descreve métodos e sistemaspara aplicar efeitos visuais a conteúdos ativos, como bo-tões, caixas de combinação, video, campos de editar, etc.,mantendo a interatividade do conteúdo ativo. Além disso, apresente revelação oferece um mecanismo para que os desen-volvedores possam construir novos efeitos visuais e aplicá-los ao conteúdo ativo. Borrar, brilhar, piscar, explodir,expandir-se, escolher-se, esmaecer, acinzentar-se, espira-lar-se, ondular, combinar-se, centelhar, e qualquer efeitovisual passível de aplicação ao conteúdo ativo, são exemplosde efeitos visuais.
Muitos dos aspectos presentes serão apreciados comgrande facilidade à medida que são compreendidos por refe-rência à descrição detalhada seguinte, considerada em cone-xão com os desenhos acompanhantes.
BREVE DESCRIÇÃO DOS DESENHOS
A presente descrição será compreendida com maisclareza com base na descrição detalhada seguinte, ao ser li-da à luz dos desenhos concomitantes, nos quais:
A FIG. 1 é um diagrama de blocos que ilustra umexemplo de objeto "Efeito".
A FIG. 2 é um diagrama de blocos que ilustra umexemplo de objeto "Efeito" incluindo vários pinos de entradae saída.
A FIG. 3 é um diagrama de blocos que ilustra umexemplo de objeto "Efeito" contendo dois "EffectPrimitives",cada um dando suporte a vários formatos de entrada e saída.
A FIG. 4 é um diagrama de blocos que ilustra umexemplo de objeto "Efeito".
A FIG. 5 é um diagrama de blocos que ilustra umexemplo de botão antes e depois da aplicação de um efeito deexplosão.
A FIG. 6 é um diagrama de blocos que ilustra umexemplo de método para proporcionar um ou mais efeitos a umelemento visual.
A FIG. 7 é um diagrama de blocos que ilustra umexemplo de método de transformação de coordenadas de cliquepara teste preciso de clique em um elemento visual com efei-to(s) aplicado(s).
A FIG. 8 é um diagrama de blocos que ilustra umambiente de computação de uso geral que pode ser usado emuma ou mais implementações de acordo com a presente descri-ção .
Números de referência similares são usados paradesignar partes similares nos desenhos em anexo.
DESCRIÇÃO DETALHADA
A descrição detalhada apresentada abaixo, em com-binação com os desenhos anexos, serve como uma descrição dospresentes exemplos, não tendo a intenção de representar asúnicas formas em que o presente exemplo pode ser construídoou utilizado. A descrição relata as funções do exemplo e aseqüência de etapas para construir e operar o exemplo. En-tretanto, as mesmas funções e seqüências, ou equivalentes,podem ser desempenhadas por diferentes exemplos.
Embora os presentes exemplos sejam descritos e i-lustrados neste documento como se estivessem implementadosem um sistema de computador, o sistema descrito é apresenta-do como um exemplo e não limitação. Como apreciado pelosversados na técnica, os presentes exemplos são adequados pa-ra aplicação em uma variedade de tipos diferentes de siste-mas gráficos e de computação.
Há uma série de termos usados nesta descrição, de-finidos de maneira explicita a seguir. As seguintes defini-ções têm a intenção de substituir quaisquer definições al-ternativas possivelmente conhecidas na técnica.
Conteúdo ativo - elemento visual, como um botão,caixa de combinação, campo de editar, caixa de seleção, ima-gem, video ou similar, capaz de dar suporte a alguma formade interação do usuário ou que é animado de alguma forma. 0conteúdo ativo pode ser processado na memória, sem ser exi-bido na tela.
"Effect" - 0 "Effect" (Efeito) é um objeto quecontém um "EffectGraph" (isto é, um Gráfico Aciclico Dirigi-do (DAG) ) .
"EffectPrimitive" (Forma Primitiva de Efeito)Este é um efeito base. Ele não contém filhos. Geralmente, éo que os desenvolvedores de efeitos criam. É também o objetoque realiza o processamento real de pixels para o efeito.efeito - Este termo costuma ser usado quando um
Efeito ou um "EffectPrimitive" puder ser usado ou especifi-cado .
"EffectGraph" (Gráfico de Efeito) - Este se referea todo o gráfico de efeito (isto é, algum Efeito que é o E-feito mais superior em um DAG de DAGs).
pino - Este é usado para descrever o ponto de co-nexão (via IMILBitmalEffectlnputConnector) que um efeito ex-põe para conectar efeitos uns aos outros ou para outras fi-nalidades.
Elemento gráfico de varredura - Esta é a represen-tação das imagens como um conjunto de pixels, geralmente naforma de uma grade retangular ou um mapa de bits. Este termoé geralmente utilizado em contraste ao termo "gráficos veto-riais".
Gráficos vetoriais - Também conhecidos como mode-lagem geométrica, referem-se ao uso de formas primitivas co-mo pontos, linhas, curvas e polígonos para a representaçãode imagens em gráficos de computador. Este termo é geralmen-te utilizado em contraste ao termo "elementos gráficos devarredura".
Elemento visual - Esta é uma construção gráfica,como um botão, campo de editar, imagem, menu, ícone ou qual-quer outra construção gráfica interativa ou animada proces-sada na memória ou exibida numa tela, superfície de desenhoeletrônica, interface do usuário, entre outros. O elementovisual pode ser um elemento gráfico de varredura, um elemen-to de gráfico vetorial ou qualquer outro tipo de construçãográfica.
A FIG. 1 é um diagrama de blocos que ilustra umexemplo de objeto "Efeito". O Efeito é um conjunto de um oumais "EffectPrimitives", tal como 104a a 104d, que formam umgráfico acíclico dirigido (DAG). Esse DAG de efeitos geral-mente é encapsulado dentro de um objeto único 100 que expõeIMILBitmapEffect 106. Cada elemento dentro do Efeito 100 po-de ser tanto outro Efeito (isto é, expõe IMILBitmapEffect)quanto um "EffectPrimitive" (isto é, expõe IMILBitmalEffect-Primitive 107). Cada efeito pode ter 0 ou mais entradas, co-mo a entrada 108, e saídas, como a saída 109. Cada pino deentrada / saída é descrito por um IMILBitmapEffectConnector,tal como os exemplos 101 e 102. Estes são conectados juntos,como por exemplo, pela conexão 110, para formar caminhos defluxo de dados através do DAG de efeitos.
O Efeito 100 pode ser usado para proporcionar umefeito, visual a conteúdos ativos na forma de mapa de bits,inclusive elementos visuais como botões, campos de editar,gráficos de vídeo, ou quaisquer outros elementos visuais in-terativos ou animados de um meio de exibição, superfície dedesenho, interface do usuário ou similar. 0 Efeito 100 tam-bém pode ser usado para aplicar um efeito visual a um mapade bits na memória sem que o mapa de bits seja exibido ne-nhuma vez. Além disso, o Efeito 100 pode apresentar outraspropriedades que descrevem atributos de sua entrada. Por e-xemplo, "BitmapEffect" poderia emitir informações de histo-grama de cores, ou informações de detecção facial. Os efeitosespecíficos oferecidos são geralmente determinados pelos E-feitos e "EffectPrimitives" contidos em um Efeito, como porexemplo, no Efeito 100.
Normalmente, um mapa de bits de um elemento visualé fornecido na entrada do Efeito 100 exemplificativo, talcomo a entrada 101. O mapa de bits de entrada é processadopelo Efeito 100 para obter um efeito (ou conjunto de efei-tos, caso o Efeito inclua vários "EffectPrimitives", tal co-mo 104a a 104d, ou outros Efeitos), e um mapa de bits inclu-indo o(s) efeito (s) é fornecido na saída do Efeito 100, talcomo a saída 102.
A FIG. 2 é um diagrama de blocos que ilustra umexemplo de objeto "Efeito" 200 incluindo vários pinos de en-trada e saída. A vantagem de expor um conjunto de pinos deentrada / saída, como o pino 210, em vez de simplesmente ex-por uma imagem de saída, se dá pelo fato de que tais pinospermitem consultar os formatos de entrada e saída do efeito,dentre outras informações, sem precisar realmente executar oefeito. Cada pino pode aceitar / gerar imagens em diversosformatos. Os formatos que um pino aceita / gera podem serenumerados pelos métodos GetFormat() e GetNumberFormats () daInterface do IMlLBitmalEffectlnputConnector ou IMILBitmapEf-fectOutputConnector. Cada pino também pode ter um formatoideal - o formato preferido pelo efeito para aceitar / gerarem sua entrada / saída. Se dois pinos conectados tiverem omesmo formato ideal, então costuma-se usar esse formato. Se-não, é determinado algum outro formato correspondente, ge-ralmente baseando-se no formato de saída inicial solicitadono final do gráfico de efeitos. Se não houver correspondên-cia mútua entre formatos, então ocorrerá uma conversão quan-do os dados circularem da saída de um efeito para a entradado próximo efeito, conforme ilustrado na FIG. 3.
A FIG. 3 é um diagrama de blocos que ilustra umexemplo de objeto "Efeito" 300 contendo dois "EffectPrimiti-ves", cada um dando suporte a vários formatos de entrada esaída. O "EffectPrimitivel" é ilustrado dando suporte a doisformatos de saída, MILPixelFormat24bbpBGR - a saída ideal,conforme indicado pelo asterisco, e um segundo formato desaída, MILPixelFormat32bppARGB. "EffectPrimitive2" é ilus-trado dando suporte a dois formatos de entrada: o formato deentrada ideal sendo igual ao formato de saída ideal do for-mato de saída ideal de "EffectPrimitivel". A conexão 310 en-tre "EffectPrimitivel" e "EffectPrimitive2" não causará umaconversão de formatos, uma vez que ambos compartilham um ti-po de formato ideal de MILPixelFormat24bppBGR.
"EffectPrimitivel" será solicitado à saída em seuformato ideal e o resultado será passado para "EffectPrimi-tivel".
"EffectPrimitive2" é ilustrado dando suporte a umúnico formato de saída, MILPixelFormat32bppGray (seu formatoideal, conforme indicado pelo asterisco), e é conectado 320à saída única 330 do efeito 300. No entanto, o único formatode saída do efeito 300 é MILPixelFormat32bppARGB, diferentedo único formato de saída de "PrimitiveEffect2". Portanto,ocorreria uma conversão entre a saída de "EffectPrimitive2"e toda a saída do gráfico de efeito 300.
Em um exemplo de como as incompatibilidades deformato são tratadas, se os formatos ideais não corresponde-rem entre o gráfico e o efeito conectado à saída do gráfico,então o último formato solicitado (isto é, MILPixelFor-mat32bppCray, conforme ilustrado na FIG. 3) será solicitado.Se o ultimo formato de saída solicitado não existir como umasaída do gráfico, pode ser selecionado um formato aleatório.
Cada pino de saída (IMILBitmapEffectOutputConnec-tor) pode ser ligado a um pino de entrada de outro efeito noDAG, contanto que preserve a natureza acíclica do gráfico.Esta ligação pode ser de 1-para-muitos (isto é, uma únicaconexão de saída pode se ligar a várias conexões de entrada,mas não vice-versa).
A FIG. 4 é um diagrama de blocos que ilustra umexemplo de objeto "Efeito" 400. Neste exemplo, o objeto "E-feito" 400 é composto de um tradutor 420 construído usandocódigo gerenciado, como C# (C Sharp), contendo uma implemen-tação não gerenciada do código de efeitos real 410, imple-mentado em código, tal como C++ ou similar. O objeto 400 deexemplo inclui uma única entrada 401 e uma única saída 490.Em exemplos alternativos, podem estar presentes várias en-tradas e / ou saídas. Caso a conversão de formato seja ne-cessária ou fornecida, tal código de conversão é geralmenteincluído no tradutor 420. Como alternativa, o código de con-versão pode ser incluído na parte de código não gerenciado410 ou ser oferecido por algum outro módulo.
Também incluída como parte do objeto "Efeito" 400está a função de transformação F(p) 430. Em um exemplo, afunção de transformação 430 é incluída como parte do códigonão gerenciado 410. A transformação 430 . é a função quetransforma o elemento visual de entrada, geralmente na formade um mapa de bits, para dar ao elemento visual algum novoefeito visual. Em geral, tal função de transformação 430 po-de ser aplicada a elementos visuais que são construções degráficos de varredura, construções de gráficos vetoriais ousimilares.
Por exemplo, suponhamos que seja desejável disporum botão em uma interface do usuário e fazer com que o botão"brilhe" quando o mouse for posicionado sobre o botão. Emtal caso, um objeto "Efeito" de brilho pode ser criado e as-sociado ao botão, a função de transformação do efeito debrilho realizando a operação no mapa de bits do botão parafazê-lo parecer brilhar. Note que a funcionalidade do botãopermanece inalterada - apenas os aspectos visuais do botãosão modificados pelo efeito. Isto é, o usuário ainda podepairar o cursor do mouse sobre o botão, clicar no botão,etc., pois este se comportará conforme o esperado.
Em uma interface convencional do usuário, costuma-se empregar o "teste de clique" para determinar se algumaentrada do usuário, tal como um clique do mouse ou pressio-namento de tecla, deve ser aplicada a um elemento visual ouconteúdo ativo. Isto é, quando o usuário clica, por exemplo, em um botão, o código de teste de clique testa as coordena-das do clique do mouse para determinar se o clique foi feitono botão. Neste caso, o botão responde adequadamente, porexemplo, redesenhando-se na posição pressionada, iniciali-zando a funcionalidade associada ao botão, etc.
No caso de um efeito visual associado ao botão, éimportante que o teste de clique continue a operar conformeo esperado. Usando o exemplo de um objeto "Efeito" de bri-lho, quando o cursor do mouse paira sobre o botão, um objeto"Efeito" de brilho associado pode fazer com que o botão as-suma uma aparência brilhante. Além do efeito de brilho, obotão também será realçado devido ao evento "mouse-over"(mouse passando por cima), como já ocorreria normalmente.Além disso, clicar no botão também produziria o resultadoesperado. Em um exemplo, um objeto "Efeito" pode ser associ-ado a um elemento visual como uma propriedade do elemento.
A FIG. 5 é um diagrama de blocos que ilustra umexemplo de botão antes e depois da aplicação de um efeito deexplosão. Consideremos um objeto "Efeito" que produz um e-feito de explosão - dissolvendo o elemento visual associadoem vários fragmentos e espalhando-os pela interface do usuá-rio com o tempo. A FIG. 5 apresenta um exemplo de antes edepois de tal efeito.
No quadro 501 - o quadro "antes", a interface dousuário (IU) 500 é apresentada com o botão convencional 502antes do efeito de explosão ser aplicado, possivelmente comoresultado de um evento de passagem do mouse ou de um eventode clique sobre o botão. 0 quadro 502 - o quadro "depois",ilustra a mesma interface do usuário 500 com o botão 504 a-pós o efeito de explosão ser aplicado. 0 botão 504 é ilus-trado despedaçado em três fragmentos 504a a 504c, um separa-do dos outros na IU 500.
0 efeito de explosão é implementado, em parte, poruma função de transformação de explosão que mapeia cada bitdo mapa de bits do botão de entrada para novas localizações,tal como em vários fragmentos. Tais mapeamentos podem se al-terar com o tempo, tal como em um aspecto de "movendo-se pa-ra longe" de uma explosão, possivelmente até os fragmentos"se acomodarem" em algum lugar na IU.
Seja qual for a transformação, o botão continua aoperar conforme esperado. Isto é, o usuário pode clicar emqualquer fragmento do botão explodido 504 e o botão irá secomportar como se não tivesse explodido. Isso implica em queo código de teste de clique continua a operar conforme o es-perado. Isto é, facilitado pelos eventos do usuário passandoatravés do objeto "Efeito" e pela função de transformação,que determina se o botão foi "acertado". Tipicamente, isso éfeito resolvendo a função de transformação na ordem inversa,ou usando uma função de transformação bidirecional.
As funções de transformação podem efetuar trans-formações afins ou transformações não-afins. Por exemplo, astransformações afins podem incluir ampliar, encolher, esti-car ou girar um mapa de bits. As transformações não-afinspodem incluir efeitos como borrão, mancha, deformação, acin-zentar, escurecer, esmaecer, centelhar, cintilar, piscar,transformar-se, ou qualquer outro efeito similar em que ele-mentos do mapa de bits são adicionados, removidos e/ou modi-ficados de alguma maneira. Além disso, uma função de trans-formação pode não traduzir todos os bits originais de um ma-pa de bits de entrada, tal como quando é proporcionado o e-feito de desaparecer, encolher-se, ir embora, transitar parauma linha ou ponto, entre outros. Outras possíveis transfor-mações incluem espiralar-se, ondular-se, desintegrar-se, du-plicar-se, mesclar vários mapas de bits em um, entre outros.Em alguns casos, o efeito pode resultar em um bit de um mapade bits de entrada sendo mapeado para várias localizações,para uma localização absoluta, ou eliminado totalmente. Emtodos os exemplos anteriores, a função de transformação tam-bém permite indicar se o mapa de bits modificado é "acerta-do" por alguma entrada do usuário a fim de assegurar que afuncionalidade de teste de clique continua a operar conformeesperado.
A FIG. 6 é um diagrama de blocos que ilustra umexemplo de método 600 para proporcionar um ou mais efeitos aum elemento visual. Um objeto "Efeito", tal como o objeto"Efeito" 100 ilustrado na FIG. 1 e usado na descrição do mé-todo 600 apresentada a seguir neste documento, pode fazer ouso de tal método 600.
No bloco 610, o método 600 começa com um mapa debits de elemento visual sendo fornecido na entrada do objeto"Efeito" 100. Isso pode ocorrer mediante qualquer número deprocessos e/ou técnicas de software convencionais.
No bloco 620, um teste determina se há um "Effect-Primitive" seguinte contido no DAG do objeto "Efeito" 100para processar o mapa de bits. Conforme ilustrado na FIG. 1,um objeto "Efeito" pode conter "EffectPrimitives" e/ou ou-tros objetos "Efeito", com uma ou mais de suas entradas sen-do conectadas à entrada do objeto "Efeito" 100, e cada saídasendo conectada a uma ou mais entradas adicionais de "Ef-fectPrimitive" e / ou Efeito, ou à saída do objeto "Efeito"100. Se houver um "EffectPrimitive" seguinte, o método 600continua no bloco 650. Caso contrário, o método 600 continuano bloco 630.
No bloco 630, um teste determina se há um objeto"Efeito" seguinte contido no DAG do objeto "Efeito" 100. Sehouver um objeto "Efeito" seguinte, digamos, "Effect Β", ométodo continua então no bloco 610 para "Effect B". Casocontrário, o método 600 continua no bloco 640.No bloco 640, o mapa de bits de entrada completouo processamento pelo objeto "Efeito" 100 e o mapa de bitsprocessado é fornecido na saida. Isso pode ocorrer mediantequalquer número de processos e/ou técnicas de software con-vencionais.
No bloco 650, o mapa de bits, que pode ter sidoprocessado por quaisquer "EffectPrimitives" e/ou "Efeitos"anteriores, é fornecido na entrada do próximo "EffectPrimi-tive". Isso pode ocorrer mediante qualquer número de proces-sos e/ou técnicas de software convencionais.
No bloco 660, um teste determina se o mapa de bitsestá em um formato aceitável para processamento pelo "Ef-fectPrimitive". Neste caso, o método 600 continua então nobloco 680. Caso contrário, o método 600 continua no bloco670.
No bloco 670, o mapa de bits é convertido de re-formatado para um formato aceitável para processamento pelopróximo "EffectPrimitive". Em um exemplo, o mapa de bits po-de ser reformatado em um formato ideal.
No bloco 680, uma função de transformação, tal co-mo a função de transformação F(p) 430 ilustrada na FIG. 4, éaplicada ao mapa de bits de entrada, geralmente resultandoem um efeito (s) sendo aplicado (s) ao mapa de bits ou em umnovo mapa de bits sendo gerado a partir do mapa de bits deentrada, o novo mapa de bits incluindo o(s) efeito(s). 0 mé-todo 600 continua no bloco 620.
A FIG. 7 é um diagrama de blocos que ilustra umexemplo de método 700 de transformação de coordenadas declique para teste preciso de clique em um elemento visualcom efeito (s) aplicado(s). Uma vez que um elemento visualcom um efeito ou efeitos pode ser posicionado em outro lugarnuma interface do usuário do que estaria sem o(s) efeito(s),uma transformação das coordenadas de acerto, tal como umclique do mouse ou evento de passar o mouse por cima, costu-ma ser necessária para assegurar o teste de clique correto.Um objeto "Efeito", tal como o objeto "Efeito" 100 ilustradona FIG. 1 e usado na descrição do método 700 apresentada aseguir neste documento, pode fazer o uso de tal método 700.
No bloco 710, o método 700 começa com as coordena-das de um evento do usuário, tal como um clique do mouse ouevento de passar o mouse por cima, sendo fornecido para umaentrada do objeto "Efeito" 100. Isso pode ocorrer mediantequalquer número de processos e/ou técnicas de software con-vencionais .
No bloco 720, um teste determina se há um "Effect-Primitive" anterior contido no DAG do objeto "Efeito" 100para transformar as coordenadas. Conforme ilustrado na FIG.1, um objeto "Efeito", como por exemplo, o objeto "Efeito"100 exemplificativo, pode conter "EffectPrimitives" e/ou ou-tros objetos "Efeito", com uma ou mais de suas entradas sen-do conectadas à entrada do objeto "Efeito" 100, e cada saidasendo conectada a uma ou mais entradas adicionais de "Ef-fectPrimitive" e / ou Efeito, ou à saida do objeto "Efeito"100. O método 700 começa com o ultimo objeto "Efeito" no DAGe trabalha progressivamente para alcançar a transformação decoordenadas. Um objeto "Efeito" "anterior" é um objeto "E-feito" no DAG iniciando na saida do objeto "Efeito" e traba-lhando de volta através de quaisquer objetos "Efeito" no DAGem direção à entrada do objeto "Efeito". Por exemplo, "Ef-fectPrimitive" 104d é anterior à saida do objeto "Efeito"100, "EffectPrimitives" 104a, 104b e 104c são anteriores a104d, e "EffectPrimitive" 104b também é anterior a 104c. Sehouver um "EffectPrimitive" seguinte, o método 700 continuano bloco 730. Caso contrário, o método 700 continua no bloco740 .
No bloco 730, uma função de transformação, tal co-mo a função de transformação F(p) 430 ilustrada na FIG. 4, éaplicada às coordenadas do mapa de bits do usuário. Normal-mente, a função de transformação é aplicada na ordem inver-sa. 0 método 700 continua no bloco 720.
No bloco 740, um teste determina se há um objeto
"Efeito" anterior contido no DAG do objeto "Efeito" 100. Sehouver um objeto "Efeito" anterior, digamos, Efeito A, o mé-todo continua então no bloco 710 para Efeito A. Caso contrá-rio, o método 700 continua no bloco 750.
No bloco 750, o método 700 fornece as coordenadastransformadas do evento do usuário para o código de teste declique ou similar.
A FIG. 8 é um diagrama de blocos que ilustra umambiente de computação de uso geral 800 que pode ser usadoem uma ou mais implementações de acordo com a presente des-crição. O ambiente de sistema de computação 800 é apenas umexemplo de um ambiente de computação adequado e não tem aintenção de implicar em qualquer limitação ao âmbito de usoou à funcionalidade da matéria reivindicada. Tampouco se de-ve interpretar o ambiente de computação 800 como tendo qual-quer dependência ou exigência com relação a qualquer um doscomponentes ilustrados, ou combinação desses, no ambienteoperacional exemplificativo 800.
As técnicas e objetos descritos são operacionaiscom vários ambientes ou configurações diferentes de sistemade computação de uso geral ou especifico. Exemplos de siste-mas, ambientes e/ou configurações de computação bem conheci-dos que podem ser adequados para uso incluem, sem a isto serestringir, computadores pessoais, computadores servidores,dispositivos portáteis ou laptop, sistemas multiprocessado-res, sistemas baseados em microprocessador, componentes ele-trônicos programados pelo consumidor, PCs de rede, microcom-putadores, computadores de grande porte, ambientes de compu-tação distribuída que incluem qualquer um dos sistemas oudispositivos acima, entre outros.
A descrição seguinte pode ser expressa no contextogeral de instruções executadas por computador, tais como mó-dulos de programa sendo executados por um computador. Geral-mente, os módulos de programa incluem rotinas, programas,objetos, estruturas de dados etc., que efetuam tarefas espe-cíficas ou implementam tipos de dados abstratos específicos.As implementações descritas também podem ser praticadas emambientes de computação distribuída, nos quais as tarefassão efetuadas por dispositivos de processamento remoto sãoligados por meio de uma rede de comunicações. Em um ambientede computação distribuída, os módulos de programa podem es-tar localizados tanto em meios de armazenamento em computa-dor remotos quanto locais, inclusive em dispositivos de ar-mazenamento em memória.
Com referência à FIG. 8, um sistema exemplificati-vo para implementação da invenção inclui um dispositivo decomputação de uso geral na forma de um computador 810. Oscomponentes do computador 810 podem incluir, sem a isto serestringir, uma unidade de processamento 820, uma memória desistema 830 e um barramento de sistema 821 que acopla várioscomponentes do sistema, incluindo a memória do sistema à u-nidade de processamento 820. O barramento de sistema 821 po-de possuir qualquer um dos diferentes tipos de estrutura debarramento, incluindo um barramento de memória ou controla-dor de memória, um barramento periférico e um barramento Io-cal usando qualquer uma das diferentes arquiteturas de bar-ramento. A titulo exemplificativo, sem limitação, tais ar-quiteturas incluem barramento da Arquitetura Padrão da In-dústria (ISA), barramento da Arquitetura de Microcanal(MCA), barramento ISA Aperfeiçoada (EISA), barramento localda Associação de Padrões Eletrônicos de Video (VESA) e bar-ramento de Interconexão de Componentes Periféricos (PCI),também chamado de barramento Mezanino.
0 computador 810 geralmente inclui uma variedadede meios legíveis por computador. Meios legíveis por compu-tador podem ser qualquer meio disponível que pode ser aces-sado por computador 810 e que inclui tanto meios voláteis enão-voláteis quanto meios removíveis e não-removíveis. Atítulo exemplificativo, sem limitação, meios legíveis porcomputador podem compreender meios de armazenamento e meiosde comunicação de computador. Os meios de armazenamento decomputador incluem tanto meios voláteis e não-voláteis,quanto removíveis e não-removiveis, implementados em qual-quer método ou tecnologia para armazenamento de informações,tais como instruções legíveis por computador, estruturas dedados, módulos de programa ou outros dados. Os meios de ar-mazenamento incluem, sem a isto se restringir, RAM, ROM,KEPROM, memória flash ou outra tecnologia de memória, CD-ROM, discos versáteis digitais (DVD) ou outro armazenamentoem disco óptico, cassetes magnéticos, fita magnética, arma-zenamento em disco magnético ou outros dispositivos de arma-zenamento magnético, ou qualquer outro meio que possa serusado para armazenar as informações desejadas e que possaser acessado pelo computador 810. Combinações de qualquer umdos elementos anteriores também deverão ser incluídas no âm-bito de meios legíveis por computador.
A memória do sistema 830 inclui meios de armazena-mento de computador na forma de memória volátil e/ou não-volátil, tal como memória somente para leitura (ROM) 831 ememória de acesso aleatório (RAM) 832. Um sistema básico deentrada/saída 833 (BIOS), contendo as rotinas básicas paraajudar a transferir informações entre os elementos dentro docomputador 810, tal como durante a inicialização, é geral-mente armazenado na ROM 831. A RAM 832 geralmente contém da-dos e/ou módulos de programa que podem ser acessados a qual-quer momento e/ou que estão sendo operados pela unidade deprocessamento 820. A título exemplificativo, e sem limita-ção, a FIG. 8 ilustra o sistema operacional 834, programasaplicativos 835, outros módulos de programa 836, e dados deprograma 837.
O computador 810 também inclui outros meios de ar-mazenamento de computador removiveis/não-removiveis e volá-teis/não-voláteis. A titulo meramente exemplificativo, aFig. 8 ilustra uma unidade de disco rigido 841 que lê ougrava em meios magnéticos não-removiveis e não-voláteis, umaunidade de disco magnético 851 que lê ou grava em um discomagnético removível e não-volátil 852, e uma unidade de dis-co óptica 855 que lê ou grava em um disco óptico removível enão-volátil 856, tal como um CD-ROM ou outros meios ópticos.Outros meios de armazenamento de computador removiveis/não-removiveis e voláteis/não-voláteis que podem ser usados noambiente operacional exemplificativo incluem, mas sem a istose restringir, cassetes de fita magnética, cartões de memó-ria flash, discos versáteis digitais (DVD), fitas de vídeodigital, RAM de estado sólido, ROM de estado sólido, entreoutros. A unidade de disco rígido 841 é geralmente conectadaao barramento do sistema 821 por meio de uma interface dememória não-removível, tal como a interface 840, e a unidadede disco magnético 851 e a unidade de disco óptico 855 sãogeralmente conectadas ao barramento de sistema 821 por umainterface de memória removível, tal como a interface 850.
As unidades e seus meios de armazenamento de com-putador associados, discutidos acima na FIG. 8, fornecem oarmazenamento de instruções legíveis por computador, estru-turas de dados, módulos de programa e outros dados para ocomputador 810. Na FIG. 8, por exemplo, a unidade de discorígido 841 é ilustrada armazenando o sistema operacional844, os programas aplicativos 845, outros módulos de progra-ma 846, e dados de programa 847. Observe que esses componen-tes podem ou ser os mesmos ou ser diferentes do sistema ope-racional 834, dos programas aplicativos 835, dos outros mó-dulos de programa 836 e dos dados de programa 837. 0 sistemaoperacional 844, os programas aplicativos 845, os outros mó-dulos de programa 846 e os dados de programa 847 recebem nú-meros diferentes neste documento para mostrar que se tratam,no mínimo, de cópias diferentes. Um usuário pode entrar comcomandos e informações no computador 810 por meio de dispo-sitivos de entrada, tal como um teclado 862 e o dispositivode apontamento 861, normalmente chamado de mouse, trackballou superfície de toque. Outros dispositivos de entrada (nãoilustrados) podem incluir um microfone, joystick, controlede jogo, antena de satélite, scanner, entre outros. Esses eoutros dispositivos de entrada são geralmente conectados àunidade de processamento 820 por meio de uma interface deentrada do usuário 860 que é acoplada ao barramento do sis-tema 821, mas que pode ser conectada por outra interface eestruturas de barramento, tal como uma porta paralela, portade jogo ou um barramento serial universal (USB). Um monitor891, ou outro tipo de dispositivo de exibição, também é co-nectado ao barramento de sistema 821 por meio de uma inter-face, tal como uma interface de vídeo 890. Além do monitor,os computadores também podem incluir outros periféricos desaída, tais como alto-falantes 897 e impressora 896, que po-dem ser conectados por meio de uma interface periférica desaída 895. Uma câmera 863 (tal como uma câmera fotográficaou de vídeo digital/eletrônica, ou digitalizador de fil-me/fotográfico) capaz de capturar uma seqüência de imagens864 também pode ser incluído como dispositivo de entrada pa-ra o computador pessoal 810. Além disso, embora seja re-presentada apenas uma câmera, é possível incluir várias câ-meras como um dispositivo de entrada para o computador pes-soal 810. As imagens 864 da câmera ou câmeras são alimenta-das para o computador 810 por meio de uma interface de câme-ra apropriada 865. Esta interface 865 é conectada ao barra-mento do sistema 821, permitindo assim que as imagens sejamroteadas e armazenadas na RAM 832, ou em um dos outros dis-positivos de armazenamento de dados associados ao computador810. Entretanto, nota-se também que os dados de imagem podemser alimentados para o computador 810 a partir de qualquerum dos meios legíveis por computador supracitados, sem exi-gir o uso da câmera 8 63.
0 computador 810 pode operar em um ambiente em re-de usando conexões lógicas com um ou mais computadores remo-tos, tal como o computador remoto 880. O computador remoto880 pode ser um computador pessoal, um servidor, um rotea-dor, um PC de rede, um dispositivo não hierarquizado ou ou-tro nó comum da rede, e geralmente inclui muitos ou todos oselementos supramencionados com relação ao computador 810,apesar de apenas um dispositivo de armazenamento em memória881 haver sido ilustrado na Figura 8. As conexões lógicasilustradas na FIG. 8 incluem uma rede local (LAN) 871 e umarede de longa distância (WAN) 873, mas também pode incluiroutras redes. Tais ambientes de rede são comuns em escritó-rios, redes de computador a nível empresarial, intranets e aInternet.
Quando usado em um ambiente em rede LAN, o compu-tador 810 é conectado à LAN 871 por meio de uma interface derede ou adaptador 870. Quando usado em um ambiente em redeWAN, o computador 810 geralmente inclui um modem 872 ou ou-tros meios para estabelecer comunicações pela WAN 873, talcomo a Internet. O modem 872, que pode ser interno ou exter-no, pode ser conectado ao barramento do sistema 821 por meioda interface de entrada do usuário 860, ou por outro meca-nismo apropriado. Em um ambiente em rede, os módulos de pro-grama representados com relação ao computador 810, ou partesdeles, podem ser armazenados no dispositivo de armazenamentoem memória remoto. A título exemplificativo, e sem limita-ção, a Fig. 8 ilustra programas aplicativos remotos 885 re-sidindo no dispositivo de memória 881. Será apreciado que asconexões de rede ilustradas são exemplif icativas e que ou-tros meios para estabelecer uma ligação de comunicações en-tre os computadores podem ser usados.
Embora uma ou mais implementações exemplificativastenham sido ilustradas e descritas neste documento, apreci-ar-se-á que várias modificações podem ser feitas nele semdivergir da essência e âmbito das reivindicações anexas aele.

Claims (20)

1. Método para aplicar um efeito visual a um ele-mento visual, o método sendo CARACTERIZADO por compreender:proporcionar um gráfico aciclico direcionado in-cluindo um ou mais efeitos, uma entrada e uma saida, cada umdo um ou mais efeitos incluindo uma função de transformação;proporcionar o elemento visual na entrada;determinar se há um próximo efeito de um ou maisefeitos no gráfico aciclico direcionado, e, caso haja,proporcionar o elemento visual para uma entrada dopróximo efeito,determinar se um formato do elemento visual é com-patível com o próximo efeito, e, caso não seja, converter oelemento visual em um formato compatível,aplicar a função de transformação do próximo efei-to ao elemento visual de modo a modificar o elemento visualcom o próximo efeito,repetir a etapa de determinar até que não haja ou-tro efeito seguinte de um ou mais efeitos no gráfico acícli-co direcionado; eproporcionar o elemento visual na saída.
2. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que a função de transformação éuma função de transformação bidirecional.
3. Método, de acordo com a reivindicação 1,ARACTERIZADO pelo fato de que o elemento visual é um mapade bits.
4. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o elemento visual como saídaé exibido em uma interface do usuário.
5. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o elemento visual como entra-da é proporcionado a partir de um dispositivo de armazena-mento e o elemento visual como saída é armazenado no dispo-sitivo de armazenamento.
6. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o elemento visual inclui ví-deo.
7. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o elemento visual é converti-do em um mapa de bits.
8. Método, de acordo com a reivindicação 7,CARACTERIZADO pelo fato de que o elemento visual como saídamantém sua funcionalidade interativa.
9. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o elemento visual é animado.
10. Método, de acordo com a reivindicação 1,CARACTERIZADO por ser incorporado em instruções executáveispor computador em um meio legível por computador.
11. Método para transformar coordenadas de um e-vento de clique em um elemento visual, o método sendoCARACTERIZADO por compreender:proporcionar um gráfico acíclico direcionado in-cluindo um ou mais efeitos, uma entrada e uma saída, cada umde um ou mais efeitos incluindo uma função de transformaçãobidirecional;aplicar um ou mais efeitos ao elemento visual;proporcionar as coordenadas do evento de clique naentrada;determinar se há um efeito anterior de um ou maisefeitos no gráfico aciclico direcionado, e, caso haja,proporcionar as coordenadas para uma entrada doefeito anterior,aplicar a função de transformação bidirecional doefeito anterior às coordenadas a fim de modificar as coorde-nadas com base no efeito anterior,repetir a etapa de determinar até que não haja ou-tro efeito anterior de um ou mais efeitos no gráfico acicli-co direcionado; eproporcionar as coordenadas na saida.
12. Método, de acordo com a reivindicação 11,CARACTERIZADO pelo fato de que o elemento visual é um mapade bits.
13. Método, de acordo com a reivindicação 11,CARACTERIZADO pelo fato de que o elemento visual inclui ví-deo.
14. Método, de acordo com a reivindicação 11,CARACTERIZADO pelo fato de que o evento de clique é um re-sultado de uma entrada do usuário.
15. Método, de acordo com a reivindicação 11,CARACTERIZADO por ser incorporado em instruções executáveispor computador em um meio legível por computador.
16. Sistema para aplicar efeitos visuais a conteú-dos ativos, o sistema sendo CARACTERIZADO por compreender:um objeto de efeito, que inclui uma entrada e umasaida, o objeto efeito incluindo um ou mais outros objetosde efeito ou uma ou mais formas primitivas de efeito;meios para estabelecer ligações entre alguns de umou mais outros objetos efeito, algumas de uma ou mais formasprimitivas de efeito, a entrada e a saida, de modo a formarum gráfico aciclico direcionado;meios para proporcionar o conteúdo ativo para aentrada;meios para aplicar uma função de transformação decada um de alguns de um ou mais outros objetos efeito ou dealgumas de uma ou mais formas primitivas de efeito, compre-endendo o gráfico aciclico direcionado ao conteúdo ativo,resultando em conteúdo ativo transformado; emeios para proporcionar o conteúdo ativo transfor-mado para a saida.
17. Sistema, de acordo com a reivindicação 16,CARACTERIZADO pelo fato de que a função de transformação éuma função de transformação bidirecional.
18. Sistema, de acordo com a reivindicação 17,CARACTERIZADO por adicionalmente compreender:meios para proporcionar as coordenadas de um even-to de clique no conteúdo ativo transformado para o objetoefeito;meios para aplicar a função de transformação bidi-recional de cada um de alguns de um ou mais outros objetosefeito ou de algumas de uma ou mais formas primitivas de e-feito, compreendendo o gráfico aciclico direcionado às coor-denadas do evento de clique, resultando em coordenadastransformadas; emeios para proporcionar as coordenadas transforma-das para a funcionalidade de teste de acerto.
19. Sistema, de acordo com a reivindicação 16,CARACTERIZADO pelo fato de que o conteúdo ativo inclui vídeo.
20. Sistema, de acordo com a reivindicação 16,CARACTERIZADO por ser incorporado como instruções executá-veis por computador em um meio legível por computador.
BRPI0615776-9A 2005-09-13 2006-09-05 efeitos visuais extensìveis em conteúdo ativo em interfaces do usuário BRPI0615776A2 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US71673505P 2005-09-13 2005-09-13
US60/716.735 2005-09-13
US11/457.711 2006-07-14
US11/457,711 US8026920B2 (en) 2005-09-13 2006-07-14 Extensible visual effects on active content in user interfaces
PCT/US2006/034613 WO2007032972A1 (en) 2005-09-13 2006-09-05 Extensible visual effects on active content in user interfaces

Publications (1)

Publication Number Publication Date
BRPI0615776A2 true BRPI0615776A2 (pt) 2011-05-24

Family

ID=37856794

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0615776-9A BRPI0615776A2 (pt) 2005-09-13 2006-09-05 efeitos visuais extensìveis em conteúdo ativo em interfaces do usuário

Country Status (11)

Country Link
US (1) US8026920B2 (pt)
EP (1) EP1949210A4 (pt)
JP (1) JP4927846B2 (pt)
KR (1) KR20080042835A (pt)
CN (1) CN101283328B (pt)
BR (1) BRPI0615776A2 (pt)
CA (1) CA2618862C (pt)
MX (1) MX2008003406A (pt)
NO (1) NO338043B1 (pt)
RU (1) RU2008109488A (pt)
WO (1) WO2007032972A1 (pt)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7509588B2 (en) 2005-12-30 2009-03-24 Apple Inc. Portable electronic device with interface reconfiguration mode
US10313505B2 (en) 2006-09-06 2019-06-04 Apple Inc. Portable multifunction device, method, and graphical user interface for configuring and displaying widgets
US8564544B2 (en) * 2006-09-06 2013-10-22 Apple Inc. Touch screen device, method, and graphical user interface for customizing display of content category icons
US8689132B2 (en) 2007-01-07 2014-04-01 Apple Inc. Portable electronic device, method, and graphical user interface for displaying electronic documents and lists
US8519964B2 (en) 2007-01-07 2013-08-27 Apple Inc. Portable multifunction device, method, and graphical user interface supporting user navigations of graphical objects on a touch screen display
US9933937B2 (en) 2007-06-20 2018-04-03 Apple Inc. Portable multifunction device, method, and graphical user interface for playing online videos
US9772751B2 (en) 2007-06-29 2017-09-26 Apple Inc. Using gestures to slide between user interfaces
US11126321B2 (en) 2007-09-04 2021-09-21 Apple Inc. Application menu user interface
US9619143B2 (en) 2008-01-06 2017-04-11 Apple Inc. Device, method, and graphical user interface for viewing application launch icons
US8619038B2 (en) 2007-09-04 2013-12-31 Apple Inc. Editing interface
US8423883B1 (en) * 2009-09-11 2013-04-16 Adobe Systems Incorporated Systems and methods of creating and editing electronic content including multiple types of graphics
US8736561B2 (en) 2010-01-06 2014-05-27 Apple Inc. Device, method, and graphical user interface with content display modes and display rotation heuristics
US20130080953A1 (en) * 2011-09-27 2013-03-28 International Business Machines Corporation Multi-area widget minimizing
US8930810B2 (en) * 2012-02-13 2015-01-06 International Business Machines Corporation User interface (UI) color scheme generation and management according to visual consistency of visual attributes in the color scheme
EP2880632B1 (en) * 2012-08-03 2020-07-15 DreamWorks Animation LLC Temporal dependencies in dependency graphs
US10528214B2 (en) * 2016-12-28 2020-01-07 Microsoft Technology Licensing, Llc Positioning mechanism for bubble as a custom tooltip
US10877643B2 (en) * 2018-03-15 2020-12-29 Google Llc Systems and methods to increase discoverability in user interfaces

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2603982B2 (ja) * 1988-02-12 1997-04-23 日本放送協会 映像信号処理システムのマルチプロセッサ結合装置
DE69225544T2 (de) * 1991-08-13 1998-12-03 Xerox Corp Elektronische Bilderzeugung
GB2340362B (en) * 1998-07-31 2002-11-06 Sony Uk Ltd Digital video processing
GB2340360B (en) 1998-07-31 2002-11-06 Sony Uk Ltd Animation of video special effects
GB2340361B (en) 1998-07-31 2002-11-06 Sony Uk Ltd Digital video processing
US6522331B1 (en) * 2000-02-01 2003-02-18 Stormfront Studios, Inc. Character animation using directed acyclic graphs
US7009626B2 (en) * 2000-04-14 2006-03-07 Picsel Technologies Limited Systems and methods for generating visual representations of graphical data and digital document processing
US7064766B2 (en) * 2001-10-18 2006-06-20 Microsoft Corporation Intelligent caching data structure for immediate mode graphics
US7412662B2 (en) * 2004-04-12 2008-08-12 Microsoft Corporation Method and system for redirection of transformed windows
US7619628B2 (en) * 2005-06-24 2009-11-17 Microsoft Corporation Caching digital image data
US7295208B2 (en) * 2005-06-24 2007-11-13 Microsoft Corporation Translating layers into effect graphs in digital image processing
US7519233B2 (en) * 2005-06-24 2009-04-14 Microsoft Corporation Accumulating transforms through an effect graph in digital image processing
US20060290705A1 (en) * 2005-06-24 2006-12-28 Microsoft Corporation Performing a pre-rendering pass in digital image processing
US7554550B2 (en) * 2005-06-24 2009-06-30 Microsoft Corporation Non-destructive processing of digital image data

Also Published As

Publication number Publication date
CN101283328B (zh) 2011-08-03
CA2618862C (en) 2013-12-24
EP1949210A1 (en) 2008-07-30
KR20080042835A (ko) 2008-05-15
NO20080709L (no) 2008-04-14
CN101283328A (zh) 2008-10-08
WO2007032972A1 (en) 2007-03-22
MX2008003406A (es) 2008-03-27
US20070061744A1 (en) 2007-03-15
US8026920B2 (en) 2011-09-27
NO338043B1 (no) 2016-07-25
JP4927846B2 (ja) 2012-05-09
JP2009508256A (ja) 2009-02-26
EP1949210A4 (en) 2009-01-07
CA2618862A1 (en) 2007-03-22
RU2008109488A (ru) 2009-10-10

Similar Documents

Publication Publication Date Title
BRPI0615776A2 (pt) efeitos visuais extensìveis em conteúdo ativo em interfaces do usuário
US7428542B1 (en) Method and system for combining nodes into a mega-node
EP1686461B1 (en) Method and system for a target device display simulation
JP5209051B2 (ja) データシステム及び方法
MXPA05007072A (es) Elaboracion de graficas utilizando formas.
JP2000048016A (ja) コンピュ―タプロセッサ上で実行可能なテキストのフォ―マット及び表示方法、テキストをフォ―マットし表示可能なコンピュ―タ装置、テキストをフォ―マットし表示可能なプログラムを記憶したコンピュ―タ読み取り可能な記憶媒体、テキストをフォ―マットし表示可能なテキストエディタに新たなスタイルを付加する付加方法
US20070273706A1 (en) Texture mapping 2-D text properties to 3-D text
BRPI0712664A2 (pt) acesso remoto de caracteres com resolução de sub-pixel
Roncarelli The computer animation dictionary: including related terms used in computer graphics, film and video, production, and desktop publishing
JP4158462B2 (ja) 画面表示処理装置及び画面表示処理方法、並びにコンピュータ・プログラム
Vollmar et al. VINCI-volume imaging in neurological research, co-registration and ROIs included
US9153193B2 (en) Primitive rendering using a single primitive type
Walsh Advanced 3D Game Programming with DirectX 9
CN112099770A (zh) 基于模板的网页生成方法、***、设备及存储介质
Chung Pro Processing for Images and Computer Vision with OpenCV: Solutions for Media Artists and Creative Coders
JPH09101873A (ja) 画像表示方法及びその装置
Sanchez et al. The PC graphics handbook
Asthana et al. Computer graphics for scientists and engineers
TW546580B (en) Method for displaying graphics in start up screen of computer system
Kilgard et al. OpenGL & Window System Integration
Young Unicon's OpenGL 2D and Integrated 2D/3D Graphics Implementation
Yao VTQuestAR: An Augmented Reality Mobile Software Application for Virginia Tech Campus Visitors
CN116339708A (zh) 基于Modelica状态机的建模方法、装置、电子设备和存储介质
Rykov Three Dimensional Interactive Dental Charting
Chung Pro Processing for Images and Computer Vision with OpenCV

Legal Events

Date Code Title Description
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 7A ANUIDADE.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: REFERENTE AO DESPACHO 8.6 PUBLICADO NA RPI 2256 DE 01/04/2014.