Поделиться через


Метод Curve.Point (Visio)

Возвращает точку в позиции вдоль кривой.

Синтаксис

expression. Точка (t, x, y)

Выражение Переменная, представляющая объект Curve .

Параметры

Имя Обязательный или необязательный Тип данных Описание
t Обязательный Double Значение в области параметров кривой для вычисления.
x Обязательный Double Возвращает значение x кривой в t.
y Обязательный Double Возвращает значение y кривой в t.

Возвращаемое значение

Отсутствует

Примечания

Объект Curve описывается в терминах его домена параметров, который представляет собой диапазон [Start(),End()]. Метод Point объекта Curve возвращает координаты x,y в позиции t, которая представляет собой любое положение вдоль пути кривой. Метод Point можно использовать для экстраполирования пути кривой за пределами [Start(),End()].

Пример

Этот макрос Microsoft Visual Basic для приложений (VBA) рисует круг (особый случай овала) на активной странице документа. Затем он выполняет итерацию по коллекции Paths круга и каждого объекта Path , чтобы отобразить координаты различных точек вдоль кривой. Так как нарисованная фигура является кругом, это объект Curve , имеющий только один путь.

 
Sub Point_Example() 
 
 Dim vsoShape As Visio.Shape 
 Dim vsoPaths As Visio.Paths 
 Dim vsoPath As Visio.Path 
 Dim vsoCurve As Visio.Curve 
 Dim dblEndpoint As Double 
 Dim dblXCoordinate As Double 
 Dim dblYCoordinate As Double 
 Dim intOuterLoopCounter As Integer 
 Dim intInnerLoopCounter As Integer 
 
 'Get the Paths collection for this shape. 
 Set vsoPaths = ActivePage.DrawOval(1, 1, 4, 4).Paths 
 
 'Iterate through the Path objects in the Paths collection. 
 For intOuterLoopCounter = 1 To vsoPaths.Count 
 Set vsoPath = vsoPaths.Item(intOuterLoopCounter) 
 Debug.Print "Path object " & intOuterLoopCounter 
 
 'Iterate through the curves in the Path object. 
 For intInnerLoopCounter = 1 To vsoPath.Count 
 
 Set vsoCurve = vsoPath(intInnerLoopCounter) 
 Debug.Print "Curve number " & intInnerLoopCounter 
 
 'Display the endpoint of the curve 
 dblEndpoint = vsoCurve.End 
 Debug.Print "Endpoint= " & dblEndpoint 
 
 'Use the Point method to determine the 
 'coordinates of an arbitrary point on the curve 
 vsoCurve.Point (dblEndpoint/2), dblXCoordinate, dblYCoordinate 
 Debug.Print "Point= " & dblXCoordinate, dblYCoordinate 
 
 Next intInnerLoopCounter 
 Debug.Print "This path has " & intInnerLoopCounter - 1 & " curve object(s)." 
 
 Next intOuterLoopCounter 
 Debug.Print "This shape has " & intOuterLoopCounter - 1 & " path object(s)." 
 
End Sub

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.