Foros del Web » Programando para Internet » PHP »

Como realizar lo siguiente con GD

Estas en el tema de Como realizar lo siguiente con GD en el foro de PHP en Foros del Web. Hola, Quiero hacer lo siguiente con GD: http://3.bp.blogspot.com/_nsxA5UWVCU...alucia+7-7.jpg O al menos algo parecido. Básicamente seria establecer una serie de puntos y de estos que salga ...
  #1 (permalink)  
Antiguo 06/08/2011, 09:19
 
Fecha de Ingreso: abril-2010
Mensajes: 76
Antigüedad: 14 años
Puntos: 0
Pregunta Como realizar lo siguiente con GD

Hola,

Quiero hacer lo siguiente con GD:

http://3.bp.blogspot.com/_nsxA5UWVCU...alucia+7-7.jpg

O al menos algo parecido.

Básicamente seria establecer una serie de puntos y de estos que salga el color como lo hace en la imagen, pero no se con que función de GD hacer esto y mucho menos como asociarlo a una regla de colores.

Alguien me puede aconsejar ? o sabe de algún manual-tuto concreto para eso ?
  #2 (permalink)  
Antiguo 06/08/2011, 11:37
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Como realizar lo siguiente con GD

Si vas a dibujar puntos, puedes hacerlo con imagepolygon() o imagefilledpolygon()

Para ver un tuto, éste es un buen comienzo.
  #3 (permalink)  
Antiguo 08/08/2011, 07:59
 
Fecha de Ingreso: abril-2010
Mensajes: 76
Antigüedad: 14 años
Puntos: 0
Respuesta: Como realizar lo siguiente con GD

Gracias ocp001a por el enlace, es muy util.

Pero tengo un problema mas....




En la imagen los gradientes se cortan... yo quiero que se unan... no se si se me entiende ?

Los dos puntos están cerca y lo que quiero es que el amarillo no se corte si no que se unan.

Cual puede ser la solución ?
  #4 (permalink)  
Antiguo 08/08/2011, 14:51
 
Fecha de Ingreso: abril-2010
Mensajes: 76
Antigüedad: 14 años
Puntos: 0
Respuesta: Como realizar lo siguiente con GD

Otra pregunta sobre el tema seria como hacer el degradado entre dos puntos y no superponiendo dos elipses que es lo que estoy haciendo.
  #5 (permalink)  
Antiguo 12/08/2011, 20:02
 
Fecha de Ingreso: abril-2010
Mensajes: 76
Antigüedad: 14 años
Puntos: 0
Respuesta: Como realizar lo siguiente con GD

Ninguna Idea ?

Código PHP:
Ver original
  1. <?php
  2.  
  3. header( "Content-type: image/gif" );
  4.  
  5. $imagen = imagecreatefrompng('tras.png');
  6.  
  7.  
  8. $morado = array( 'r' => 186, 'g' => 0, 'b' => 255 );
  9. $amarillo = array( 'r' => 255, 'g' => 220, 'b' => 0 );
  10.  
  11. $pasos = 2000;
  12.  
  13. $incr_r = ( $amarillo['r'] - $morado['r'] ) / $pasos;
  14. $incr_g = ( $amarillo['g'] - $morado['g'] ) / $pasos;
  15. $incr_b = ( $amarillo['b'] - $morado['b'] ) / $pasos;
  16.  
  17. // El centro de la imagen será el del gradiente
  18. $cx = imagesx( $imagen ) / 3;
  19. $cy = imagesy( $imagen ) / 3;
  20. = imagesx( $imagen ) / 2;
  21. $k = imagesy( $imagen ) / 3;
  22.  
  23. // Ancho y alto del gradiente inicial
  24. $ancho = 240;
  25. $alto = 140;
  26.  
  27. // Valores de reducción del elipse
  28. $incr_x = $ancho / $pasos;
  29. $incr_y = $alto / $pasos;
  30.  
  31. $r = $morado['r'];
  32. $g = $morado['g'];
  33. $b = $morado['b'];
  34.  
  35. // Dibujamos las elipses según los pasos
  36. for( $i = 10; $i < $pasos; $i++ ){
  37. $color = imagecolorallocate( $imagen, $r, $g, $b );
  38. imagefilledellipse( $imagen, $cx, $cy, $ancho, $alto, $color );
  39. imagefilledellipse( $imagen, , $k, $ancho, $alto, $color );
  40.  
  41. $r += $incr_r;
  42. $g += $incr_g;
  43. $b += $incr_b;
  44. // Reducimos el tamaño de la siguiente elipse
  45. $ancho -= $incr_x;
  46. $alto -= $incr_y;
  47. }
  48.  
  49. imagegif( $imagen );
  50.  
  51. imagedestroy( $imagen );
  52.  
  53. ?>

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:58.