Question

est-il possible de tout remplissage en dehors d'un trajet fermé (polygone)?

Arrière-plan: Je voudrais rendre des cartes avec des côtes - donc parfois je dois remplir la mer avec la couleur bleue, donc je pensais que ce serait plus facile et dans ma situation le plus efficace pour remplir tout à l'extérieur de ce littoral polygone avec la couleur bleue.

Merci à l'avance!

Était-ce utile?

La solution

Vous pouvez ajouter un rectangle couvrant toute la zone de dessin à votre chemin littoral et définir la règle de remplissage à cairo.FILL_RULE_EVEN_ODD. Appel fill() après remplit la zone en dehors de votre chemin d'origine. (Si vous choisissez l'orientation correcte pour votre rectangle, vous pouvez sauter le réglage de la règle de remplissage.)

Autres conseils

Dessine un grand rectangle bleu sur toute la surface de cairo puis dessinez votre côte au-dessus de cela?

Alors que vous pourrait créer un chemin fermé la taille de la surface, puis le remplir avec un solidpattern (la règle de remplissage ne sera pas question d'un simple rectangle), il serait plus facile d'utiliser simplement la peinture de contexte () qui remplira la zone de découpage de courant (qui est initialement fixé à la surface). Il est important de le faire avant de tirer la carte / limites du littoral et les remplir afin qu'ils soient au-dessus de l'arrière-plan.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top