Auteur ou autrice : Stephan Hennig.
Mise en ligne le 4 septembre 2023
Cet exemple illustre l’utilisation du package bpolynomial
présent sur le CTAN. Ce package propose des macros permettant de construire des courbes de Bézier correspondant à une fonction polynomiale donnée. Ici, la package est utilisé avec le package graph
.
Code
input bpolynomial
input graph
transform T;
T = identity xscaled 10mm yscaled 1mm;
beginfig(1);
path f, g, A;
xmin := -3; xmax := 6;
ymin := -3; ymax := 6;
newBPolynomial.f(-0.25, 0.5, 2, -1);
newBPolynomial.g(0, 0.5, -2, 0);
f := f.getPath(-2.5, 5.5);
g := g.getPath(-1.5, 5.5);
%%% Find area between f and g.
A := buildcycle(g, reverse f);
draw begingraph(10cm, 6cm);
setrange(xmin,ymin, xmax,ymax);
autogrid(grid.bot, grid.lft) dashed evenly withcolor .9white;
%%% Fill area with transparent colour.
gfill A withcolor (1, 0.5, 0);
drawoptions(withpen pencircle scaled 1bp);
gdraw f;
gdraw g dashed evenly scaled 2;
drawoptions();
endgraph;
endfig;
end.