import sys import os from qtvcp.core import Status, Path from qtvcp.lib.qt_vismach.qt_vismach import * from PyQt5 import QtCore, QtWidgets, QtGui import subprocess import time import hal STATUS = Status() PATH = Path() if (hal.component_exists("vismach")) == False: c = hal.component("vismach") c.newpin("mat_X_min", hal.HAL_FLOAT, hal.HAL_IN) c.newpin("mat_Y_min", hal.HAL_FLOAT, hal.HAL_IN) c.newpin("mat_Z_min", hal.HAL_FLOAT, hal.HAL_IN) c.newpin("mat_X", hal.HAL_FLOAT, hal.HAL_IN) c.newpin("mat_Y", hal.HAL_FLOAT, hal.HAL_IN) c.newpin("mat_Z", hal.HAL_FLOAT, hal.HAL_IN) c.newpin("mat_X_max", hal.HAL_FLOAT, hal.HAL_IN) c.newpin("mat_Y_max", hal.HAL_FLOAT, hal.HAL_IN) c.newpin("mat_Z_max", hal.HAL_FLOAT, hal.HAL_IN) c.newpin("hide-chuck", hal.HAL_BIT, hal.HAL_IN) c.newpin("os3", hal.HAL_BIT, hal.HAL_IN) c.ready() STATUS.connect('graphics-gcode-properties',lambda w, d: update_gcode_properties(d)) def update_gcode_properties(props): if props != None: print ("update update_gcode") property_names = { 'x': "X bounds:",'x_zero_rxy':'X @ Zero Rotation:', 'y': "Y bounds:",'y_zero_rxy':'Y @ Zero Rotation:', 'z': "Z bounds:",'z_zero_rxy':'Z @ Zero Rotation:', 'a': "A bounds:", 'b': "B bounds:", } smallmess = mess = '' X_poz_min = ((props.get('x').split())[0]) Y_poz_min = ((props.get('y').split())[0]) Z_poz_min = ((props.get('z').split())[0]) X_poz = ((props.get('x').split())[4]) Y_poz = ((props.get('y').split())[4]) Z_poz = ((props.get('z').split())[4]) X_poz_max = ((props.get('x').split())[2]) Y_poz_max = ((props.get('y').split())[2]) Z_poz_max = ((props.get('z').split())[2]) print ("X_poz_min", X_poz_min," X_poz_max", X_poz_max," X_wym", X_poz) print ("Y_poz_min", Y_poz_min," Y_poz_max", Y_poz_max," Y_wym", Y_poz) print ("Z_poz_min", Z_poz_min," Z_poz_max", Z_poz_max," Z_wym", Z_poz) cmd = ("halcmd setp vismach.mat_X_min " + X_poz_min) subprocess.check_output(cmd, shell = True) cmd = ("halcmd setp vismach.mat_X " + X_poz) subprocess.check_output(cmd, shell = True) cmd = ("halcmd setp vismach.mat_X_max " + X_poz_max) subprocess.check_output(cmd, shell = True) cmd = ("halcmd setp vismach.mat_Y_min " + Y_poz_min) subprocess.check_output(cmd, shell = True) cmd = ("halcmd setp vismach.mat_Y " + Y_poz) subprocess.check_output(cmd, shell = True) cmd = ("halcmd setp vismach.mat_Y_max " + Y_poz_max) subprocess.check_output(cmd, shell = True) cmd = ("halcmd setp vismach.mat_Z_min " + Z_poz_min) subprocess.check_output(cmd, shell = True) cmd = ("halcmd setp vismach.mat_Z " + Z_poz) subprocess.check_output(cmd, shell = True) cmd = ("halcmd setp vismach.mat_Z_max " + Z_poz_max) subprocess.check_output(cmd, shell = True)