GdipPathIterNextSubpath()



Syntaxe
Resultat.i = GdipPathIterNextSubpath(*iterator, @resultCount.l, @startIndex.l, @endIndex.l, @isClosed.i)
Paramètres
*iterator

[in] Pointeur sur un objet GraphicsPathIterator existant.

resultCount.l

[out] resultCount recevra le nombre de points de données de la figure. S'il n'y a plus de figure, resultCount recevra la valeur 0.

startIndex.l

[out] startIndex recevra l'index de début du groupe de points.

endIndex.l

[out] endIndex recevra l'index de fin du groupe de points.

isClosed.i

[out] isClosed recevra la valeur #True si la figure est fermée sinon #False.

Description

Cette fonction permet de déplacer le GraphicsPathIterator jusqu'à la figure (subpath) suivante du path. Les index de début et de fin de la figure suivante sont retournés dans les paramètres startIndex et endIndex.

Un path possède un tableau de points de données qui définissent ses lignes et ses courbes. Toutes les courbes du path sont représentées comme des splines de Bézier, ainsi un point donné du tableau a un des deux types suivant: #PathPointTypeLine ou #PathPointTypeBezier. La première fois que l'on utilise la fonction, on obtient les index de début et de fin de la première figure. Lors du second appel de la fonction, on obtient les index de début et de fin de la seconde figure et ainsi de suite. Lorsqu'il n'y a plus de figures, le paramètre resultCount reçoit la valeur 0. La fonction GdipPathIterRewind() permet de repositionner l'itérateur au début du GraphicsPath qui lui est associé pour pouvoir recommencer la séquence.

L'exemple crée un Path avec un parallélogramme puis une ellipse et un rectangle. On affiche la liste des points stockés par le Path avec la fonction GdipPathIterEnumerate(). L'itérateur est repositionné au début du GraphicPath avec la fonction GdipPathIterRewind().Un timer est actionné toutes les secondes permettant de parcourir les figures du Path. Les éléments des tableaux de la figure courante sont écrits en rouge, les autres éléments étant écrits en noir. Le code reboucle sans arrêt.

Résultat de la fonction
Si la fonction réussit, elle retourne #Ok qui est une constante de l'énumération status.
Si la fonction échoue, elle retourne une des autres valeurs de l'énumération status.
PB - OS

PureBasic v4.30 bêta 4 (Windows - x86)
Testé avec Windows Vista édition familiale Premium