Documentation de Gambas - /comp/gb.opengl/gl/linewidth

/comp/gb.opengl/gl/linewidth

# Gl.LineWidth (gb.opengl)

Static Sub LineWidth ( Width As Float )

Spécifie la largeur des lignes rastérisées

### Paramètres

width

  Spécifie la largeur des lignes rastérisées. La valeur initiale est 1.0.

### Description

Gl.LineWidth spécifie à la fois la largeur des lignes rastérisées aliasées et anti-aliasées. L’utilisation d’une largeur de ligne autre que 1.0 provoque différents effets, dépendants de l’activation de l’antialiasing. Pour activer et désactiver lantialiasing, appelez Gl.Enable et Gl.Disable avec l’argument Gl.GL_LINE_SMOOTH. l’antialiasing de Line est initialement désactivé.

Si l’anti aliasing des lignes est désactivé, la valeur réelle de la largeur est déterminée en arrondissant la largeur fournie à l’entier le plus proche. (Si le résultat est 0, tout se passe comme si la largeur de ligne était 1) Si Δ x >`` Δ y , i sont remplis dans chaque colonne qui est rastérisée, où i est la valeur arrondie de width. Sinon, i pixels sont remplis dans chaque rangée qui est rastérisée.

Si l’anti aliasing est activé, la rastérisation des lignes produit un fragment pour chaque carré de pixels qui coupe la région située dans le rectangle ayant une largeur égale à la largeur de ligne courante, une longueur égale à la longueur actuelle de la ligne, et centré sur le segment de ligne mathématique. La valeur de recouvrement pour chaque fragment est la surface en coordonnées de la fenêtre de l’intersection de la région rectangulaire avec le carré de pixels correspondant. Cette valeur est sauvegardée est utilisée dans l’étape finale de rastérisation.

Toutes les largeurs ne sont pas admises quand l’anti aliasing des lignes est activé. Si une largeur non admise est demandée, la valeur admise la plus proche est utilisée. Seule la largeur 1.0 est garantie valide; les autres dépendent de l’implémentation. Le domaine des largeurs admises et la différence de taille entre les largeurs admises à l’intérieur du domaine peut être requis en appelant Gl.Get avec les arguments Gl.ALIASED_LINE_WIDTH_RANGE, Gl.SMOOTH_LINE_WIDTH_RANGE, et Gl.SMOOTH_LINE_WIDTH_GRANULARITY.

### Notes

La largeur de ligne spécifiée par Gl.LineWidth est toujours retournée quand Gl.LINE_WIDTH est requise. L’encadrement de valeurs et l’arrondi pour les lignes aliasées et anti aliasées n’ont pas d’effet sur la valeur spécifiée.

La largeur des lignes Non-anti aliasées peut être encadrée par un maximum dépendant de l’implémentation. Appelez Gl.Get avec Gl.ALIASED_LINE_WIDTH_RANGE pour déterminer la largeur maximum.

Zn OpenGL 1.2, Gl.LINE_WIDTH_RANGE et Gl.LINE_WIDTH_GRANULARITY ont été remplacés par Gl.ALIASED_LINE_WIDTH_RANGE,Gl.SMOOTH_LINE_WIDTH_RANGE, et Gl.SMOOTH_LINE_WIDTH_GRANULARITY. Les anciens noms sont conservés pour la compatibilité antérieure, mais ne doivent pas être employés dans le nouveau code. }

### Erreurs

Gl.INVALID_VALUE est générée si width est inférieure ou égale à zéro.

### Gets Associés

Gl.Get avec l'argument Gl.LINE_WIDTH

Gl.Get avec l'argument Gl.ALIASED_LINE_WIDTH_RANGE

Gl.Get avec l'argument Gl.SMOOTH_LINE_WIDTH_RANGE

Gl.Get avec l'argument Gl.SMOOTH_LINE_WIDTH_GRANULARITY

Gl.IsEnabled avec l'argument Gl.LINE_SMOOTH

### Voir aussi

Gl.Enable

Voir la documentation originale sur le site web OpenGL