Herramientas de usuario

Herramientas del sitio


fw:imgmagick

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
fw:imgmagick [2012/05/11 01:23]
alfred
fw:imgmagick [2020/05/09 09:25] (actual)
Línea 6: Línea 6:
   * Para utilizarlo deberemos instalar el paquete ''​libmagick++''​ y, al compilar con g++, agregaremos los siguientes parámetros:​ ''​-I/​usr/​include/​ImageMagick/​ -lMagick++''​   * Para utilizarlo deberemos instalar el paquete ''​libmagick++''​ y, al compilar con g++, agregaremos los siguientes parámetros:​ ''​-I/​usr/​include/​ImageMagick/​ -lMagick++''​
   * Documentación [[http://​www.imagemagick.org/​Magick++/​Documentation.html]].   * Documentación [[http://​www.imagemagick.org/​Magick++/​Documentation.html]].
 +
 +
 +
 +
  
  
Línea 33: Línea 37:
 ... ...
 image.write("​test.png"​);​ image.write("​test.png"​);​
 +</​code>​
 +
 +=== Dibujar sobre la imagen ===
 +Se utilizan los objetos ''​Drawable''​.
 +<code cpp>
 +Image image( Geometry(300,​200),​ Color("​white"​) );
 +
 +image.strokeColor("​red"​);​ // Outline color
 +image.fillColor("​green"​);​ // Fill color
 +image.strokeWidth(5);​
 +
 +image.draw( DrawableCircle(100,​100,​ 50,100) );
 +image.draw( DrawableRectangle(200,​200,​ 270,170) );
 +image.display( );
 +</​code>​
 +
 +=== Dibujo de polígonos ===
 +<code cpp>
 +img->​strokeColor("​blue"​);​
 +img->​strokeWidth(3);​
 +img->​fillColor(rgb);​
 +
 +list<​Coordinate>​ coords;
 +for (int j=0; j<​p.nvertices;​ j++)
 + coords.push_back(Coordinate(p.vertices[j].x,​ p.vertices[j].y));​
 +img->​draw(DrawablePolygon(coords));​
 +</​code>​
 +
 +=== Escoger color RGB ===
 +<code cpp>
 +char rgb[20];
 +sprintf(rgb,"​rgb(%d,​%d,​%d)",​colors[orient][0],​ colors[orient][1],​ colors[orient][2]);​
 +img->​fillColor(rgb);​
 +</​code>​
 +
 +=== Recoger valores RGB ===
 +<code cpp>
 +mat matrix(img.rows()*img.columns(),​ 3);
 +Pixels view(img);
 +PixelPacket *pixels = view.get(0,​0,​img.columns(),​ img.rows());​
 +PixelPacket *pixel;
 +int idx = 0;
 +ColorRGB rgb;
 +for (unsigned int row = 0; row < img.rows(); ++row) {
 +  for (unsigned int column = 0; column < img.columns();​ ++column ) {
 +    pixel = pixels+row*img.columns()+column;​
 +    rgb = ColorRGB(*pixel);​
 +    matrix(idx, 0) = (pixel->​red*255)/​MaxRGB;​
 +    matrix(idx, 1) = (pixel->​green*255)/​MaxRGB;​
 +    matrix(idx, 2) = (pixel->​blue*255)/​MaxRGB;​
 +    idx++;
 +  }
 +}
 </​code>​ </​code>​
  
fw/imgmagick.1336699406.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)