#!/usr/bin/env python
# -*- coding:utf-8 -*-
# author:dell
import threading
import time

import cv2
import sys

import numpy as np
from PyQt5 import QtWidgets
import pyqtgraph as pg
from draw_frame import draw_double_frame
from graphic_demo_ui import Ui_MainWindow
from PyQt5.QtCore import pyqtSignal
from PyQt5 import QtCore
class MyGraphWindow(QtWidgets.QMainWindow, Ui_MainWindow):
    sig=pyqtSignal(object)

    def __init__(self):

        super(MyGraphWindow, self).__init__()

        self.setupUi(self)  # 初始化窗口
        self.setWindowTitle('T1K播放器')
        self.pos_bus = 3000

        self.btn.clicked.connect(self.draw2)  # 点击按键开始绘图
        self.btn2.clicked.connect(self.start_timer)  # 点击按键开始绘图
        self.btn2.setEnabled(False)
        # self.btn.clicked.connect(self.btn_event)
        self.t1k_convertor=None

        self.sig.connect(self.button_enable)

        self.timer = QtCore.QTimer()
        self.timer.timeout.connect(self.showtime)

        self.btn3.clicked.connect(self.stop_play)

    def start_timer(self):
        self.timer.start(1000)

    def stop_play(self):
        self.timer.stop()

    def showtime(self):
        pos_delta = 50
        width = 300
        frame = draw_double_frame(self.pos_bus, self.t1k_convertor, width=width, rect_option=True)
        self.pos_bus += pos_delta

        self.image_item.setImage(frame)
        # self.viewbox.autoRange()

    def start_show(self):
        self.timer.start(1000)


    def button_enable(self):
        self.btn2.setEnabled(True)


    def get_data(self):
        from t1k.resource.convertor import T1kConvertor
        self.t1k_convertor = T1kConvertor(r"D:\中车招投标项目演示项目t1k\南昌局\804_DF280119_006.t1k", model_type="rf", version=2)
        for data_pos, result in self.t1k_convertor.convert():
            pass

        print('解析完成')
        self.sig.emit('fire')


    def draw2(self):
        t=threading.Thread(target=self.get_data,args=())
        t.start()



if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    myWin = MyGraphWindow()
    myWin.show()
    sys.exit(app.exec_())




