Vcl.Graphics.TCanvas.PolyBezier
Delphi
procedure PolyBezier(const Points: array of TPoint); override;
C++
virtual void __fastcall PolyBezier(const System::Types::TPoint *Points, const System::NativeInt Points_High);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure function |
public | Vcl.Graphics.pas Vcl.Graphics.hpp |
Vcl.Graphics | TCanvas |
説明
ベジェ曲線を描画します。
PolyBezier メソッドは,Points パラメータで指定した両端の点およびコントロールポイントを使用して,立体ベジェ曲線を描画します。最初の曲線は,最初の点と 4 番めの点を結んで描画され,2 番めと 3 番めの点はコントロールポイントとして使用されます。後に続くそれぞれの曲線には,3 つのポイントが必要です。前の曲線の終点は,出発点として使用されます。第 2 のポイントはコントロールポイントで,第 3 のポイントは終点です。
Points パラメータは,ベジェ曲線を生成する場合に使用される終点を指定します。
メモ: Points_Size パラメータは,配列の最後にある点のインデックス(点の総数より 1 小さい値)です。
この手順では,現行のペンを使って線を描画します。
メモ: Delphi で Slice 関数を使用すると,点の配列の一部を PolyBezier メソッドに渡すことができます。たとえば,点が 100 個ある配列の最初の 10 個の点でベジェ曲線を描画するには,次のように Slice 関数を使用します。
Canvas.PolyBezier(Slice(PointArray, 10));
[Index+3] より後のコントロールポイントは無視されます。必要な数のコントロールポイントがない場合は何も起こりません。