PHP | Función ImagickDraw pathEllipticArcAbsolute()

La función ImagickDraw::pathEllipticArcAbsolute() es una función incorporada en PHP que se usa para dibujar un arco elíptico desde el punto actual hasta (x, y) usando coordenadas absolutas.

Sintaxis:

bool ImagickDraw::pathEllipticArcAbsolute(
float $rx, float $ry, float $x_axis_rotation, 
bool $large_arc_flag, bool $sweep_flag, float $x, 
float $y )

Parámetros: esta función acepta siete parámetros, como se mencionó anteriormente y se describe a continuación:

  • $rx: Especifica el radio x.
  • $ry: Especifica el radio y
  • $x_axis_rotation: Especifica la rotación del eje x
  • $large_arc_flag: Especifica si dibujar el mayor de los arcos disponibles.
  • $sweep_flag: especifica si se debe dibujar el arco que coincida con una rotación en el sentido de las agujas del reloj.
  • $x: Especifica la coordenada x.
  • $y: Especifica la coordenada y.

Valor de retorno: esta función devuelve VERDADERO en caso de éxito.

Excepciones: esta función lanza ImagickException en caso de error.

Los siguientes programas ilustran la función ImagickDraw::pathEllipticArcAbsolute() en PHP:

Programa 1:

<?php
  
// Create a new imagick object
$imagick = new Imagick();
  
// Create a image on imagick object
$imagick->newImage(800, 250, 'green');
  
// Create a new ImagickDraw object
$draw = new ImagickDraw();
  
$draw->setFillColor('blue');
  
// Set the stroke color
$draw->setStrokeColor('red');
  
// Set the stroke width
$draw->setStrokeWidth(15);
  
// Draw elliptic arc
$draw->pathStart();
$draw->pathEllipticArcAbsolute(420, 250, 10, true, true, 40, 40);
$draw->pathClose();
$draw->pathFinish();
  
// Render the draw commands
$imagick->drawImage($draw);
  
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>

Producción:

Programa 2:

<?php
  
// Create a new imagick object
$imagick = new Imagick();
  
// Create a image on imagick object
$imagick->newImage(800, 250, '#E57733');
  
// Create a new ImagickDraw object
$draw = new ImagickDraw();
  
// Set the width of stroke
$draw->setStrokeWidth(1);
  
// Set the color of stroke
$draw->setStrokeColor('#E57733');
  
// Set the fill color
$draw->setFillColor('black');
  
// Set the fill rule
$draw->setFillRule(Imagick::FILLRULE_NONZERO);
  
// Draw a sunset cartoon
$draw->pathStart();
$draw->pathMoveToAbsolute(0, 100);
$draw->pathEllipticArcAbsolute(420, 400, 410, true, true, 0, 900);
$draw->pathMoveToAbsolute(300, 250);
$draw->pathEllipticArcAbsolute(420, 600, 410, true, true, 0, 900);
$draw->pathClose();
$draw->pathFinish();
$draw->setFillColor('yellow');
$draw->translate(30, 0);
$draw->circle(300, 100, 300, 150);
  
// Render the draw commands
$imagick->drawImage($draw);
  
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>

Producción:

Referencia: https://www.php.net/manual/en/imagickdraw.pathellipcarabsolute.php

Publicación traducida automáticamente

Artículo escrito por gurrrung y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *