- updated the App.plot_all() method giving it the possibility to be run as threaded or not
- updated the Tcl command PlotAll to be able to run threaded or not
This commit is contained in:
parent
8a299e8fc8
commit
1b14e9d451
@ -11888,11 +11888,13 @@ class App(QtCore.QObject):
|
|||||||
if silent is False:
|
if silent is False:
|
||||||
self.log.debug(" " + param + " OK!")
|
self.log.debug(" " + param + " OK!")
|
||||||
|
|
||||||
def plot_all(self, zoom=True):
|
def plot_all(self, fit_view=True, use_thread=True):
|
||||||
"""
|
"""
|
||||||
Re-generates all plots from all objects.
|
Re-generates all plots from all objects.
|
||||||
|
|
||||||
:return: None
|
:param fit_view: if True will plot the objects and will adjust the zoom to fit all plotted objects into view
|
||||||
|
:param use_thread: if True will use threading for plotting the objects
|
||||||
|
:return:
|
||||||
"""
|
"""
|
||||||
self.log.debug("Plot_all()")
|
self.log.debug("Plot_all()")
|
||||||
self.inform.emit('[success] %s...' % _("Redrawing all objects"))
|
self.inform.emit('[success] %s...' % _("Redrawing all objects"))
|
||||||
@ -11901,11 +11903,14 @@ class App(QtCore.QObject):
|
|||||||
def worker_task(obj):
|
def worker_task(obj):
|
||||||
with self.proc_container.new("Plotting"):
|
with self.proc_container.new("Plotting"):
|
||||||
obj.plot(kind=self.defaults["cncjob_plot_kind"])
|
obj.plot(kind=self.defaults["cncjob_plot_kind"])
|
||||||
if zoom:
|
if fit_view is True:
|
||||||
self.object_plotted.emit(obj)
|
self.object_plotted.emit(obj)
|
||||||
|
|
||||||
|
if use_thread is True:
|
||||||
# Send to worker
|
# Send to worker
|
||||||
self.worker_task.emit({'fcn': worker_task, 'params': [obj]})
|
self.worker_task.emit({'fcn': worker_task, 'params': [obj]})
|
||||||
|
else:
|
||||||
|
worker_task(obj)
|
||||||
|
|
||||||
def register_folder(self, filename):
|
def register_folder(self, filename):
|
||||||
self.defaults["global_last_folder"] = os.path.split(str(filename))[0]
|
self.defaults["global_last_folder"] = os.path.split(str(filename))[0]
|
||||||
|
@ -15,6 +15,8 @@ CAD program, and create G-Code for Isolation routing.
|
|||||||
- multiple fixes in the Tcl commands (especially regarding the interchange between True/false and 1/0 values)
|
- multiple fixes in the Tcl commands (especially regarding the interchange between True/false and 1/0 values)
|
||||||
- updated the help for all Tcl Commands
|
- updated the help for all Tcl Commands
|
||||||
- in Tcl Shell, the 'help' command will add also a brief description for each command in the list
|
- in Tcl Shell, the 'help' command will add also a brief description for each command in the list
|
||||||
|
- updated the App.plot_all() method giving it the possibility to be run as threaded or not
|
||||||
|
- updated the Tcl command PlotAll to be able to run threaded or not
|
||||||
|
|
||||||
11.04.2020
|
11.04.2020
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ class TclCommandDelete(TclCommand):
|
|||||||
|
|
||||||
# Dictionary of types from Tcl command, needs to be ordered , this is for options like -optionname value
|
# Dictionary of types from Tcl command, needs to be ordered , this is for options like -optionname value
|
||||||
option_types = collections.OrderedDict([
|
option_types = collections.OrderedDict([
|
||||||
('f', bool)
|
('f', str)
|
||||||
])
|
])
|
||||||
|
|
||||||
# array of mandatory options for current Tcl command: required = {'name','outname'}
|
# array of mandatory options for current Tcl command: required = {'name','outname'}
|
||||||
@ -34,7 +34,9 @@ class TclCommandDelete(TclCommand):
|
|||||||
'main': 'Deletes the given object. If no name is given will delete all objects.',
|
'main': 'Deletes the given object. If no name is given will delete all objects.',
|
||||||
'args': collections.OrderedDict([
|
'args': collections.OrderedDict([
|
||||||
('name', 'Name of the Object.'),
|
('name', 'Name of the Object.'),
|
||||||
('f', 'Use this parameter to force deletion.')
|
('f', 'Use this parameter to force deletion.\n'
|
||||||
|
'Can be used without value which will be auto assumed to be True.\n'
|
||||||
|
'Or it can have a value: True (1) or False (0).')
|
||||||
]),
|
]),
|
||||||
'examples': ['del new_geo -f True\n'
|
'examples': ['del new_geo -f True\n'
|
||||||
'delete new_geo -f 1\n'
|
'delete new_geo -f 1\n'
|
||||||
@ -63,7 +65,7 @@ class TclCommandDelete(TclCommand):
|
|||||||
if args['f'] is None:
|
if args['f'] is None:
|
||||||
is_forced = True
|
is_forced = True
|
||||||
else:
|
else:
|
||||||
is_forced = True if eval(str(args['f'])) else False
|
is_forced = True if bool(eval(str(args['f']))) else False
|
||||||
except KeyError:
|
except KeyError:
|
||||||
is_forced = True
|
is_forced = True
|
||||||
|
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
from tclCommands.TclCommand import TclCommand
|
from tclCommands.TclCommand import TclCommandSignaled
|
||||||
|
|
||||||
import collections
|
import collections
|
||||||
|
|
||||||
|
|
||||||
class TclCommandPlotAll(TclCommand):
|
class TclCommandPlotAll(TclCommandSignaled):
|
||||||
"""
|
"""
|
||||||
Tcl shell command to update the plot on the user interface.
|
Tcl shell command to update the plot on the user interface.
|
||||||
|
|
||||||
@ -23,7 +23,7 @@ class TclCommandPlotAll(TclCommand):
|
|||||||
|
|
||||||
# Dictionary of types from Tcl command, needs to be ordered , this is for options like -optionname value
|
# Dictionary of types from Tcl command, needs to be ordered , this is for options like -optionname value
|
||||||
option_types = collections.OrderedDict([
|
option_types = collections.OrderedDict([
|
||||||
|
('use_thread', str)
|
||||||
])
|
])
|
||||||
|
|
||||||
# array of mandatory options for current Tcl command: required = {'name','outname'}
|
# array of mandatory options for current Tcl command: required = {'name','outname'}
|
||||||
@ -33,7 +33,7 @@ class TclCommandPlotAll(TclCommand):
|
|||||||
help = {
|
help = {
|
||||||
'main': "Plots all objects on GUI.",
|
'main': "Plots all objects on GUI.",
|
||||||
'args': collections.OrderedDict([
|
'args': collections.OrderedDict([
|
||||||
|
('use_thread', 'If to use multithreading: True (1) or False (0).')
|
||||||
]),
|
]),
|
||||||
'examples': ['plot_all']
|
'examples': ['plot_all']
|
||||||
}
|
}
|
||||||
@ -45,5 +45,11 @@ class TclCommandPlotAll(TclCommand):
|
|||||||
:param unnamed_args:
|
:param unnamed_args:
|
||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
if 'use_thread' in args:
|
||||||
|
threaded = bool(eval(args['use_thread']))
|
||||||
|
else:
|
||||||
|
threaded = False
|
||||||
|
|
||||||
if self.app.cmd_line_headless != 1:
|
if self.app.cmd_line_headless != 1:
|
||||||
self.app.plot_all()
|
self.app.plot_all(use_thread=threaded)
|
||||||
|
Loading…
Reference in New Issue
Block a user