Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2012-03-23 15:57:04 remplissage d'objet SVG

mathieu_r
nouveau membre
Date d'inscription: 2012-03-20
Messages: 2

remplissage d'objet SVG



Bonjour,

Je débute sous Processing

J'ai une figure SVG que j'arrive à remplir avec des ellipses distantes ordonnées selon une grille régulière.

J'aimerais faire en sorte que seules les ellipses contenues dans la figure SVG (PShape) soient affichées et non celles qui dépassent.

Cela me permettra d'afficher des trames particulières composées d'objets entiers sur une série d'éléments SVG contigus.

Voici un échantillon de code, pour exemple:

PShape star;

void setup() {
  size(500, 500);
  star = loadShape("shape.svg");
  smooth();
  shape(star, width/2, height/2, 300, 300);
  for (int j = 0; j < height; j+=20) {
    for (int i = 0; i < width; i+=20) {
      if (hex(get(i, j)).equals("FFFFFF00")) {
        ellipse(i, j, 20, 20);
      }
    }
  }  
}

Quelqu'un peut-il me dire comment procéder?

Dernière modification par mathieu_r (2012-03-23 15:59:32)

Hors ligne

 

#2 2012-03-23 16:47:56 Re : remplissage d'objet SVG

emoc
@#@*$
Lieu: Quimper
Date d'inscription: 2008-01-28
Messages: 1576
Site web

Re: remplissage d'objet SVG



Salut,

Ton algo teste si le centre de l'ellipse est dans la forme selon la couleur du pixel, si j'ai bien compris. Tu pourrais commencer par ce test puis tester x points autour de ce centre avec le rayon de ton cercle pour voir si tous les points du bord du cercle sont dans la zone de couleur.

Quelque chose comme ça :

Je n'ai pas testé mais sur le principe ça devrait marcher avec des cercles, il faudrait l'adapter pour les autres ellipses.

Hors ligne

 

#3 2012-03-27 15:51:11 Re : remplissage d'objet SVG

mathieu_r
nouveau membre
Date d'inscription: 2012-03-20
Messages: 2

Re: remplissage d'objet SVG



Super!

En effet, c'est une super solution que j'ai pu tester avec succès.

Pour info, j'ai également posté sur le forum officiel où la réponse suivante m'a été donnée, utilisant un buffer PGraphics et le test de pixels situés dans la boîte englobant le cercle (ta solution est meilleure sur le principe, je trouve)

http://forum.processing.org/topic/filli … 0001470071

Hors ligne

 

#4 2012-03-28 10:41:00 Re : remplissage d'objet SVG

emoc
@#@*$
Lieu: Quimper
Date d'inscription: 2008-01-28
Messages: 1576
Site web

Re: remplissage d'objet SVG



Merci, mais je trouve que la solution du buffer est meilleure, elle fonctionne avec n'importe quelle forme wink

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024