Partager via


CDC::GetPath

Récupère les coordonnées définissant des points de terminaison les lignes et les points de contrôle de courbes trouvé dans le chemin d'accès qui est sélectionné dans le contexte de périphérique.

int GetPath( 
   LPPOINT lpPoints, 
   LPBYTE lpTypes, 
   int nCount  
) const;

Paramètres

  • lpPoints
    Pointe vers un tableau de structures de données de POINT ou d'objets d' CPoint où les extrémités de ligne et les points de contrôle de la courbe sont définis.

  • lpTypes
    Indique un tableau d'octets où les types de sommets sont définis. Les valeurs sont l'une des opérations suivantes :

    • PT_MOVETO spécifie que le point correspondant dans lpPoints démarre un chiffre de disjonction.

    • PT_LINETO spécifie que le point précédent et le point correspondant dans lpPoints sont les points de terminaison d'une ligne.

    • PT_BEZIERTO spécifie que le point correspondant dans lpPoints est un point de contrôle ou un point de terminaison pour une courbe de Bzier.

      Les types dePT_BEZIERTO se produisent toujours dans les ensembles de trois. Le point dans le chemin juste avant eux définit le point de départ de la courbe de Bzier. Les deux premiers points de PT_BEZIERTO sont les points de contrôle, et le troisième point de PT_BEZIERTO est le point de terminaison (si codé en dur).

      Un type de PT_LINETO ou de PT_BEZIERTO peut être combiné avec la balise suivante (à l'aide de l'opérateur de bits OR) pour indiquer que le point correspondant est le dernier point dans une illustration et le montre l'illustration doit être fermée :

    • PT_CLOSEFIGURE spécifie que l'illustration est automatiquement fermée après la ligne ou la courbe correspondante soit dessinée. L'illustration est fermée en dessinant une ligne qui va du point de terminaison de ligne ou de courbe au point correspondant à PT_MOVETOdernier.

  • nCount
    Spécifie le nombre total de structures de données de POINT qui peuvent être définies dans le tableau d' lpPoints . Cette valeur doit être le même que le nombre d'octets qui peuvent être définis dans le tableau d' lpTypes .

Valeur de retour

Si le paramètre d' nCount est différent de zéro, le nombre de points énumérés. Si nCount est 0, le nombre total de points dans le chemin d'accès (et GetPath n'écrit rien aux mémoires tampons). Si nCount est différent de zéro et est inférieur au nombre de points dans le chemin d'accès, la valeur de retour est -1.

Notes

Le contexte de périphérique doit contenir un tracé fermé. Les points du chemin d'accès sont retournés dans les coordonnées logiques. Les points sont stockés dans le chemin d'accès dans les coordonnées de périphérique, les modifications d' GetPath les points des coordonnées de périphérique aux coordonnées logiques à l'aide de l'inverse de la transformation actuelle. La fonction membre d' FlattenPath peut être appelée avant GetPath, pour convertir toutes les courbes dans le chemin d'accès dans des segments de ligne.

Exemple

Consultez l'exemple pour CDC::BeginPath.

Configuration requise

Header: afxwin.h

Voir aussi

Référence

CDC, classe

Graphique de la hiérarchie

CDC::FlattenPath

CDC::PolyDraw

CDC::WidenPath