Stroke.SetPoints 方法 (Int32, array<Point[])
設定點 (英文) 結構的範圍,從 Stroke 物件中指定的索引處開始。
命名空間: Microsoft.Ink
組件: Microsoft.Ink (在 Microsoft.Ink.dll 中)
語法
'宣告
Public Function SetPoints ( _
index As Integer, _
points As Point() _
) As Integer
'用途
Dim instance As Stroke
Dim index As Integer
Dim points As Point()
Dim returnValue As Integer
returnValue = instance.SetPoints(index, _
points)
public int SetPoints(
int index,
Point[] points
)
public:
int SetPoints(
int index,
array<Point>^ points
)
public int SetPoints(
int index,
Point[] points
)
public function SetPoints(
index : int,
points : Point[]
) : int
參數
- index
型別:System.Int32
Stroke 物件中第一個點要修改的以零起始的索引。
- points
型別:array<System.Drawing.Point[]
新點 (英文) 值的陣列,用來取代 Stroke 物件中下列位置開始的點:
index.
傳回值
型別:System.Int32
傳回設定的實際點數。
備註
這個方法不會變更 Stroke 物件中的點數。若要變更 Stroke 物件中的點數,必須建立新的 Stroke 物件,或是必須分割 Stroke 物件。
點陣列的長度決定了 Stroke 物件中要修改的點數。
這個方法不會提供用來截斷 Stroke 物件。如果點陣列包含的點少於 Stroke 物件,則會修改 Stroke 物件中其餘的點。
這個方法不會提供用來延伸 Stroke 物件。如果點陣列包含的點多於 Stroke 物件,則不會使用額外的點。
範例
在這個範例中,會透過取得 Stroke 後半部的點,然後標準化每個 Y 座標的方式,將 InkOverlay 的每個已選取 Stroke 物件的後半部變成水平筆劃。值經過修改之後,SetPoints 方法會用來更新 Stroke 物件。
For Each S As Stroke In mInkOverlay.Selection
Dim halfwayPt As Integer = S.PacketCount / 2
' get the points
Dim pts() As Point = S.GetPoints(halfwayPt, S.PacketCount - halfwayPt)
' set each Y coordinate to the first Y coordinate
For k As Integer = 0 To pts.Length - 1
pts(k).Y = pts(0).Y
Next
' update the points
S.SetPoints(halfwayPt, pts)
Next
foreach (Stroke S in mInkOverlay.Selection)
{
int halfwayPt = S.PacketCount / 2;
// get the points
Point[] pts = S.GetPoints(halfwayPt, S.PacketCount - halfwayPt);
// set each Y coordinate to the first Y coordinate
for (int k = 0; k < pts.Length; k++)
{
pts[k].Y = pts[0].Y;
}
// update the points
S.SetPoints(halfwayPt, pts);
}
平台
Windows Vista
.NET Framework 和 .NET Compact Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱 .NET Framework 系統需求。
版本資訊
.NET Framework
支援版本:3.0