SebKuzminsky / pycam

Other
338 stars 99 forks source link

Appears to be deleting a model then complaining it can't find it! #205

Open DrMark666 opened 2 years ago

DrMark666 commented 2 years ago

I haven't been using this for long; however, I have processed a few files successfully, and I also have a couple (of STL files) that lock pycam up, I can see errors relating to not finding a model in collections - which I can see it deleting a little earlier. This run, I left for some hours and got a report which says to report it, so here goes. The STL iin use is https://www.thingiverse.com/thing:2519083 if that helps - appears OK & passes checks for slic3r OK - I've rotated it to flat before use, so it's a save from slic3r. & not the original!

I did see a vaguely similar ticket in 2017, but it's not the same.

An unexpected exception occurred: please send the text below to the developers of PyCAM. Thanks a lot! multiprocessing.pool.RemoteTraceback: """ Traceback (most recent call last): File "/usr/lib/python3.8/multiprocessing/pool.py", line 125, in worker result = (True, func(*args, **kwds)) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/PathGenerators/PushCutter.py", line 36, in _process_one_line points = get_free_paths_triangles(models, cutter, p1, p2) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/PathGenerators/init.py", line 81, in get_free_paths_triangles (cl1, d1, cp1) = cutter.intersect(backward, t, start=p1) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Cutters/ToroidalCutter.py", line 271, in intersect (cl_t, d_t, cp_t) = self.intersect_circle_triangle(direction, triangle, start=start) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Cutters/BaseCutter.py", line 129, in intersect_circle_triangle (cl, ccp, cp, d) = self.intersect_circle_plane(direction, triangle, start=start) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Cutters/ToroidalCutter.py", line 208, in intersect_circle_plane cl = psub(cp, psub(ccp, start)) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Geometry/PointUtils.py", line 92, in psub return (a[0] - b[0], a[1] - b[1], a[2] - b[2]) TypeError: 'NoneType' object is not subscriptable """

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Plugins/Tasks.py", line 261, in generate_toolpath if new_toolpath.get_toolpath() is None: File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 292, in wrapped return self.get_cached(inst, args, kwargs, calc_function) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 347, in get_cached cache_item = CacheItem(time.time(), calc_function(inst, *args, kwargs)) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 237, in inner_function result = func(self, *args, *kwargs) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 1465, in get_toolpath toolpath = task.generate_toolpath() File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 292, in wrapped return self.get_cached(inst, args, kwargs, calc_function) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 347, in get_cached cache_item = CacheItem(time.time(), calc_function(inst, args, kwargs)) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 237, in inner_function result = func(self, *args, **kwargs) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 1350, in generate_toolpath moves = path_generator.generate_toolpath( File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/PathGenerators/PushCutter.py", line 77, in generate_toolpath result = self.generate_toolpath_slice(cutter, models, layer_grid, draw_callback, File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/PathGenerators/PushCutter.py", line 127, in generate_toolpath_slice for points in run_in_parallel(_process_one_line, args, callback=progress_counter.update): File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Utils/threading.py", line 647, in run_in_parallel_local for result in imap_func(func, args): File "/usr/lib/python3.8/multiprocessing/pool.py", line 868, in next raise value TypeError: 'NoneType' object is not subscriptable

Storing a state revision (16/20) multiprocessing.pool.RemoteTraceback: """ Traceback (most recent call last): File "/usr/lib/python3.8/multiprocessing/pool.py", line 125, in worker result = (True, func(*args, **kwds)) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/PathGenerators/PushCutter.py", line 36, in _process_one_line points = get_free_paths_triangles(models, cutter, p1, p2) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/PathGenerators/init.py", line 81, in get_free_paths_triangles (cl1, d1, cp1) = cutter.intersect(backward, t, start=p1) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Cutters/ToroidalCutter.py", line 271, in intersect (cl_t, d_t, cp_t) = self.intersect_circle_triangle(direction, triangle, start=start) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Cutters/BaseCutter.py", line 129, in intersect_circle_triangle (cl, ccp, cp, d) = self.intersect_circle_plane(direction, triangle, start=start) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Cutters/ToroidalCutter.py", line 208, in intersect_circle_plane cl = psub(cp, psub(ccp, start)) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Geometry/PointUtils.py", line 92, in psub return (a[0] - b[0], a[1] - b[1], a[2] - b[2]) TypeError: 'NoneType' object is not subscriptable """

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Plugins/OpenGLWindow.py", line 730, in paint self.camera.position_camera() File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Plugins/OpenGLWindow.py", line 884, in position_camera low, high = self._get_low_high_dims() File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Plugins/OpenGLWindow.py", line 768, in _get_low_high_dims self.core.call_chain("get_draw_dimension", low, high) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Utils/events.py", line 266, in call_chain data.func(*args, kwargs) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Plugins/OpenGLViewToolpath.py", line 55, in get_draw_dimension tp = toolpath_dict.get_toolpath() File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 292, in wrapped return self.get_cached(inst, args, kwargs, calc_function) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 347, in get_cached cache_item = CacheItem(time.time(), calc_function(inst, *args, *kwargs)) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 237, in inner_function result = func(self, args, kwargs) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 1465, in get_toolpath toolpath = task.generate_toolpath() File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 292, in wrapped return self.get_cached(inst, args, kwargs, calc_function) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 347, in get_cached cache_item = CacheItem(time.time(), calc_function(inst, *args, *kwargs)) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 237, in inner_function result = func(self, args, **kwargs) File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/workspace/data_models.py", line 1350, in generate_toolpath moves = path_generator.generate_toolpath( File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/PathGenerators/PushCutter.py", line 77, in generate_toolpath result = self.generate_toolpath_slice(cutter, models, layer_grid, draw_callback, File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/PathGenerators/PushCutter.py", line 127, in generate_toolpath_slice for points in run_in_parallel(_process_one_line, args, callback=progress_counter.update): File "/usr/local/lib/python3.8/dist-packages/pycam-0.7.0_pre0.606.g55e3129f-py3.8.egg/pycam/Utils/threading.py", line 647, in run_in_parallel_local for result in imap_func(func, args): File "/usr/lib/python3.8/multiprocessing/pool.py", line 868, in next raise value TypeError: 'NoneType' object is not subscriptable