CairoContext
PHP Manual

CairoContext::curveTo

cairo_curve_to

(PECL cairo >= 0.1.0)

CairoContext::curveTo -- cairo_curve_toAdds a curve

Description

Object oriented style (method):

public void CairoContext::curveTo ( float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )

Procedural style:

void cairo_curve_to ( CairoContext $context , float $x1 , float $y1 , float $x2 , float $y2 , float $x3 , float $y3 )

Adds a cubic Bezier spline to the path from the current point to position x3 ,y3 in user-space coordinates, using x1 , y1 and x2 , y2 as the control points. After this call the current point will be x3 , y3 .

If there is no current point before the call to CairoContext::curveTo this function will behave as if preceded by a call to CairoContext::moveTo (x1 , y1 ).

Parameters

context

A valid CairoContext object created with CairoContext::__construct or cairo_create()

x1

First control point in the x axis for the curve

y1

First control point in the y axis for the curve

x2

Second control point in x axis for the curve

y2

Second control point in y axis for the curve

x3

Final point in the x axis for the curve

y3

Final point in the y axis for the curve

Return Values

No value is returned.

Examples

Example #1 Object oriented style

<?php
$s 
= new CairoImageSurface(CairoFormat::ARGB32100100);
$c = new CairoContext($s);

$c->setSourceRgb(000);

$c->paint();

$c->moveTo(1050); 
$c->setLineWidth(5);
$c->setSourceRgb(.101);
$c->curveTo(208080209050); 
$c->stroke();

$s->writeToPng(dirname(__FILE__) . '/curveTo.png');

Example #2 Procedural style

<?php

$s 
cairo_image_surface_create(CAIRO_SURFACE_TYPE_IMAGE100100);
$c cairo_create($s);

cairo_set_source_rgb($c000);

cairo_paint($c);

cairo_move_to($c1050);
cairo_set_line_width($c5);
cairo_set_source_rgb($c.101);
cairo_curve_to($c208080209050);
cairo_stroke($c);

cairo_surface_write_to_png($sdirname(__FILE__) . '/curve_to.png');

See Also


CairoContext
PHP Manual