Cenário

classe pública Scene

O cenário da cena mantém o gráfico da cena, uma organização hierárquica do conteúdo de uma cena. Uma cena pode ter zero ou mais nós filhos, e cada nó pode ter zero ou mais nós filhos.

O cenário também oferece testes de hit, uma maneira de detectar qual nó é tocado por um MotionEvent ou Ray.

Classes aninhadas

Interface Scene.OnPeekTouchListener Definição de interface para um callback ser invocado quando um evento de toque é enviado a uma cena. 
Interface Scene.OnTouchListener Definição de interface para um callback ser invocado quando um evento de toque é enviado a uma cena. 
Interface Scene.OnUpdateListener (link em inglês) Definição de interface para que um callback seja invocado uma vez por frame imediatamente antes da atualização da cena. 

Campos

público estático final EnvironmentalHdrParameters DEFAULT_HDR_PARAMETERS (em inglês)

Construtores públicos

Scene (visualização de SceneView)
Crie uma cena com o contexto fornecido.

Métodos públicos

void
addOnPeekTouchListener (Scene.OnPeekTouchListener onPeekTouchListener)
Adiciona um listener que será chamado antes que o Scene.OnTouchListener seja invocado.
void
addOnUpdateListener(Scene.OnUpdateListener onUpdateListener)
Adiciona um listener que será chamado uma vez por frame imediatamente antes da atualização da cena.
Câmera
getCamera()
Faça o download da câmera usada para renderizar a cena.
getSunlight()
Acessar o nó luz solar padrão.
Cenário de visualização
getView()
Retorna o SceneView usado para criar a cena.
HitTestResult.
hitTest(eventEvent do Motion)
Testes para ver se um evento de movimento está tocando em qualquer nó na cena, com base em um teste de hit ray, que tem a origem na posição de tela do evento de movimento e gera um HitTestResult contendo o nó mais próximo da tela.
HitTestResult.
hitTest(raio Ray)
Testes para ver se um raio está alcançando qualquer nó na cena e gera um HitTestResult contendo o nó mais próximo da origem do raio que cruza com o raio.
ArrayList<HitTestResult>
hitTestAll(raio Ray)
Testes para ver se um raio está alcançando nós na cena e retorna uma lista de HitTestResults contendo todos os nós que foram atingidos, ordenados por distância.
ArrayList<HitTestResult>
hitTestAll(eventEvent do Motion)
Testes para ver se um evento de movimento está tocando em qualquer nó na cena e retorna uma lista de HitTestResults contendo todos os nós que foram atingidos, ordenados por distância.
void
onAddChild(filho do Node)
void
onRemoveChild(filho do Node)
overlapTest(nó do )
Testes para ver se a forma de colisão de nós fornecidos se sobrepõe à forma de colisão de qualquer outro nó na cena usando getCollisionShape().
ArrayList<>
overlapTestAll(nó do )
Testa se um nó está sobreposto a outros nós no cenário usando getCollisionShape().
void
removeOnPeekTouchListener(Scene.OnPeekTouchListener onPeekTouchListener)
Remove um listener que será chamado antes que o Scene.OnTouchListener seja invocado.
void
removeOnUpdateListener(Scene.OnUpdateListener onUpdateListener)
Remove um listener que será chamado uma vez por frame imediatamente antes da atualização da cena.
void
setLightEstimated(Color colorColorion, Float pixelIntensity)
Define a estimativa de luz para modificar a iluminação e a intensidade da cena.
void
setOnTouchListener(Scene.OnTouchListener onTouchListener)
Registre um callback a ser invocado quando a cena for tocada.

Métodos herdados

Campos

público estático final EnvironmentalHdrParameters DEFAULT_HDR_PARAMETERS

Construtores públicos

público Cena (visualização do SceneView)

Crie uma cena com o contexto fornecido.

Parâmetros
visualização

Métodos públicos

public void addOnPeekTouchListener (Scene.OnPeekTouchListener onPeekTouchListener)

Adiciona um listener que será chamado antes que o Scene.OnTouchListener seja invocado. Isso é invocado mesmo que o gesto tenha sido consumido, o que possibilita observar todos os eventos de movimento enviados para a cena. Isso é chamado mesmo que o toque não seja sobre um nó. Nesse caso, getNode() será nulo. Os listeners serão chamados na ordem em que foram adicionados.

Parâmetros
onPeekTouchListener listener de toque de exibição para adicionar

void public addOnUpdateListener (Scene.OnUpdateListener onUpdateListener)

Adiciona um listener que será chamado uma vez por frame imediatamente antes da atualização da cena. Os listeners serão chamados na ordem em que foram adicionados.

Parâmetros
onUpdateListener O listener de atualização a ser adicionado

câmera getCamera ()

Faça o download da câmera usada para renderizar a cena. A câmera é um tipo de nó.

Retorna
  • a câmera usada para renderizar a cena

Node getSunlight ()

Acessar o nó luz solar padrão.

Retorna
  • nó da luz solar usado para iluminar a cena

público SceneView getView ()

Retorna o SceneView usado para criar a cena.

público HitTestResult hitTest (MotionEvent movimentoEvent)

Testes para ver se um evento de movimento está tocando em qualquer nó na cena, com base em um teste de hit ray, que tem a origem na posição de tela do evento de movimento e gera um HitTestResult contendo o nó mais próximo da tela.

Parâmetros
eventEvent o evento de movimento a ser usado para o teste
Retorna
  • o resultado inclui o primeiro nó que foi atingido pelo evento de movimento (pode ser nulo) e informações sobre onde o evento de movimento atingiu o nó no espaço mundial

público HitTestResult hitTest (Ray ray)

Testes para ver se um raio está alcançando qualquer nó na cena e gera um HitTestResult contendo o nó mais próximo da origem do raio que cruza com o raio.

Parâmetros
Ray o raio a ser usado para o teste
Retorna
  • o resultado inclui o primeiro nó que foi atingido pelo ray (pode ser nulo) e informações sobre onde o ray atingiu o nó no espaço mundial

público ArrayList<HitTestResult> hitTestAll (Ray ray)

Testes para ver se um raio está alcançando nós na cena e retorna uma lista de HitTestResults contendo todos os nós que foram atingidos, ordenados por distância.

Parâmetros
Ray O raio a ser usado para o teste.
Retorna
  • Essa dimensão é preenchida com um HitTestResult para cada nó classificado por distância. Será vazio se nenhum nó tiver sido atingido.

público ArrayList<HitTestResult> hitTestAll (MotionEvent movimentoEvent)

Testes para ver se um evento de movimento está tocando em qualquer nó na cena e retorna uma lista de HitTestResults contendo todos os nós que foram atingidos, ordenados por distância.

Parâmetros
eventEvent O evento de movimento a ser usado para o teste.
Retorna
  • Essa dimensão é preenchida com um HitTestResult para cada nó classificado por distância. Será vazio se nenhum nó tiver sido atingido.

void public onAddChild (Node filho)

Parâmetros
criança

public void onRemoveChild (Node filho)

Parâmetros
criança

público overlapTest (nó do Node)

Testes para ver se a forma de colisão de nós fornecidos se sobrepõe à forma de colisão de qualquer outro nó na cena usando getCollisionShape(). O nó usado para teste não precisa estar ativo.

Parâmetros
Nó a ser usado para o teste.
Retorna
  • Um nó que está sobreposto ao nó de teste. Se nenhum nó estiver sobreposto ao de teste, o valor será nulo. Se vários nós estiverem se sobrepondo ao nó de teste, pode ser qualquer um deles.
Ver também

public ArrayList<> overlapTestAll ( nó)

Testa se um nó está sobreposto a outros nós no cenário usando getCollisionShape(). O nó usado para teste não precisa estar ativo.

Parâmetros
Nó a ser usado para o teste.
Retorna
  • Uma lista de todos os nós que se sobrepõem ao nó de teste. Se nenhum nó estiver sobreposto ao nó de teste, a lista estará vazia.
Ver também

public void removeOnPeekTouchListener (Scene.OnPeekTouchListener onPeekTouchListener)

Remove um listener que será chamado antes que o Scene.OnTouchListener seja invocado. Isso é invocado mesmo que o gesto tenha sido consumido, permitindo a observação de todos os eventos de movimento enviados para a cena. Isso é chamado mesmo que o toque não seja sobre um nó. Nesse caso, getNode() será nulo.

Parâmetros
onPeekTouchListener O listener de toque de exibição para remover

void public removeOnUpdateListener (Scene.OnUpdateListener onUpdateListener)

Remove um listener que será chamado uma vez por frame imediatamente antes da atualização da cena.

Parâmetros
onUpdateListener O listener de atualização a ser removido

void public setLightEstimated (Color colorColorion, float pixelIntensity)

Define a estimativa de luz para modificar a iluminação e a intensidade da cena. As luzes renderizadas usarão uma combinação desses valores e da cor e da intensidade das luzes. Um valor de colorCorreçãoion e pixelIntensity de 1 branco significa que nenhuma alteração foi feita nas configurações de iluminação.

Isso é usado por cenas de RA de cenário interno para ajustar a iluminação com base nos valores do ARCore. Uma cena de RA a chamará automaticamente, possivelmente substituindo outras configurações. Na maioria dos casos, não é necessário chamar isso explicitamente.

Parâmetros
Correção de cor modifica a cor de iluminação da cena.
Intensidade de pixel Modifica a intensidade da iluminação da cena.

public void setOnTouchListener (Scene.OnTouchListener onTouchListener)

Registre um callback a ser invocado quando a cena for tocada. O callback será invocado depois que o evento de toque for enviado aos nós na cena se nenhum nó consumir o evento. Isso será chamado mesmo se o toque não for sobre um nó. Nesse caso, getNode() será nulo.

Parâmetros
onTouchListener o listener de toque a ser anexado