Esempio n. 1
0
    def prikazi_grafove(self, rezultat, slopeData):
        """
        Metoda za crtanje grafova, ulazni parametri su frejm rezultata umjeravanja
        i mapa sa podacima za 'slope', 'offset', 'prilagodbaA', 'prilagodbaB'
        """
        self.crefCanvas.clear_graf()
        self.mjerenjaCanvas.clear_graf()
        #dohvati rezultat umjeravanja:
        testLinearnosti = self.datastore.get_checkLinearnost()
        tocke = self.datastore.get_tocke(self.plin)
        frejm = self.datastore.tabData[self.plin].get_frejm()
        if self.plin in frejm.columns:
            x = list(rezultat.loc[:, 'cref'])
            y = list(rezultat.loc[:, 'c'])
            if testLinearnosti:
                slope = slopeData['slope']
                offset = slopeData['offset']
                self.crefCanvas.set_slope_offset(slope, offset)
            else:
                self.crefCanvas.set_slope_offset(None, None)
            self.crefCanvas.crtaj(x, y)

            frejm = frejm.copy()
            frejm = frejm.loc[:, self.plin]
            if testLinearnosti:
                self.mjerenjaCanvas.crtaj(frejm, tocke)
            else:
                z, s = pomocni.pronadji_zero_span_tocke(tocke)
                zs = [z, s]
                self.mjerenjaCanvas.crtaj(frejm, zs)
Esempio n. 2
0
    def postavi_predlozene_pragove(self, x):
        """
        Metoda postavlja pragove iz trenutnih podataka iz funnkcije prilagodbe prema formuli:

        rise = (span * 0.9 - B) / A
        fall = (span * 0.1 - B) / A

        rise : gornji prag
        fall : donji prag
        span : trenutni opseg mjerenja
        B : prilagodbaB (odsjecak na y osi pravca kroz tocku zero i tocku span)
        A : prilagodbaA (nagib pravca kroz tocku zero i tocku span)
        """
        try:
            rezultatiUmjeravanja = self.datastore.tabData[self.naziv].get_rezultat()
            prilagodbaA = rezultatiUmjeravanja['prilagodba']['prilagodbaA']
            prilagodbaB = rezultatiUmjeravanja['prilagodba']['prilagodbaB']
            #opseg spana...
            tocke = self.datastore.tabData[self.naziv].get_tocke()
            zeroTocka, spanTocka = pomocni.pronadji_zero_span_tocke(tocke)
            spanOpseg = self.datastore.get_izabraniOpseg() * spanTocka.get_crefFaktor()
            print(spanOpseg)
            r = (spanOpseg*0.9 - prilagodbaB) / prilagodbaA
            f = (spanOpseg*0.1 - prilagodbaB) / prilagodbaA
            self.doubleSpinBoxHigh.setValue(r)
            self.doubleSpinBoxLow.setValue(f)
        except Exception as err:
            logging.error(str(err), exc_info=True)