TChartのSeriesにLineを追加して
ふつうに折れ線グラフを書くと次のようになります。
Series1.Clear;
Series1.AddXY(0, 0);
Series1.AddXY(1, 1);
Series1.AddXY(2, 1);
Series1.AddXY(3, 0);
Series1.AddXY(4, -1);
Series1.AddXY(5, -1);
Series1.AddXY(6, 0);
実行結果
このグラフをなめらかな曲線にします。
uses TeeSpline;
var
BSpline: TBSpline;
I: Integer;
begin
BSpline:=TBSpline.Create;
BSpline.AddPoint(0, 0);
BSpline.AddPoint(1, 1);
BSpline.AddPoint(2, 1);
BSpline.AddPoint(3, 0);
BSpline.AddPoint(4, -1);
BSpline.AddPoint(5, -1);
BSpline.AddPoint(6, 0);
BSpline.Interpolated := True;
Series1.Clear;
for I := 0 to BSpline.Fragments do
begin
with BSpline.Value(I / BSpline.Fragments) do
Series1.AddXY(X, Y);
end;
BSpline.Free;
end;
実行結果
Pingback: 山本隆の開発日誌