ClipPath()
Syntaxe
ClipPath([Options])Description
Clip du chemin de dessin vectoriel en cours.
Arguments
Options (optionnel) Peut être l'une des valeurs suivantes: #PB_Path_Default : Pas de comportement spécial (Par défaut) #PB_Path_Preserve: Ne pas réinitialiser le chemin après cette fonction
Valeur de retour
Aucune.
Remarques
Les futures opérations de dessin ne toucheront que les zones clippées dans le chemin courant. La zone sera combinée avec tout clipping qui existait auparavant.
Par défaut, le chemin est réinitialisé après l'appel à cette fonction. Ceci peut être évité avec les options appropriées.
Il n'y a pas de fonction "UnclipPath()". La zone de découpage de la sortie de dessin peut être réduite en ajoutant plus de clipping, mais ne peut pas être agrandie. Cependant, la zone découpée peut être sauvegardée et restaurée en utilisant les fonctions SaveVectorState() et RestoreVectorState() respectivement. Ainsi, pour appliquer une découpe temporaire, il suffit d'enregistrer l'état du dessin puis de le restaurer plus tard pour revenir à la découpe originale.
Exemple
If OpenWindow(0, 0, 0, 400, 200, "VectorDrawing", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) CanvasGadget(0, 0, 0, 400, 200) LoadFont(0, "Times New Roman", 20, #PB_Font_Bold) If StartVectorDrawing(CanvasVectorOutput(0)) ; Mise en place d'un chemin de découpe complexe avec des ellipses imbriquées ;(chaque seconde ellipse sera tronquée) For i = 10 To 150 Step 5 AddPathEllipse(200, 100, 2*i, i) Next i ClipPath() ; Dessin d'un texte avec cet écrêtage VectorFont(FontID(0), 150) VectorSourceColor(RGBA(255, 0, 0, 255)) MovePathCursor(50, 25) DrawVectorText("Text") StopVectorDrawing() EndIf Repeat Event = WaitWindowEvent() Until Event = #PB_Event_CloseWindow EndIf
Voir aussi
OS Supportés
Tous