Image getRGB  XML
Índice dos Fóruns » Google Android e Java Micro Edition (ME)
Autor Mensagem
renanpto
JavaEvangelist
[Avatar]

Membro desde: 16/04/2007 11:58:32
Mensagens: 458
Localização: Curitiba
Offline

Boa Noite pessoal,

Alguem sabe me dizer qual a logica que o jme usa para popular o array com os pixels da imagem na execução do metodo abaixo:



Qual é a ordem que ele segue ?

Ex:
Por Linha:

imageBytes[0] = pego valor linha 0 coluna 0
imageBytes[1] = pego valor linha 0 coluna 1
imageBytes[2] = pego valor linha 0 coluna 2
....

ou

por coluna ex:

imageBytes[0] = pego valor linha 1 coluna 0
imageBytes[1] = pego valor linha 2 coluna 0
imageBytes[2] = pego valor linha 3 coluna 0

?

This message was edited 1 time. Last update was at 22/05/2008 22:38:06


Sun Certified Java Programmer 5
Oracle Certified Web Component Developer 5
www.devlogic.com.br
[WWW] [MSN]
renanpto
JavaEvangelist
[Avatar]

Membro desde: 16/04/2007 11:58:32
Mensagens: 458
Localização: Curitiba
Offline

Alguem ja precisou fazer uma busca em array pixel? Utilizando indices, ex: x e y ?

This message was edited 1 time. Last update was at 23/05/2008 14:07:53


Sun Certified Java Programmer 5
Oracle Certified Web Component Developer 5
www.devlogic.com.br
[WWW] [MSN]
quikkoo
JavaEvangelist
[Avatar]

Membro desde: 30/10/2006 21:10:14
Mensagens: 406
Localização: minas
Offline

para ler toda a imagem usa-se assim:

a imagem é lida de cima pra baixo, da esquerda pra direita, sendo assim, vc acessa acessa os pixels do jeito que vc colocou no primeiro exemplo

flw, t+

the_book->is_on(the_table);
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20581
Localização: Curitiba/PR
Offline

Dá uma lida aqui:
http://javaboutique.internet.com/tutorials/rasters/
http://javaboutique.internet.com/tutorials/rasters2/

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
caravelas
Thread.start()

Membro desde: 14/01/2011 15:46:57
Mensagens: 40
Offline

Pessoal,

estou usando o getRGB e ele retorna pra mim um array contendo dentro números do tipo -14671840 gostaria de saber o que significa esse número? é o código da cor? é um decimal que deve ser convertido para hexa para achar o código da cor? o que seria isso?


desde já muito obrigado.
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20581
Localização: Curitiba/PR
Offline

A cor é formada por 3 bytes (ou 4, caso tenha canal alfa).

Esses bytes são gravados numa variável do tipo int, e a classe de imagem usa geralmente o formato ARGB para representa-la.

Como vc sabe, um inteiro possui 4 bytes.

Então, uma cor com 255 (0xFF) no alfa, e 50 (0x32) no vermelho, 30 (1E) no verde e 10 (0A) no azul, será representada assim:
0xFF321E0A

Ou, em binário:
1111 1111 0011 0010 0001 1110 0000 1010

Se a variável fosse long, isso seria o número 4281474570. Como o java não tem sinal, aquele primeiro bit é interpretado como um bit de sinal, e os demais como o valor do número. Como o valor do primeiro bit é 1, indica que o número é negativo, e portanto, o número todo, com os mesmos bits será exibido como: -13492725.

O ideal, para trabalhar com esse número, é aplicar máscaras de bits e utilizar cada byte da cor separadamente. Por exemplo, para extrair o canal vermelho da imagem, no padrão ARGB, você faria:



A classe Color faz esse tipo de operação automaticamente.


Leia também esses tutoriais do Ponto V, pois vão te ajudar:
http://www.pontov.com.br/site/index.php/arquitetura/51-programacao/186-imagens-digitais
http://www.pontov.com.br/site/index.php/opengl/182-cores

This message was edited 4 times. Last update was at 18/02/2011 11:46:20


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
boone
JWizard
[Avatar]

Membro desde: 21/09/2003 16:01:35
Mensagens: 2140
Offline

Vc vai pro céu com tanta paciência para esmiuçar assim.

Algo tão já batido e discutido aqui e nem perco mais tempo.

Se a busca do GUJ tem problema, fazer o quê, né ?

A resposta vai ser perdida e nunca mais encontrada. Por isto sempre venho aqui para ler sobre assuntos diversos pois sempre estou aprendendo algo e mantendo atualizado.

Como eu disse, esta questão dos pixels, representação da informação no array,etc, já foi discutida aqui diversas vezes...
 
Índice dos Fóruns » Google Android e Java Micro Edition (ME)
Ir para:   
Powered by JForum 2.1.8 © JForum Team