Lustige neue Funktionen gemacht

This commit is contained in:
Stefan Kinzel 2017-01-17 23:28:21 +01:00
parent 863e07d89e
commit 796d950ec3
2 changed files with 25 additions and 2 deletions

View File

@ -4,6 +4,8 @@ import binascii
import io import io
import time import time
import re import re
import numpy as np
class FlipdotSender(object): class FlipdotSender(object):
''' '''
@ -62,7 +64,23 @@ class FlipdotSender(object):
packet = self._array2packet(imgmap) packet = self._array2packet(imgmap)
self._sock.sendto(bytes(packet), (self._udphost, self._udpport)) self._sock.sendto(bytes(packet), (self._udphost, self._udpport))
def send_bytes(self, img):
imgmap = []
for pixel in img:
if pixel == "1":
imgmap.append(1)
else:
imgmap.append(0)
if len(img) < 1280:
imgmap = np.hstack((imgmap, np.zeros(1280-len(img), dtype=int)))
packet = self._array2packet(imgmap)
self._sock.sendto(bytes(packet), (self._udphost, self._udpport))
def send_text(self, text): def send_text(self, text):
image = Image.new("RGBA", self._img_size, FlipdotSender.C_BLACK) image = Image.new("RGBA", self._img_size, FlipdotSender.C_BLACK)
draw = ImageDraw.Draw(image) draw = ImageDraw.Draw(image)

View File

@ -8,6 +8,7 @@ def on_connect(client, userdata, flags, rc):
print("Connected with result code " + str(rc)) print("Connected with result code " + str(rc))
client.subscribe("raum2/flipdot/text") client.subscribe("raum2/flipdot/text")
client.subscribe("raum2/flipdot/scroll") client.subscribe("raum2/flipdot/scroll")
client.subscribe("raum2/flipdot/image")
def on_message(client, userdata, msg): def on_message(client, userdata, msg):
@ -27,7 +28,11 @@ def on_message(client, userdata, msg):
if msg.topic == "raum2/flipdot/text": if msg.topic == "raum2/flipdot/text":
payload = msg.payload.decode("utf-8") payload = msg.payload.decode("utf-8")
flipdot.send_text(payload) flipdot.send_text(payload)
if msg.topic == "raum2/flipdot/image":
payload = msg.payload.decode("utf-8")
print(payload)
flipdot.send_bytes(payload)
flipdot = FlipdotSender("2001:67c:275c:a9::c", 2323) flipdot = FlipdotSender("2001:67c:275c:a9::c", 2323)