Exemplo n.º 1
0
    def __init__(self, guimgr):
        super(AwRosbagSimulatorWidget, self).__init__()
        self.rosbag_mode_proc = QtCore.QProcess(self)
        self.rosbag_info_proc = QtCore.QProcess(self)
        self.rosbag_play_proc = QtCore.QProcess(self)

        self.rosbag_file = widgets.AwFileSelect(self)
        self.rosbag_info = QtWidgets.QPushButton("Info")
        self.rosbag_text = QtWidgets.QLabel("No information")
        self.rosbag_enable = QtWidgets.QCheckBox()
        self.rosbag_label = QtWidgets.QLabel("Simulation Mode")
        self.rosbag_play = QtWidgets.QPushButton("Play")
        self.rosbag_stop = QtWidgets.QPushButton("Stop")
        self.rosbag_pause = QtWidgets.QPushButton("Pause")
        self.rosbag_state = QtWidgets.QLabel()
        #self.rosbag_stime  = QtWidgets.QLineEdit()
        #start time
        #repeat
        #rate

        self.rosbag_enable.stateChanged.connect(self.simulation_mode_changed)
        self.rosbag_info.clicked.connect(self.rosbag_info_requested)
        self.rosbag_info_proc.finished.connect(self.rosbag_info_completed)

        self.rosbag_play.clicked.connect(self.rosbag_started)
        self.rosbag_stop.clicked.connect(self.rosbag_stopped)
        self.rosbag_play_proc.finished.connect(self.rosbag_finished)
        self.rosbag_play_proc.readyReadStandardOutput.connect(
            self.rosbag_output)

        self.rosbag_pause.setCheckable(True)
        self.rosbag_pause.toggled.connect(self.rosbag_paused)

        self.setStyleSheet(
            "QCheckBox::indicator { width: 28px; height: 28px; }")
        self.rosbag_label.setSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                        QtWidgets.QSizePolicy.Preferred)
        self.rosbag_text.setSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                       QtWidgets.QSizePolicy.Expanding)

        layout = QtWidgets.QGridLayout()
        layout.addWidget(self.rosbag_enable, 0, 0)
        layout.addWidget(self.rosbag_label, 0, 1)
        layout.addWidget(self.rosbag_play, 0, 2)
        layout.addWidget(self.rosbag_stop, 0, 3)
        layout.addWidget(self.rosbag_pause, 0, 4)
        layout.addWidget(self.rosbag_state, 1, 0, 1, 5)
        layout.addWidget(self.rosbag_file.path, 2, 0, 1, 3)
        layout.addWidget(self.rosbag_file.button, 2, 3)
        layout.addWidget(self.rosbag_info, 2, 4)
        layout.addWidget(self.rosbag_text, 3, 0, 1, 5)
        self.setLayout(layout)
        self.simulation_mode_disabled()
Exemplo n.º 2
0
    def __init__(self, guimgr):
        super(AwLgsvlSimulatorWidget, self).__init__()
        self.process = QtCore.QProcess(self)
        self.console = AwProcessViewer(self.process)
        self.button = QtWidgets.QPushButton("Launch Simulator")
        self.button.setCheckable(True)
        self.button.toggled.connect(self.launch_lgsvm)

        self.server_addr = QtWidgets.QLineEdit()
        self.server_port = QtWidgets.QLineEdit()
        self.client_addr = QtWidgets.QLineEdit()
        self.client_port = QtWidgets.QLineEdit()

        self.server_addr.setText("10.100.2.1")
        self.server_port.setText("5000")
        for host in QtNetwork.QNetworkInterface.allAddresses():
            if not host.isLoopback():
                if host.protocol() == QtNetwork.QAbstractSocket.IPv4Protocol:
                    self.client_addr.setText(host.toString())
        self.client_port.setText("9090")

        layout = QtWidgets.QGridLayout()
        layout.addWidget(QtWidgets.QLabel("Server Address"), 0, 0)
        layout.addWidget(QtWidgets.QLabel("Server Port"), 1, 0)
        layout.addWidget(QtWidgets.QLabel("Client Address"), 2, 0)
        layout.addWidget(QtWidgets.QLabel("Client Port"), 3, 0)
        layout.addWidget(self.server_addr, 0, 1)
        layout.addWidget(self.server_port, 1, 1)
        layout.addWidget(self.client_addr, 2, 1)
        layout.addWidget(self.client_port, 3, 1)
        layout.addWidget(self.button, 4, 0, 1, 2)
        layout.addWidget(self.console, 5, 0, 1, 2)
        self.setLayout(layout)
Exemplo n.º 3
0
    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)
        path = rospkg.RosPack().get_path('cyplam_data')
        loadUi(os.path.join(path, 'resources', 'data.ui'), self)

        rospy.Subscriber('/supervisor/status',
                         MsgStatus,
                         self.cbStatus,
                         queue_size=1)

        self.btnConnect.clicked.connect(self.btnConnectClicked)
        self.btnJob.clicked.connect(self.btnJobClicked)
        self.btnPredict.clicked.connect(self.btnPredictClicked)
        self.btnRecord.clicked.connect(self.btnRecordClicked)
        self.btnTransfer.clicked.connect(self.btnTransferClicked)

        dirdata = os.path.join(HOME, DIRDATA)
        if not os.path.exists(dirdata):
            os.mkdir(dirdata)

        self.job = ''
        self.name = ''
        self.status = False
        self.running = False
        self.process = QtCore.QProcess(self)

        if rospy.has_param('/material'):
            self.setMaterialParameters(rospy.get_param('/material'))

        self.btnJobClicked()
Exemplo n.º 4
0
    def __init__(self, lpath):
        super(AwProcessItem, self).__init__()
        self.lpath = lpath

        #ToDo: setMaximumBlockCount
        self.setReadOnly(True)
        self.setLineWrapMode(QtWidgets.QPlainTextEdit.NoWrap)

        self.proc = QtCore.QProcess(self)
        self.proc.finished.connect(self.proc_finished)
        self.proc.readyReadStandardOutput.connect(self.proc_stdouted)
        self.proc.readyReadStandardError.connect(self.proc_stderred)

        import re
        self.bash_regex = re.compile("\033(\[.*?m|\].*?;)")
Exemplo n.º 5
0
    def __init__(self, guimgr):
        super(AwGazeboSimulatorWidget, self).__init__()
        self.gazebo_process = QtCore.QProcess(self)

        self.launch_button = QtWidgets.QPushButton("Launch")
        self.setup_button = QtWidgets.QPushButton("Initial Setup")
        self.world_buttons = []
        self.world_buttons.append(
            self.__create_radio_button("simple", "simple"))
        self.world_buttons.append(self.__create_radio_button("mcity", "mcity"))
        self.world_buttons.append(
            self.__create_radio_button("city sim", "citysim_gazebo7"))
        self.use_gpu_box = QtWidgets.QCheckBox("Use GPU")

        self.world_buttons[0].setChecked(True)
        self.setup_button.clicked.connect(self.__exec_setup_script)
        self.launch_button.setCheckable(True)
        self.launch_button.toggled.connect(self.__exec_simulator)
        self.gazebo_process.finished.connect(self.__simulator_finished)

        world_group = QtWidgets.QGroupBox("World")
        world_group.setLayout(QtWidgets.QVBoxLayout())
        for world_button in self.world_buttons:
            world_group.layout().addWidget(world_button)
        world_group.layout().addStretch()

        config_group = QtWidgets.QGroupBox("Config")
        config_group.setLayout(QtWidgets.QVBoxLayout())
        config_group.layout().addWidget(self.use_gpu_box)
        config_group.layout().addStretch()

        hlayout1 = QtWidgets.QHBoxLayout()
        hlayout1.addStretch()
        hlayout1.addWidget(self.setup_button)

        hlayout2 = QtWidgets.QHBoxLayout()
        hlayout2.addWidget(world_group)
        hlayout2.addWidget(config_group)

        self.setLayout(QtWidgets.QVBoxLayout())
        self.layout().addLayout(hlayout1)
        self.layout().addLayout(hlayout2)
        self.layout().addWidget(self.launch_button)