Curve.PointAndDerivatives 方法 (Visio)

返回位于曲线路径上的某个位置的点及其导数。

语法

表达式PointAndDerivatives (tnxydxdtdydtddxdtddydt)

表达 一个代表 Curve 对象的变量。

参数

名称 必需/可选 数据类型 说明
t 必需 Double 要计算的位于曲线的参数域内的值。
n 必需 Integer 0:获取点;1:点及其一阶导数;2:点及其一阶导数和二阶导数。
x 必需 Double 返回 t 处曲线的 x
y 必需 Double 返回 t 处曲线的 y 值。
dxdt 必需 Double 如果n> 0,则返回 t 处的第一个派生 ( dx/dt) 。
dydt 必需 Double 如果 n> 0,则返回 t 处的第一个派生 ( dy/dt) 。
ddxdt 必需 Double 如果n> 1,则返回 t 处的第二个派生 ( ddx/dt) 。
ddydt 必需 Double 如果n> 1,则返回 t 处的第二个导数 ( ddy/dt) 。

返回值

Nothing

注解

使用 Curve 对象的 PointAndDerivatives 方法可以获取曲线的参数域内的点的坐标及其一阶导数和二阶导数。

Curve 对象是使用其参数域进行描述的,参数域为范围 [Start(),End()]。 PointAndDerivatives 方法可用于将曲线的路径延伸到 [Start(),End()] 之外。

示例

此 Microsoft Visual Basic for Applications (VBA) 宏将在文档的活动页上绘制一个椭圆,然后将检索该椭圆,并遍历其 Paths 集合和每个 Path 对象,以显示曲线上的各个点的坐标。 由于所绘制的图形是椭圆,因此它只包含一个路径和一个 Curve 对象。

 
Sub PointAndDerivatives_Example() 
 
 Dim vsoShape As Visio.Shape 
 Dim vsoPaths As Visio.Paths 
 Dim vsoPath As Visio.Path 
 Dim vsoCurve As Visio.Curve 
 Dim dblStartpoint As Double 
 Dim dblXCoordinate As Double 
 Dim dblYCoordinate As Double 
 Dim dblFirstDerivativeX As Double 
 Dim dblFirstDerivativeY As Double 
 Dim dblSecondDerivativeX As Double 
 Dim dblSecondDerivativeY 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 a Path object. 
 For intInnerLoopCounter = 1 To vsoPath.Count 
 
 Set vsoCurve = vsoPath(intInnerLoopCounter) 
 Debug.Print "Curve number " & intInnerLoopCounter 
 
 'Display the start point of the curve. 
 dblStartpoint = vsoCurve.Start 
 Debug.Print "Startpoint= " & dblStartpoint 
 
 'Use the PointAndDerivatives method to obtain 
 'a point and the first derivative at that point. 
 vsoCurve.PointAndDerivatives (dblStartpoint - 1), 1, _ 
 dblXCoordinate, dblYCoordinate, dblFirstDerivativeX, dblFirstDerivativeY, dblSecondDerivativeX, dblSecondDerivativeY 
 Debug.Print "PointAndDerivative= " & dblXCoordinate, dblYCoordinate, dblFirstDerivativeX, dblFirstDerivativeY 
 
 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 支持和反馈,获取有关如何接收支持和提供反馈的指南。