前提・実現したいこと
ラズパイに搭載した3.5"LCDパネルをタッチすると、スイッチをON/OFFするものを作りたいと思ってします。以下のページを参考に、まずは同じものを作ろうと思いました。python,kivyは始めたばかりです。
http://independence-sys.net/main/?p=4363
使用しているLCDパネルは、ラズパイの大きさと同じ3.5"のパネルです。指またはペンで押すとマウスと同じ動作をし、ラズパイデスクトップ上では問題なく操作が出来ています。
★質問の内容
当LCDパネルを使い、kivy上でマウスの座標を取得すると、x,yの座標が誤って取得されるのですが、設定ファイルはあるのでしょうか?
発生している問題・エラーメッセージ
上記のpython+kivyプログラムを起動させると動くには動くのですが、「リレーをON」ボタンを押すとOFFの動作が行われ、「リレーをON」の少し上部を押すと、ONの動作が行われます。
マウス座標を取得するプログラムを作成して4隅を突いてみたところ、
左上 pos=(0.93, 0.96) 右上 pos=(0.90, 0.07)
左下 pos=(0.07, 0.93) 右下 pos=(0.04, 0.06)
のような値が取得され、本来ならkivyはWindowsとは異なり第1象限の値となるとのことで、
左上 pos=(1,0) 右上 pos=(1,1)
左下 pos=(0,0) 右下 pos=(0,1)
のようにならなければならないと思います。つまりy座標が逆に取得されているようなのですが、これを修正するkivy、またはLCDパネルの設定ファイルはあるのでしょうか?
もし無い場合、プログラムをどのように修正すれば正常に座標を取得することが出来るのでしょうか?
該当のソースコード
Python
1from kivy.app import App 2from kivy.uix.widget import Widget 3 4class KurikkuInput(Widget): 5 def on_touch_down(self, touch): 6 print(touch) 7 8class IntroKivy(App): 9 def build(self): 10 return KurikkuInput() 11 12if __name__ == "__main__": 13 IntroKivy().run()
試したこと
マウスをUSBポートに接続して座標が得られないかを試してみたのですが、マウスクリックでは何もイベントが発生しませんでした。
補足情報(FW/ツールのバージョンなど)
Python:3.7.3
kivy:
LCDパネル:Elecrow 3.5インチTFT LCD ディスプレイ 解像度480*320 タッチスクリーン モニター
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/17 17:50