Méthode Master.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 Master .

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.