Méthode Page.DrawBezier (Visio)
Crée une forme dont le chemin est défini par la séquence de points de contrôle de courbe de Bézier fournie.
Syntaxe
expression. DrawBezier
( _xyArray()_
, _degree_
, _Flags_
)
Expression Variable qui représente un objet Page .
Parameters
Nom | Requis/Facultatif | Type de données | Description |
---|---|---|---|
xyArray() | Requis | Double | Tableau des valeurs x et y successives qui définissent les points de contrôle de courbe de Bézier de la nouvelle forme. |
Degré | Requis | Integer | Degré de la courbe de Bézier. |
Flags | Requis | Integer | Indicateurs influençant la manière dont la forme est tracée. |
Valeur renvoyée
Shape
Remarques
Les paramètres TableauXY() etdegré doivent respecter les conditions suivantes :
1 <= degré< = 9
Le nombre de points doit être k * degré + 1, où k est un entier positif. Si le premier point est appelé p0 , pour tout entier m compris entre 1 et k , p(m * degré) est supposé être le dernier point de contrôle d’un segment de Bézier, ainsi que le premier point de contrôle du suivant.
La courbe générée est une courbe composite comportant k segments de courbe de Bézier. Les points en entrée fournis par l'argument TableauXY() définissent les points de contrôle de la courbe. Si vous souhaitez une courbe lisse, assurez-vous que les points p(n - 1) , pn et p(n + 1) sont co-linéaires chaque fois que n = m * degré avec un entier m. La courbe de Bézier composite est représentée comme une courbe B-spline avec des nœuds sous forme d'entiers de multiplicité égale au degré.
Les points de contrôle doivent être exprimés en unités de dessin internes (pouces) par rapport à l'espace coordonné de la page, de la forme de base ou du groupe sur lequel la forme est dessinée. Le tableau transmis doit être un tableau SAFEARRAY avec des valeurs à virgule flottante de 8 octets transmises par référence (VT_R8|VT_ARRAY|VT_BYREF). C'est ainsi que Microsoft Visual Basic transmet des tableaux aux objets Automation.
L'argument Indicateurs est un masque binaire définissant les options de dessin de la nouvelle forme. Sa valeur doit correspondre à zéro (0) ou visSpline1D (8).
Si Flags a la valeur visSpline1D et que le premier et le dernier point dans xyArray() ne coïncident pas, la méthode DrawBezier produit une forme avec un comportement unidimensionnel (1D) ; sinon, elle produit une forme avec un comportement 2D (2D).
Si le premier et le dernier point de TableauXY() coïncident, la méthode DrawBezier génère une forme pleine.
Exemple
L'exemple suivant indique comment dessiner une courbe de Bézier passant par cinq points arbitraires sur la page active.
Public Sub DrawBezier_Example()
Dim vsoShape As Visio.Shape
Dim intCounter As Integer
Dim adblXYPoints(1 To (5 * 2)) As Double
For intCounter = 1 To 5
'Set x-coordinates (array elements 1,3,5,7,9) to 1,2,3,4,5
adblXYPoints((intCounter * 2) - 1) = intCounter
'Set y-coordinates (array elements 2,4,6,8,10) to f(intCounter)
adblXYPoints(intCounter * 2) = (intCounter * intCounter) - (7 * intCounter) + 15
Next intCounter
Set vsoShape = ActivePage.DrawBezier(adblXYPoints, 2, visSpline1D)
End Sub
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.