0

ギター コード アプリケーションを作成しようとしていますが、1 つのコードのコード表が多すぎます。すべてをリストすると時間がかかり、効率的ではありません。例えば、Cメジャーコードには下図のようなバリエーションがあります

  • ×3 2 0 1 0
  • ×3 2 0 1 3
  • ×3 5 5 5 0
  • 8 10 10 9 8 8

コードを作成するためのキーを知っている/知らなくても、チャートを生成できる方法はありますか? つまり、コード C メジャーの CEG です。

4

2 に答える 2

3

コメントに反して、これは可能だと思います。などのオープンコードの形状をすべて取得した場合。

  • 0 2 2 1 0 0 (オープン E)
  • 0 0 2 2 2 0 (オープン A)
  • 0 3 2 0 1 0 (オープン C)
  • X 0 0 2 3 2 (オープン D)

次に、バーコードを使用してそれらをシフトアップすると、特定のコードのすべての順列を計算するコードを記述できるはずです。たとえば、すべての C メジャー トライアド (質問のように) が必要な場合は、1 つが

  • 0 3 2 0 1 0 (オープン C)

しかし、そのうちの 1 つは上に開いた A シェイプですが、3 フレットが上にシフトしていることも知っています...

  • 3 3 5 5 5 3 (オープン A をバーコードとして上にシフト)

これは、質問の 3 番目のコードです。また、開いた E 形状をどこにシフトするかを計算することもできます。

  • 8 10 10 7 8 8

繰り返しますが、これはあなたの質問の和音の 1 つです。このようにして、コードを使用して任意のコードのすべての位置を計算できます。ただし、このように快適にシフトアップできるオープンコードのセットが十分にある場合に限ります。

したがって、これらの最初のオープン シェイプを使用する C コードのセットは次のようになります...

Cコード...

  • 8 10 10 7 8 8

  • 3 3 5 5 5 3

  • 0 3 2 0 1 0

  • X 10 10 12 14 12

D コードのセットを知りたい場合は、上記のすべての数字に 2 を足すことで実際にこれらを計算できます (そのうちの 2 つはオクターブをラップしますが、これを計算に組み込むことができます)。

Dコード...

  • 10 12 12 11 10 10

  • 5 5 7 7 7 5

  • 10 13 12 10 11 10

  • X 0 0 2 3 2

于 2016-01-29T18:15:01.513 に答える