meerk40t 0.9.7910__py2.py3-none-any.whl → 0.9.7930__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -673,8 +673,7 @@ def init_commands(kernel):
673
673
  offset = 0
674
674
  else:
675
675
  try:
676
- ll = Length(offset)
677
- offset = float(ll)
676
+ offset = float(Length(offset, settings=self.length_settings()))
678
677
  except ValueError:
679
678
  offset = 0
680
679
  if offset == 0.0:
@@ -769,8 +768,7 @@ def init_commands(kernel):
769
768
  offset = 0
770
769
  else:
771
770
  try:
772
- ll = Length(offset)
773
- offset = float(ll)
771
+ offset = float(Length(offset, settings=self.length_settings()))
774
772
  except ValueError:
775
773
  offset = 0
776
774
  if offset == 0.0:
@@ -74,10 +74,10 @@ def init_commands(kernel):
74
74
  type=int,
75
75
  help=_("How many placements on the Y-Axis?\n(0 = as many as fit on the bed)"),
76
76
  )
77
- @self.console_option("dx", "m", type=Length, help=_("Gap in x-direction"))
78
- @self.console_option("dy", "n", type=Length, help=_("Gap in y-direction"))
79
- @self.console_argument("x", type=Length, help=_("x coord"))
80
- @self.console_argument("y", type=Length, help=_("y coord"))
77
+ @self.console_option("dx", "m", type=str, help=_("Gap in x-direction"))
78
+ @self.console_option("dy", "n", type=str, help=_("Gap in y-direction"))
79
+ @self.console_argument("x", type=str, help=_("x coord"))
80
+ @self.console_argument("y", type=str, help=_("y coord"))
81
81
  @self.console_command(
82
82
  "placement",
83
83
  help=_("Adds a placement = a fixed job start position"),
@@ -100,36 +100,31 @@ def init_commands(kernel):
100
100
  loops=None,
101
101
  **kwargs,
102
102
  ):
103
+ try:
104
+ # fmt: off
105
+ lensett = self.length_settings()
106
+ x = 0 if x is None else float(Length(x, relative_length=self.device.view.width, settings=lensett))
107
+ y = 0 if y is None else float(Length(y, relative_length=self.device.view.height, settings=lensett))
108
+ dx = 0 if dx is None else float(Length(dx, relative_length=self.device.view.width, settings=lensett))
109
+ dy = 0 if dy is None else float(Length(dy, relative_length=self.device.view.height, settings=lensett))
110
+ # fmt: on
111
+ except ValueError:
112
+ channel(_("Invalid length value."))
113
+ return
103
114
  if loops is None:
104
115
  loops = 1
105
116
  if corner is None:
106
117
  corner = 0
107
118
  if rotation is None:
108
119
  rotation = 0
109
- if x is None:
110
- x = 0
111
- if y is None:
112
- y = x
113
120
  if nx is None:
114
121
  nx = 1
115
122
  if ny is None:
116
123
  ny = 1
117
- if dx is None:
118
- dx = 0
124
+ if dx == 0:
119
125
  nx = 1
120
- if dy is None:
121
- dy = 0
126
+ if dy == 0:
122
127
  ny = 1
123
- try:
124
- x = Length(x)
125
- y = Length(y)
126
- len_dx = Length(dx)
127
- dx_val = float(len_dx)
128
- len_dy = Length(dy)
129
- dy_val = float(len_dy)
130
- except ValueError:
131
- channel(_("Invalid values given"))
132
- return
133
128
  if nx < 0 or ny < 0:
134
129
  channel(_("Invalid values for nx/ny provided"))
135
130
  return
@@ -342,7 +342,7 @@ def init_commands(kernel):
342
342
  action="store_true",
343
343
  help=_("Preserve intermediary objects"),
344
344
  )
345
- @self.console_argument("offset", type=Length, help="Offset distance")
345
+ @self.console_argument("offset", type=str, help="Offset distance")
346
346
  @self.console_command(
347
347
  "outline",
348
348
  help=_("Create an outline path at the inner and outer side of a path"),
@@ -436,10 +436,16 @@ def init_commands(kernel):
436
436
  invert = False
437
437
  if blacklevel is None:
438
438
  blacklevel = 0.5
439
- if offset is None:
440
- offset = self.length("5mm")
441
- else:
442
- offset = self.length(offset)
439
+ try:
440
+ # fmt: off
441
+ lensett = self.length_settings()
442
+ if offset is None:
443
+ offset = "5mm"
444
+ offset = float(Length(offset, relative_length=self.device.view.width, settings=lensett))
445
+ # fmt: on
446
+ except ValueError:
447
+ channel(_("Invalid length value."))
448
+ return
443
449
  if steps is None or steps < 1:
444
450
  steps = 1
445
451
  if outer is None:
@@ -718,7 +724,9 @@ def init_commands(kernel):
718
724
  input_type=(None, "elements"),
719
725
  output_type="elements",
720
726
  )
721
- def keyhole_elements(command, channel, _, refid=None, nohide=None, data=None, post=None, **kwargs):
727
+ def keyhole_elements(
728
+ command, channel, _, refid=None, nohide=None, data=None, post=None, **kwargs
729
+ ):
722
730
  if data is None:
723
731
  data = list(self.elems(emphasized=True))
724
732
 
@@ -727,7 +735,12 @@ def init_commands(kernel):
727
735
  if refid is None:
728
736
  # We do look for the very first occurence of a path like object and take this...
729
737
  for node in data:
730
- if node.id is not None and node.type in ("elem path", "elem ellipse", "elem rect", "elem polyline"):
738
+ if node.id is not None and node.type in (
739
+ "elem path",
740
+ "elem ellipse",
741
+ "elem rect",
742
+ "elem polyline",
743
+ ):
731
744
  refid = node.id
732
745
  break
733
746
 
@@ -739,9 +752,13 @@ def init_commands(kernel):
739
752
  channel(_("A node with such an ID couldn't be found"))
740
753
  return
741
754
  if not hasattr(refnode, "as_geometry"):
742
- channel(_("This node can not act as a keyhole: {nodetype}").format(nodetype=refnode.type))
755
+ channel(
756
+ _("This node can not act as a keyhole: {nodetype}").format(
757
+ nodetype=refnode.type
758
+ )
759
+ )
743
760
  return
744
- images = list ( (e for e in data if e.type == "elem image") )
761
+ images = list((e for e in data if e.type == "elem image"))
745
762
  if len(images) == 0:
746
763
  channel(_("No images selected/provided"))
747
764
  return
@@ -765,11 +782,13 @@ def init_commands(kernel):
765
782
  input_type=(None, "elements"),
766
783
  output_type="elements",
767
784
  )
768
- def remove_keyhole_elements(command, channel, _, refid=None, nohide=None, data=None, post=None, **kwargs):
785
+ def remove_keyhole_elements(
786
+ command, channel, _, refid=None, nohide=None, data=None, post=None, **kwargs
787
+ ):
769
788
  if data is None:
770
789
  data = list(self.elems(emphasized=True))
771
790
 
772
- images = list ( (e for e in data if e.type == "elem image") )
791
+ images = list((e for e in data if e.type == "elem image"))
773
792
  if len(images) == 0:
774
793
  channel(_("No images selected/provided"))
775
794
  return