4

ベジェ曲線を描くMatlabの方法は何ですか?あなたはそれを自分でprgoramする必要がありますか?

私はユーザーが作成したルーチンを探していませんが、Matlabがそれらを描画するための標準的な方法を提供しているかどうかを尋ねています。

4

4 に答える 4

4

カーブフィッティングツールボックスを使用すると、Matlabはベジェ曲線の一般化であるBスプラインをサポートします。内部ノットのない有理Bスプラインは、ベジエスプラインです。

例えば

p = spmak([0 0 0 1 1 1],[1 0;0 1]);
fnplt(p)

(0,0)、(1,0)、(1,1)、(0,1)に制御点があるベジェ曲線をプロットします。

于 2012-04-14T14:43:45.257 に答える
2

ドキュメントを調べて検索した後、私の答えは「いいえ」です。サードパーティの実装の1つを使用する必要があります。

最も可能性の高い候補はinterpファミリ関数であり、ベジェ補間を実装していません。

于 2010-02-20T10:05:43.123 に答える
2

これを試すことができます、http://www.cnblogs.com/begtostudy/articles/1787709.html

于 2010-07-29T03:23:55.503 に答える
2

このリンクに基づく次のコード。

function B = bazier( t, P )
    %Bazier curve
    % Parameters
    % ----------
    % - t: double
    %   Time between 0 and 1
    % - C: 2-by-n double matrix
    %   Control points
    %
    % Returns
    % -------
    % - B: 2-by-1 vector
    %   Output point

    B = [0, 0]';

    n = size(P, 2);
    for i = 1:n
        B = B + b(t, i - 1, n - 1) * P(:, i);
    end
end

function value = b(t, i, n)
    value = nchoosek(n, i) * t^i * (1 - t)^(n - i);
end
于 2017-09-01T07:17:46.010 に答える