Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Como Asigno Color Con Trasparencia ??
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Como Asigno Color Con Trasparencia ?? 
 
Necesito asignar color a una cara de un volúmen, pero tiene que ser con determinado grado de trasparencia, para que se visualice algo de lo que queda tapado por la cara ese volumen.
En resumen, como especifico un color "X " con un grado de trasparencia"Z" a un cuadrado ?

Gracias.
 



 
francopenizzotto - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Como Asigno Color Con Trasparencia ?? 
 
¿Te refieres al uso del componente de open gl?

Si no especificas más, difícilmente podremos ayudarte. Lee la cabecera de los foros para proporcionar los detalles requeridos.

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Como Asigno Color Con Trasparencia ?? 
 
Exactamente, es un componente OpenGl. Tengo un 3D que coloca en el plano X-Y, un rectángulo centrado en un punto (x,y) especificado por un arreglo. El arreglo va creciendo en cada iteración, y la pantalla se va cubriendo con los rectágulos (ó círculos). 1 motivo por el cual necesito trasparencia, es por estética. El Segundo motivo, es que necesito dejar identificado visualmente, las áreas de solapamiento de coordenadas, es decir, lugares donde los cuadrados se solapan entre si.

Gracias
 



 
francopenizzotto - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Como Asigno Color Con Trasparencia ?? 
 
Nunca he usado ese componente, entre otras cosas porque no puedo disponer de aceleración 3D con mi tarjeta gráfica actual (ATI para más señas, siempre peleada con los drivers).

En cuanto a lo que comentas, se me ocurre que podrías situar las figuras en diferentes posiciones del plano Z, es decir, unas delante de otras. De esta manera no necesitas saber el solape ya que no se tocan entre sí. Hasta ahí, supongo que de acuerdo, pero desconozco si hay alguna propiedad para la transparencia, que debería de haberla. En ese caso, desde la perspectiva del observador cuando una figura esté delante de otra, sus colores deberían sumarse (o mezclarse).

Ya digo que hablo sólo por mis conocimientos de 3D con programas de modelado, no porque conozca en absoluto la forma de programar en openGL.

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Como Asigno Color Con Trasparencia ?? 
 
Gracias por tu respuesta. Lamentablemente, deben ir todas en el plano Z=0, justamente son marcas de un recorrido realizado por un móvil, con lo cual necesito que sea enel mismo plano X-Y y que la trasparencia permita mostar figuras situadas en Z=0 y pasadas anteriores.

En otros programas para aplicaciones gráficas, las trasparencias se especifican como una opción en el argumento de la función para setear el color. En Matlab se denomina "ALPHA", y toma valores de 0 a 1, donde 1 es completamente trasparente, y 1 es Nada trasparente.

Si alguien puede decirme en que lugar puedo conseguir esta clase de info, les agradecería.
 



 
francopenizzotto - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Como Asigno Color Con Trasparencia ?? 
 
Franco, soy completamente ignorante respecto de OpenGL, pero he encontrado en la ayuda de gambas algo que tal vez te sirva:


STATIC SUB Color4f ( Red AS Float, Green AS Float, Blue AS Float, Alpha AS Float )

STATIC SUB Color4i ( Red AS Integer, Green AS Integer, Blue AS Integer, Alpha AS Integer )

STATIC SUB ColorMask ( Red AS Boolean, Green AS Boolean, Blue AS Boolean, Alpha AS Boolean )

STATIC SUB Colorf ( Red AS Float, Green AS Float, Blue AS Float [ , Alpha AS Float ] )

STATIC SUB Colori ( Red AS Integer, Green AS Integer, Blue AS Integer [ , Alpha AS Integer ] )

Todas estas rutinas son parte de la clase estática GL
 




===================
Cómo programar con Gambas

Speed Books: informática libre.
 
fabianfv - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Como Asigno Color Con Trasparencia ?? 
 
Gracias Fabian. Justamente ese argumento es el que supongo que debería funcionar, pero lamentablemente, aún no logré algún cambio al modificar ALPHA, en la función Color4f.

Gracias
 



 
francopenizzotto - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Como Asigno Color Con Trasparencia ?? 
 
He visto en otros foros que es necesario habilitar la función ALPHA. Probé con Gl.Enable(Gl.GL_ALPHA) y también con Gl.Enable(Gl.GL_4D_Color_Texture) pero ningún cambio se nota en la pantalla al utilizar un alpha = 0.2
 



 
francopenizzotto - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Como Asigno Color Con Trasparencia ?? 
 
Finalmente, encontré información en alguna documentación de foros, sobre la forma de ejecutar esta función. :


AL abrir la ventana OpenGl, se colocan las siguientes funciones:

----------------------------
Gl.Enable(Gl.GL_Alpha)
Gl.Enable(Gl.GL_Blend)
Gl.BlendFunc(Gl.GL_SRC_ALPHA, Gl.GL_ONE_MINUS_SRC_ALPHA)
----------------------------

Luego, deben graficarse en orden, desde los objetos menos transparentes a los más traslúcidos.
El color se asigna con la función:

Gl.Color4f ( Red AS Float, Green AS Float, Blue AS Float, Alpha AS Float ) ó   Gl.Color4f ( Red AS Integer, Green AS Integer, Blue AS Integer, Alpha AS Integer )


Es muy importante el orden en el que se grafican los planos, porque si se coloca al final uno sin trasparencia, este plano tapará a todos los anteriores dibujados en las mismas coordenadas X-Y.

Espero que les sirva. Gracias por su ayuda.
 



 
francopenizzotto - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Colores,Color,ColorInfo Shell General 0 Domingo, 17 Marzo 2013, 14:08 Ver último mensaje
Shell
No hay nuevos mensajes Como Se Declara Una Variable De Tipo Color? v3ctor General 2 Domingo, 01 Diciembre 2013, 21:03 Ver último mensaje
v3ctor
No hay nuevos mensajes Gb.report ReportBrush.Color tincho Controles/Librerías/Componentes 3 Domingo, 17 May 2015, 17:40 Ver último mensaje
tincho
No hay nuevos mensajes Como Saber El Color De Un Pixel En Un Draw... jsbsan Controles/Librerías/Componentes 12 Domingo, 07 Febrero 2016, 21:58 Ver último mensaje
Shell
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron