Ejemplo n.º 1
0
    def _createControls(self, frame):
            
        self.radiusSliderOut = LabelSlider(frame, 'Outer radius', 
                                           from_=0, to=int(self.dim_par/2), 
                                           value=self.outerRadius, step=1, 
                                           callback=lambda a, b, c: self.updateRadius(self.radiusSliderOut, self.radiusSliderIn))
        self.radiusSliderOut.grid(row=0, column=0, padx=5, pady=5) 

        self.radiusSliderIn = LabelSlider(frame, 'Inner radius', 
                                          from_=0, to=int(self.dim_par/2), 
                                          value=self.innerRadius, step=1, 
                                          callback=lambda a, b, c:self.updateRadius(self.radiusSliderOut, self.radiusSliderIn))
        self.radiusSliderIn.grid(row=1, column=0, padx=5, pady=5) 
Ejemplo n.º 2
0
    def _createControls(self, frame):
        frame.columnconfigure(0, weight=1)
        frame.columnconfigure(1, weight=1)
        frame.columnconfigure(2, weight=1)

        self.step = 0.01
        self.freqFrame = ttk.LabelFrame(frame, text="Frequencies")
        self.freqFrame.columnconfigure(0, weight=3)
        self.freqFrame.grid(row=0, column=2, sticky='news')
        self.lfSlider = LabelSlider(
            self.freqFrame,
            'Low freq',
            value=self.lf,
            from_=0.01,
            to=0.5,
            length=178,
            labelWidth=13,
            step=self.step,
            showvalue=0,
            callback=lambda a, b, c: self.updateSliderInnerRadius(),
        )
        self.lfSlider.grid(row=0, column=0, padx=5, pady=5, sticky='news')
        self.lfSlider.highlightLabel()
        self.hfSlider = LabelSlider(
            self.freqFrame,
            'High freq',
            value=self.lf,
            from_=0.01,
            to=0.5,
            length=178,
            labelWidth=13,
            step=self.step,
            showvalue=0,
            callback=lambda a, b, c: self.updateSliderOuterRadius(),
        )
        self.hfSlider.grid(row=1, column=0, padx=5, pady=5, sticky='news')

        # Pack and configure low freq slider
        self.lfVar = tk.StringVar()
        self.lfLabel = tk.Label(self.freqFrame,
                                textvariable=self.lfVar,
                                width=26)
        self.lfLabel.grid(row=0, column=1, sticky='nse', padx=5, pady=5)
        # Pack and configure high freq slider
        self.hfVar = tk.StringVar()
        self.hfLabel = tk.Label(self.freqFrame,
                                textvariable=self.hfVar,
                                width=26)
        self.hfLabel.grid(row=1, column=1, sticky='nse', padx=5, pady=5)
        # Update both mask and sliders with the initial values
        self.manageMaskVals()
Ejemplo n.º 3
0
 def addRadiusBox(self, parent):
     self.radiusSlider = LabelSlider(parent, 'Outer radius (%s)' % self.unit,
                                     from_=0, to=int(self.dim_par/2),
                                     value=self.iniRadius,
                                     step=self.samplingRate,
                                     callback=lambda a, b, c:self.updateRadius())
     self.radiusSlider.grid(row=0, column=0, padx=5, pady=5) 
Ejemplo n.º 4
0
 def addFreqSlider(self, label, value, col):
     slider = LabelSlider(self.freqFrame,
                          label,
                          from_=0,
                          to=0.5,
                          value=value,
                          callback=lambda a, b, c: self.updateFreqRing())
     slider.grid(row=0, column=col, padx=5, pady=5)
     return slider
Ejemplo n.º 5
0
 def addFreqSlider(self, label, value, col):
     slider = LabelSlider(self.freqFrame,
                          label,
                          from_=0,
                          to=0.5,
                          value=value,
                          callback=None)
     slider.grid(row=0, column=col, padx=5, pady=5)
     return slider
Ejemplo n.º 6
0
 def addFreqSlider(self, label, value, col):
     fromValue = self.sliFrom
     toValue = self.sliTo
     if self.unit == UNIT_ANGSTROM:
         fromValue = self.sliTo
         toValue = self.sliFrom
     slider = LabelSlider(self.freqFrame, label, from_=fromValue, to=toValue,
                          step=self.step , value=value,
                          callback=lambda a, b, c:self.updateFilteredImage())
     slider.grid(row=0, column=col, padx=5, pady=5)
     return slider
Ejemplo n.º 7
0
    def body(self, bodyFrame):
        figFrame = FigureFrame(bodyFrame, figsize=(18, 9))
        figFrame.grid(row=0, column=0, columnspan=5)

        #self._runBeforePreWhitening(self.prot)
        dialog.FlashMessage(self.form.root,
                            "Running Pre-Whitening tool...",
                            func=self._runBeforePreWhitening)
        results = self.results

        self.figure = figFrame.getFigure()  #plt.figure(figsize=(18, 9))
        self._runPreWhitening(results['newElbowAngstrom'],
                              results['newRampWeight'])

        #bodyFrame.config()
        bodyFrame.columnconfigure(0, weight=1)
        bodyFrame.rowconfigure(0, weight=1)

        controlsFrame = tk.Frame(bodyFrame)
        controlsFrame.grid(row=1, column=0)

        self.elbowSlider = LabelSlider(controlsFrame,
                                       "Angstroms",
                                       from_=2.1 * results['vxSize'],
                                       to=100,
                                       value=results['newElbowAngstrom'])
        self.elbowSlider.grid(row=1, column=0, padx=5, pady=5)

        self.rampSlider = LabelSlider(controlsFrame,
                                      "Ramp weight",
                                      from_=0.0,
                                      to=1.,
                                      value=results['newRampWeight'])
        self.rampSlider.grid(row=1, column=1, padx=5, pady=5)

        self.updateBtn = HotButton(
            controlsFrame,
            "   Update   ",
            command=self._onUpdate,
            tooltip="Update plots with new pre-whitening parameters.")
        self.updateBtn.grid(row=1, column=2, padx=10, pady=5)
Ejemplo n.º 8
0
    def _createControls(self, frame):
        self.step = 1
        to = int(self.dim_par / 2)
        self.radiusSliderOut = LabelSlider(
            frame,
            'Outer radius',
            from_=1,
            to=to,
            value=self.outerRadius,
            step=self.step,
            callback=lambda a, b, c: self.updateSliderOuterRadius(),
            length=150,
            showvalue=0)
        self.radiusSliderOut.highlightLabel()
        self.orVar = tk.StringVar()
        self.orLabel = tk.Label(frame, textvariable=self.orVar, width=20)

        self.radiusSliderIn = LabelSlider(
            frame,
            'Inner radius',
            from_=1,
            to=to,
            value=self.innerRadius,
            step=self.step,
            callback=lambda a, b, c: self.updateSliderInnerRadius(),
            length=150,
            showvalue=0)
        self.irVar = tk.StringVar()
        self.irLabel = tk.Label(frame, textvariable=self.irVar, width=20)
        # Pack and configure outer radius slider
        self.radiusSliderOut.grid(row=0, column=0, sticky='NEWS')
        self.radiusSliderOut.columnconfigure(0, weight=1)
        self.orLabel.grid(row=0, column=1, sticky='NSE', padx=5, pady=5)
        self.orLabel.columnconfigure(0, weight=1)
        # Pack and configure inner radius slider
        self.radiusSliderIn.grid(row=1, column=0, sticky='NEWS')
        self.radiusSliderIn.columnconfigure(0, weight=1)
        self.irLabel.grid(row=1, column=1, sticky='NSE', padx=5, pady=5)
        self.irLabel.columnconfigure(0, weight=1)
        # Update both mask and sliders with the initial values
        self.manageMaskVals()
Ejemplo n.º 9
0
 def addRadiusBox(self, parent):
     self.radiusSlider = LabelSlider(
         parent,
         'Mask radius',
         from_=1,
         to=int(self.dim_par / 2),
         value=self.iniRadius,
         step=1,
         length=150,
         showvalue=0,
         callback=lambda a, b, c: self.updateSliderRadius())
     self.radiusSlider.grid(row=0, column=0, sticky='NEWS')