G Code Viewer using Cairo、OpenGL
Matplotlibはほんとに素晴らしいんだけど、今や非力な所有ノートPC(T5600)ではファイルが大きくなるほど移動、拡大などが遅い。OpenGLのバックエンドが使えるようになれば良いが、i945GMのバージョン1.4はサポートされるはずがない。
で、必要とする機能は限られているので、Cairoを使ったものと、OpenGLを使ったもので表示部を作ってみたが、マウスポインタを中心に拡大するのは結構大変で、上手く行くまで相当な手間がかかり、つぎはぎだらけのコードとなってしまった。
こんな感じ、
データは、pcb-gcodeで作った、約28000行のG Code。
PythonのpyOpenGLを使ってGtk+3と共存できたのでこちらもやってみた。
Cairo版で悩みに悩んだのと、当然きちんと作られているOpenGLのおかげもあって比較的簡単に。
しかし、OpenGLと言っても図形の描画以外はアクセラレーションの恩恵を受けていないはずで、ちょっと早い(システムモニターで見てCPU負荷が軽い)程度、pyOpenGL自体も遅いとのことだしほとんどの影響はPythonの速度だろうか。
高速じゃないけど遅くはない・・・くらいかな。
(アップロードした動画が荒いのはなぜ?)