Wed 28 Aug 21:38:52 CEST 2024
This commit is contained in:
parent
7648bd637f
commit
a216889a5b
76
src/SimNDT/gui/threePhaseModelDryCaseController.py
Normal file
76
src/SimNDT/gui/threePhaseModelDryCaseController.py
Normal file
|
@ -0,0 +1,76 @@
|
||||||
|
import numpy as np
|
||||||
|
|
||||||
|
from PySide.QtGui import *
|
||||||
|
|
||||||
|
from SimNDT.gui.Warnings import WarningParms
|
||||||
|
from SimNDT.gui.ui_threephasemodeldrycase import Ui_threePhaseModelDryCaseDialog
|
||||||
|
|
||||||
|
from SimNDT.core.concreteModel import ThreePhaseModel, Granulometry
|
||||||
|
from SimNDT.core.geometryObjects import Concrete3Phase
|
||||||
|
|
||||||
|
|
||||||
|
class ThreePhaseModelDryCaseDialog(QDialog, Ui_threePhaseModelDryCaseDialog):
|
||||||
|
def __init__(self, parent=None, scenario=None, SimNDT_ConcreteMicrostructure=None):
|
||||||
|
super(ThreePhaseModelDryCaseDialog, self).__init__(parent)
|
||||||
|
self.setupUi(self)
|
||||||
|
self.scenario = scenario
|
||||||
|
|
||||||
|
self.progressBar.setVisible(False)
|
||||||
|
|
||||||
|
if SimNDT_ConcreteMicrostructure:
|
||||||
|
self.fractionDoubleSpinBox.setValue(SimNDT_ConcreteMicrostructure.Fraction)
|
||||||
|
self.labelSpinBox.setValue(SimNDT_ConcreteMicrostructure.LabelAggregate)
|
||||||
|
self.minDiameterDoubleSpinBox.setValue(SimNDT_ConcreteMicrostructure.MinDiameter)
|
||||||
|
self.maxDiameterDoubleSpinBox.setValue(SimNDT_ConcreteMicrostructure.MaxDiameter)
|
||||||
|
self.gradingDoubleSpinBox.setValue(SimNDT_ConcreteMicrostructure.Grading)
|
||||||
|
self.minAspectRatioDoubleSpinBox.setValue(SimNDT_ConcreteMicrostructure.MinAspectRatio)
|
||||||
|
self.maxAspectRatioDoubleSpinBox.setValue(SimNDT_ConcreteMicrostructure.MaxAspectRatio)
|
||||||
|
|
||||||
|
self.fractionDoubleSpinBox_2.setValue(SimNDT_ConcreteMicrostructure.FractionAir)
|
||||||
|
self.labelSpinBox_2.setValue(SimNDT_ConcreteMicrostructure.LabelAir)
|
||||||
|
self.minDiameterDoubleSpinBox_2.setValue(SimNDT_ConcreteMicrostructure.MinDiameterAir)
|
||||||
|
self.maxDiameterDoubleSpinBox_2.setValue(SimNDT_ConcreteMicrostructure.MaxDiameterAir)
|
||||||
|
self.gradingDoubleSpinBox_2.setValue(SimNDT_ConcreteMicrostructure.GradingAir)
|
||||||
|
|
||||||
|
def accept(self):
|
||||||
|
|
||||||
|
try:
|
||||||
|
fraction = self.fractionDoubleSpinBox.value()
|
||||||
|
label = self.labelSpinBox.value()
|
||||||
|
|
||||||
|
minD = self.minDiameterDoubleSpinBox.value() * 1e-3
|
||||||
|
maxD = self.maxDiameterDoubleSpinBox.value() * 1e-3
|
||||||
|
|
||||||
|
nG = self.gradingDoubleSpinBox.value()
|
||||||
|
minAR = self.minAspectRatioDoubleSpinBox.value()
|
||||||
|
maxAR = self.maxAspectRatioDoubleSpinBox.value()
|
||||||
|
|
||||||
|
fraction2 = self.fractionDoubleSpinBox_2.value()
|
||||||
|
label2 = self.labelSpinBox_2.value()
|
||||||
|
|
||||||
|
minD2 = self.minDiameterDoubleSpinBox_2.value() * 1e-3
|
||||||
|
maxD2 = self.maxDiameterDoubleSpinBox_2.value() * 1e-3
|
||||||
|
|
||||||
|
nG2 = self.gradingDoubleSpinBox_2.value()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
except:
|
||||||
|
msgBox = WarningParms()
|
||||||
|
msgBox.exec_()
|
||||||
|
|
||||||
|
MI, NI = np.shape(self.scenario.I)
|
||||||
|
Pixel_mm = self.scenario.Pixel_mm
|
||||||
|
|
||||||
|
granulometry1 = Granulometry(MI, NI, Pixel_mm, minD, maxD, nG, minAR, maxAR, fraction, label)
|
||||||
|
granulometry2 = Granulometry(MI, NI, Pixel_mm, minD2, maxD2, nG2, 0, 1, fraction2, label2)
|
||||||
|
threePhaseModel = ThreePhaseModel(MI, NI, granulometry1, granulometry2, self.scenario.Label)
|
||||||
|
self.image = threePhaseModel.compute(self.progressBar)
|
||||||
|
|
||||||
|
self.concrete3PhaseObject = Concrete3Phase(Fraction=fraction, LabelAggregate=label, MinDiameter=minD * 1e3,
|
||||||
|
MaxDiameter=maxD * 1e3,
|
||||||
|
Grading=nG, MinAspectRatio=minAR, MaxAspectRatio=maxAR,
|
||||||
|
FractionsAir=fraction2, LabelAir=label2, MinDiameterAir=minD2 * 1e3,
|
||||||
|
MaxDiameterAir=maxD2 * 1e3, GradingAir=nG2)
|
||||||
|
|
||||||
|
QDialog.accept(self)
|
Loading…
Reference in New Issue
Block a user