VisualCube を用いてOLL画像一覧を生成するPythonスクリプトを書いたので公開します。VisualCubeを用いると、様々なケースのキューブ画像を生成することができます。使用方法は、http://cube.crider.co.uk/visualcube.php にパラメータを与えてGETリクエストするだけです。パラメータ一覧は VisualCubeのページ の後半に書いてあります。
まず、OLL画像を作るには、case
パラメータが重要です。VisualCubeに手順を指定する方法は、alg
パラメータとcase
パラメータがありますが、alg
パラメータは完成状態に与えた手順を適用させるのに対し、case
パラメータは与えた手順を適用させたときに完成状態になるようにします。
OLLをわかりやすく表示するために、oll
を指定することで上面 (黄色) 以外のfaceletをグレーでマスクして、plan
を指定することで真上から見た様子を表示します。
例えば、Sune (OLL 27) の手順は R U R’ U R U2 R’ なので、画像は
http://cube.crider.co.uk/visualcube.php?case=RUR’URU2R’ &view=plan&stage=oll&size=256&fmt=png
で取得できます。回転記号間のスペースはあってもなくても大丈夫です。size
パラメータは画像サイズ、fmt
は画像フォーマットです。以下の画像を得ることができます。
さて、画像生成方法は簡単ですが、OLLは57種類あるのでこれらを一気に作ろうとすると骨が折れる作業です。そこで、OLL全種類の画像を生成するPythonスクリプトを作成しました。
スクリプトファイル: genimg_oll.py
以下のようにオプションで、画像出力ディレクトリ、画像サイズ、画像フォーマットを指定できます。
$ ./genimg_oll.py -o /path/to/images -s 256 -f png $ ./genimg_oll.py -h # オプションの詳細はヘルプを見てください。
取得したOLL画像一覧は、oll/images においてあります。
なお、今回はVisualCube作者である Conrad Rider 氏のサーバにあるVisualCubeを使用しましたが、VisualCube はオープンソースなので (Cride5/visualcube) ローカル環境で動作させることも可能です。
次は、PLL画像一覧を作ります。
謝辞: 全OLL手順は roudai.net によるものである。