POV-Ray : Newsgroups : povray.international : [ES] Consulta. : Re: [ES] Consulta. Server Time
24 Apr 2024 14:56:54 EDT (-0400)
  Re: [ES] Consulta.  
From: Jaime Vives Piqueres
Date: 7 Jan 2011 12:41:23
Message: <4d275043@news.povray.org>

> Hola a todos:
>


> pixel?
>

   No creo que exista ninguna macro generica que puedas usar, pero es
posible hacerlo con funciones de pigmentos: define una funcion por cada
imagen y luego utilizalas para realizar la operacion. Para ello tienes
que descomponer los componentes RGB... hay varios ejemplos flotando por
los grupos, pero te pongo uno rapido para multiplicar dos imagenes:

//-------------------------------------------------------
#declare fp1 = function { pigment { image_map{ ... } } };
#declare fp2 = function { pigment { image_map{ ... } } };

#declare RED =
pigment {
    function { fp1(x,y,z).red * fp2(x,y,z).red }
    color_map { [0 rgb 0][1 rgb <1,0,0>] }
}
#declare GREEN =
pigment {
    function { fp1(x,y,z).green * fp2(x,y,z).green }
    color_map { [0 rgb 0][1 rgb <0,1,0>] }
}
#declare BLUE =
pigment {
    function { fp1(x,y,z).blue * fp2(x,y,z).blue }
    color_map { [0 rgb 0][1 rgb <0,0,1>] }
}

#declare t_mult=
texture{
     pigment{
       average
       pigment_map{
         [1 RED]
         [1 GREEN]
         [1 BLUE]
       }
     }
     finish{
       emission 3
     }
}
//-------------------------------------------------------

   El como usar la textura resultante depende de lo que pretendas
hacer... por cierto, no garantizo que el codigo que acabo de teclear no
tenga fallos: lo he copiado de un codigo que tengo a medias. Lo he
simplificado para dejar solo esencial y no he probado que realmente
funciona...

   Saludos,

-- 
Jaime Vives Piqueres
		
La Persistencia de la Ignorancia
http://www.ignorancia.org


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.