Traverser les chemins géométriques - pas aussi facile qu'il semble

En PDF les chemins géométriques sont simplement décrits comme des lignes et des courbes cubiques bézier. Le remplissage d'un chemin est directement en avant une fois que l'on comprend la règle impair et non nulle. Le tracé d'un chemin n'est cependant pas aussi simple qu'il ne le semble à première vue. Examinons les trahisons et certains cas particuliers.

En fait, tracer un chemin ne signifie rien d'autre que créer un nouveau chemin et le remplir. Pour ce faire, le moteur graphique doit interpréter les attributs de ligne tels que la largeur de ligne, miter limit, tableau de tirets, phase de tiret, styles de casquette et de jointure, etc. qui sont stockées dans l'état graphique.

Commençons par quelques cas simples : une seule ligne est dessinée en utilisant un mouvement, une ligne et un opérateur de traits. Évidemment, ce chemin est tracé en créant un nouveau chemin composé de deux majuscules au début et à la fin qui sont reliées par deux lignes. La forme des bouchons est donnée par le style du bouchon et la distance verticale des lignes est donnée par la largeur de la ligne. Deux segments de lignes sont tracés de la même manière pour le point au milieu, ce qui forme une jointure dans le style donné.

Si un chemin est construit de plus de deux segments de ligne, alors ils peuvent traverser des segments de lignes plus anciennes. Cela implique que le chemin nouvellement créé doit être rempli en utilisant la règle non-nulle-enroulement afin de dessiner le chevauchement correctement. De plus, le dernier segment de ligne peut se terminer à l'endroit du premier démarrage. Ceci est différent de la fermeture d'un chemin en utilisant l'opérateur approprié. Pourquoi? Parce que si un tracé est fermé, alors une jointure de ligne est utilisée à la place des majuscules de début et de fin. Si un chemin n'est pas fermé, les majuscules sont dessinées même si le point de début et de fin sont identiques.

Maintenant, que se passe-t-il si un segment de ligne a une longueur de zéro ? La forme des bouchons et des joints ainsi que la distance entre les lignes de connexion dépendent de la direction du séchage de ligne. Si le segment de ligne a une longueur zéro, alors la direction ne peut pas être déterminée. Il est donc plus sûr en général de supprimer ces segments de ligne, sauf dans un cas. Un chemin contenant un seul segment de ligne de longueur zéro est autorisé. Mais comment cela se dessine-t-il? Si des bouchons arrondis sont utilisés, un cercle est dessiné avec un diamètre de la largeur de la ligne. Si des bouchons de fesses sont utilisés, alors un carré est dessiné. La direction des bords est toutefois spécifique à la mise en œuvre. Si aucune majuscule n'est utilisée, alors un seul pixel doit être dessiné.

Que diriez-vous des courbes de bézier ? Ils sont convertis en un certain nombre de segments de ligne connectés avant que le chemin ne soit tracé de sorte qu'ils n'ont pas besoin de traitement spécial.

Like what you see? Share with a friend.

« Gru<unk> ezi! » Comment pouvons-nous nous aider?

Phone