def __init__(self, *args, **kwargs): super(predictionPageLeftNavigationBar,self).__init__() self.path = get_dir_path() self.setMaximumWidth(250) self.setMinimumWidth(250) self.setStyleSheet( """ QGroupBox { background: qlineargradient(x1: 1, y1: 0, x2:1, y2: 1, stop: 0 #E6DADA, stop: 1.0 #274046); border-style:solid; border-color:gray; border-width:2px; margin-top:1em; } QGroupBox QGroupBox { background-color: green; } QGroupBox::title { subcontrol-origin: padding; subcontrol-position: top; background: transparent; margin-top: -2.5em; color:blue; } """ ) self.setTitle("Navigation Bar") self.initUI()
def __init__(self, userIndex, *args, **kwargs): super().__init__() self.dir_path = get_dir_path() self.userIndex = userIndex self.databasePath = "{}Databases/user{}.db".format( self.dir_path, hex(self.userIndex)[2:]) self.dbObj = sql_functions( self.databasePath ) #Kullanıcının günlük aktivite bilgilerinin saklandığı veritabanına bağlanılır self.rangeCount = 0 self.last = None self.ranges = list() self.jobNames = list() self.data_dict = None self.dataTypes = [(str, "str"), (str, "str"), (int, "int"), (int, "int"), (int, "int"), (int, "int")] self.predictionVariables = [ "Aktivite Adı", "İsteklilik", "Yorgunluk", "Moral", "Son Verim" ] self.dayVariables = [ "Date", "TimeRange", "Willingness", "Fatigue", "Morale", "Efficiency" ] self.sleepVariables = ["Date", "SleepRange", "SleepEfficiency"] self.newDateDBConfigurationText = "('Job','TEXT'),('TimeRange','TEXT'),('Willingness','INT'), ('Fatigue','INT'), ('Morale','INT'),('Efficiency','INT')" self.setWindowTitle("Proje") self.initUI()
def __init__(self, UserIndex, *args, **kwargs): super().__init__() self.path = get_dir_path() self.UserIndex = UserIndex __usersDB = sql_functions("{}Databases/users.db".format(self.path)) __userData = __usersDB.get_row_with_ID("Users", self.UserIndex) __usersDB.disconnect_from_database() self.installEventFilter(self) self.setWindowTitle("Profil Sayfası") self.setMaximumWidth(557) self.registrationDate = __userData[0] self.email = __userData[1] self.nickname = __userData[2] self.name = __userData[3] self.surname = __userData[4] self.__passwordHashed = __userData[5] #Gizlilik amaçlı self.formatImagePath = "{}Images/userImages/genderlessUser.png".format( self.path) self.userImagePath = "{}Images/userImages/user{}.png".format( self.path, hex(self.UserIndex)[2:]) self.psudoImagePath = "" self.setStyleSheet(""" background-color: #C6E2FF; """) self.initUI()
def __init__(self, *args, **kwargs): super().__init__() self.setWindowTitle("Kullanıcı Girişi") self.dir_path = get_dir_path() self.userDatabaseControl() self.userDB = sql_functions("{}Databases/users.db".format( self.dir_path)) #Kullanıcı veritabanı ile bağlantının kurulması self.setMaximumSize(356, 206) #Ekran boyutları self.initUI() #Arayüz tasarım kodlarının çalıştırılması
def __init__(self, *args, **kwargs): super().__init__() self.dir_path = get_dir_path() # Ana kod dizinin bulunması self.userDB = sql_functions("{}Databases/users.db".format( self.dir_path)) # Kullanıcı veritabanına bağlanılır self.setWindowTitle("Kayıt Formu") # Pencere başlığı # Ekran boyutları self.setMinimumSize(343, 316) self.setMaximumSize(343, 316) self.initUI() # Arayüz kodlarının çalıştırılması
def __init__(self, userIndex, *args, **kwargs): self.userIndex = userIndex self.path = get_dir_path() self.objectFolderPath = "{}Objects/".format(self.path) self.userObjectFolderPath = "{}Objects/user{}/".format( self.path, hex(self.userIndex)[2:]) self.userProgressionPercentFilePath = "{}progressionPercentage.pkl".format( self.userObjectFolderPath) self.userClassificationObjectFolderPath = "{}ClassificationObjects/".format( self.userObjectFolderPath) self.classificationObjectPath = "{}generalSituationEstimator.pkl".format( self.userClassificationObjectFolderPath) self.userRegressionObjectFolderPath = "{}RegressionObjects/".format( self.userObjectFolderPath) self.regressionObjectPath = "{}regressionsDict.pkl".format( self.userRegressionObjectFolderPath) self.createObjectPath()
#Arayüz çalıştırıcısı modülü from PyQt5.QtWidgets import QApplication from PyQt5.QtGui import QIcon #Arayüz modülü from userLogin import userLoginForm from dirPath import get_dir_path #Sistem modülü import sys if __name__ == "__main__": # Bu kod parçası yazılımın çalıştırıcı kod parçasıdır. # Bu Python dosyası çalıştırılıra yazılım sorunsuzca çalışacaktır. # Not Bütün kodlar aynı dizinde ve Images/ dizinide bu dizin altında olmalıdır. # Aksi takdirde hata verebilir. app = QApplication(sys.argv) obj = userLoginForm() obj.setWindowIcon(QIcon(get_dir_path()+"Images/prediction.png")) obj.show() sys.exit(app.exec_())
def usersConf(): # Bu fonksiyon bir nevi setup fonksiyonudur.UserLogin ilk çalıştığında çalışır # ve kullanıcıların kayıt bilgilerinin saklanacağı veritabanının konfigürasyonu yapılır. mainDirPath = get_dir_path() userDb = sql_functions("{}Databases/users.db".format(mainDirPath)) userDb.create_table("Users",("Date","TEXT"),("Email","TEXT"),("Username","TEXT"),("Name","TEXT"),("Surname","TEXT"),("Password","TEXT"))
def __init__(self,userIndex,calculate = False,data_dict = None,toReset = False,*args, **kwargs): self.userIndex = userIndex self.returnValue = False self.resetResult = False self.objProcessor = objectProcessor(userIndex = self.userIndex) ###########################3 #Paths self.path = get_dir_path() self.userObjectFolderPath = "{}Objects/user{}/".format(self.path,hex(self.userIndex)[2:]) self.userProgressionPercentFilePath = "{}progressionPercentage.pkl".format(self.userObjectFolderPath) self.userClassificationObjectFolderPath = "{}ClassificationObjects/".format(self.userObjectFolderPath) self.classificationObjectPath = "{}generalSituationEstimator.pkl".format(self.userClassificationObjectFolderPath) self.userRegressionObjectFolderPath = "{}RegressionObjects/".format(self.userObjectFolderPath) self.regressionObjectPath = "{}regressionsDict.pkl".format(self.userRegressionObjectFolderPath) ###########################3 if toReset: self.resetResult = self.objProcessor.resetUserData() else: if calculate and isinstance(data_dict,dict):#Tahmin yapma dururmu self.data_dict = data_dict# Bu bir problem ya da gereksiz self.predictable_data_dict = self.findPredictableFrames() if self.predictable_data_dict != dict(): # Şartları sağlayıp sağlamadığını kontrol eder. if not self.objProcessor.userOBJFolder(control=True):#Obje dizini olmayanlar self.objProcessor.userOBJFolder(create=True) else: #Burada bir uyarı ekranı yap.Çünkü objeler yeniden tanımlanır.Hatta bir progress bar yap. self.objProcessor.userOBJFolder(create=True,query=False) wid = ProgressWidget() wid.show() wid.addProgression(10,"[+] Verim tahmini algoritmaları için uygun veri oluşturuldu.") #self.datasetAdjusterWithPCA() # Verimsizlik sağlar self.generalClassificationDataset = self.generalSituationsDataset print(self.generalClassificationDataset) wid.addProgression(10,"[+] Genel aktivite tahmini algoritması için uygun veri oluşturuldu.") self.algorithmDict = self.findBestRegression wid.addProgression(40,"[+] Şartları sağlayan aktivitelerin verim tahmin algoritmaları oluşturuldu.") self.classificationEstimator = self.findBestClassification wid.addProgression(30,"[+] Genel aktivite tahmini algoritması oluşturuldu.") self.objProcessor.saveObjects(self.classificationEstimator,self.algorithmDict) wid.addProgression(10,"[+] Oluşturulan algoritma objeleri kaydedildi.") else : #Eğer tahmin şartları sağlanmamış ise pass else:#Tahmin isteme durumu if self.objProcessor.userOBJFolder(control=True): self.classificationEstimator,self.algorithmDict = self.objProcessor.loadObjects() self.returnValue = True else: #Eğer ki daha tahmin algoritması çalışmamış ve objeler oluşmamış ise self.returnValue = False