1

領域を塗りつぶすアルゴリズムを実装しようとしています。その特定のアルゴリズムは、次のWikipediaドキュメントの「固定メモリ メソッド (右側の塗りつぶしメソッド)」という見出しの下に示されています。左折と右折が行われるアルゴリズムの特定の部分を以下に示します...

START:
    set count to number of non-diagonally adjacent pixels filled (front/back/left/right ONLY)
    if count is not 4
            do
                    turn right
            while front-pixel is empty
            do
                    turn left
            while front-pixel is filled
    end if

この声明は、右に曲がるか左に曲がるかを明示的に述べており、右に移動したり左に移動したりしないでください。私にとって混乱しているのは、(x,y) 座標のピクセルをどのように左から右に回転させることができるかということです。

4

2 に答える 2

2

forward は最初は「上」を意味するとしましょう。右に曲がると、前進の意味が変わります。今では「右」を意味します。再び右に曲がり、前方が「下」です。

于 2012-08-14T10:58:32.317 に答える
1

基本的に、「ピクセル」はバグ/アリ/恐竜/ゴールデン ユニコーンと考えることができます。したがって、場所だけでなく方向もあり、それが向いています (向き)。したがって、ピクセルが上を向いている場合、コマンドturn rightは右側を見るように指示します。move forward次に、1 ピクセル右に移動することを意味します。

ピクセルをturn right4 回に指定すると、以前と同じ方向に見えます。3xturn rightは 1x と同じturn leftです。

于 2012-08-14T11:03:04.410 に答える