Gimp et Python-fu script : vecteurs et strokes : exemple
J’ai eu énormément de mal à trouver un exemple de script python-fu qui fonctionne.
Après avoir réussi à automatiser certaines tâches grâce à Gimp, je voulais créer des vecteurs, et y appliquer la brosse en cours.
Voici l’exemple de code qui fonctionne :
new_image = pdb.gimp_image_new( new_image_width, new_image_height, RGB )
new_layer = pdb.gimp_layer_new(
new_image, new_image.width, new_image.height,
RGBA_IMAGE, _("Background"), 100, NORMAL_MODE)
pdb.gimp_image_add_layer(new_image, new_layer, -1)
pdb.gimp_drawable_fill(new_layer, fill_type )
new_layer = gimp.Layer(
new_image, _("New Layer"),
new_image.width, new_image.height,
RGBA_IMAGE, 100, NORMAL_MODE)
pdb.gimp_image_add_layer(new_image, new_layer, -1)
pdb.gimp_drawable_fill(new_layer, fill_type )
new_vectors=pdb.gimp_vectors_new(new_image, 'Vectors!')
t = int(round(step / 1.5))
pdb.gimp_vectors_stroke_new_from_points(
new_vectors,
0, # 0 = Beziers Curve
30,
# {controle1} {centre} {controle2}
[ x-(step-t), y, x-step, y, x-(step-t), y,
x, y+(step-t), x, y+step, x, y+(step-t),
x+(step-t), y, x+step, y, x+(step-t), y,
x, y-(step-t), x, y-step, x, y-(step-t),
x-(step-t), y, x-step, y, x-(step-t), y],
False) # Closed = True
pdb.gimp_image_add_vectors(new_image, new_vectors, 0)
pdb.gimp_context_set_foreground( (255,255,255) )
pdb.gimp_context_set_brush( "Circle (07)" )
pdb.gimp_edit_stroke_vectors(new_layer, new_vectors)
gimp.Display( new_image )
Maintenant avec cet exemple, si vous voulez faire des vecteurs et les dessiner avec la brosse en cours, ainsi qu’avec mon article sur l’automatisation de Gimp, vous devriez arriver à faire beaucoup de choses !