Método Shape.DrawPolyline (Visio)
Cria uma forma cujo caminho é uma polilinha com um determinado conjunto de pontos.
Sintaxe
expression. DrawPolyline
( _xyArray()_
, _Flags_
)
Expressão Uma variável que representa um objeto Shape .
Parâmetros
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
xyArray() | Obrigatório | Double | Uma matriz de valores x e y alternados que definem pontos no caminho da nova forma. |
Flags | Obrigatório | Integer | Sinalizadores que influenciam a maneira como a forma é desenhada. |
Valor de retorno
Forma
Comentários
O método DrawPolyline cria uma nova forma cujo caminho consiste em uma sequência de segmentos de linha e cujos pontos de extremidade correspondem aos pontos especificados em xyArray. Chamar o método DrawPolyline equivale a chamar o método DrawSpline com uma tolerância zero (0) e um sinalizador visSplineAbrupt.
Os pontos de controle devem estar em unidades de desenho internas (polegadas) com relação ao espaço de coordenadas da página, mestre ou grupo no qual a nova forma é criada. A matriz passada deve ser do tipo SAFEARRAY de valores de ponto flutuante de 8 bytes passados por referência (VT_R8|VT_ARRAY|VT_BYREF). É assim que o Microsoft Visual Basic passa matrizes para objetos Automation.
O argumento Flags é uma bitmask que especifica opções para desenhar a nova forma. Seu valor pode incluir visPolyline1D (8) ou visPolyarcs (256). Se Flags incluir:
visPolyline1D e se os primeiros e últimos pontos no xyArray não coincidirem, o método DrawPolyline produzirá uma forma com comportamento unidimensional (1D). caso contrário, ele produz uma forma com comportamento bidimensional (2D).
visPolyarcs, o Microsoft Visio produzirá uma sequência de arcos em vez de uma sequência de segmentos de linha; xyArray deve especificar o ponto x,y inicial da sequência seguido de trios de arcos x,y. O Visio produzirá uma forma com linhas EllipticalArcTo na qual o arco da curva corresponde ao valor especificado.
Se o primeiro e no último ponto em xyArray coincidirem, o método DrawPolyline produzirá uma forma preenchida.
Exemplo
O exemplo a seguir mostra como desenhar duas formas poliline que têm comportamento 2D e 1D, respectivamente, na página ativa.
Public Sub DrawPolyline_Example()
Dim vsoShape As Visio.Shape
Dim adblXYPoints(1 To 8) As Double
Dim intCounter As Integer
'Initialize array with coordinates.
adblXYPoints(1) = 1
adblXYPoints(2) = 1
adblXYPoints(3) = 3
adblXYPoints(4) = 3
adblXYPoints(5) = 5
adblXYPoints(6) = 1
adblXYPoints(7) = 1
adblXYPoints(8) = 2
'Use the DrawPolyline method to draw a shape that has 2D behavior.
Set vsoShape = ActivePage.DrawPolyline(adblXYPoints, 0)
'Increase the Y-coordinate of the array by 4 to separate
'the next shape drawn from the first.
For intCounter = 2 To UBound(adblXYPoints) Step 2
adblXYPoints(intCounter) = adblXYPoints(intCounter) + 4
Next intCounter
'Use the DrawPolyline method to draw a shape that has 1D behavior.
Set vsoShape = ActivePage.DrawPolyline(adblXYPoints, visPolyline1D)
End Sub
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.