[Problem] CAM - EdgeWalker has no edges to load
Is there an existing issue for this?
- [X] I have searched the existing issues
Problem description
Hi, i've created a flat panel from an imported SVG file and add a path job. I will always get an error on Poket operation on a hole and I don't know why.
09:32:28 Part::Refine: Link(s) to object(s) 'Extrude' go out of the allowed scope 'Extrude017'. Instead, the linked object(s) reside within 'Part'. 09:34:42 Traceback (most recent call last): File "C:\Program Files\FreeCAD 0.21\Mod\Path\PathScripts\PathUtils.py", line 70, in new_function res = function(*args, **kwargs) File "C:\Program Files\FreeCAD 0.21\Mod\Path\Path\Op\Base.py", line 817, in execute result = self.opExecute(obj) File "C:\Program Files\FreeCAD 0.21\Mod\Path\Path\Op\Area.py", line 366, in opExecute for shp in self.areaOpShapes(obj): File "C:\Program Files\FreeCAD 0.21\Mod\Path\Path\Op\PocketShape.py", line 126, in areaOpShapes self.vWires = [ File "C:\Program Files\FreeCAD 0.21\Mod\Path\Path\Op\PocketShape.py", line 127, in
TechDraw.findShapeOutline(shape, 1, FreeCAD.Vector(0, 0, 1)) <class 'ValueError'>: EdgeWalker has no edges to load
09:34:42 Recompute failed!
I've spend hours to get it working but no success. The only way is to export it as *.stl and import it but than all circles are segmented. I've created a "simpe copy","refined copy", delete all jobs and create new, export as step and import it again.
I've created a Post in the Freecad Forum and the Users thinks that it could be a bug and suggested me to create this ticket.
Full version info
[code]
OS: Windows 11 build 22631
Word size of FreeCAD: 64-bit
Version: 0.21.1.33668 +26 (Git)
Build type: Release
Branch: (HEAD detached at 0.21.1)
Hash: f6708547a9bb3f71a4aaade12109f511a72c207c
Python 3.8.10, Qt 5.15.2, Coin 4.0.1, Vtk 8.2.0, OCC 7.6.3
Locale: German/Germany (de_DE)
Installed mods:
* A2plus 0.4.60n
* freecad.gears 1.0.0
[/code]
Subproject(s) affected?
CAM
Anything else?
~I've uploaded an Image, the FreeCad file and the ToolBit file to my share here~
Code of Conduct
- [X] I agree to follow this project's Code of Conduct
could you try this with the current weekly builds as there were some changes to the PathWB: https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds
could you try this with the current weekly builds as there were some changes to the PathWB: https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds
I've tested this build but got the same result
Hi @maxwxyz, any idea who's working on CAM wb these days beside sliptonic ?
no. @djmdjm @davidgilkaufman did a few PRs recently.
I am struggling to reproduce the bug -- I've got some guesses, but if they are not relevant then I need more precise instructions to reproduce. Here's what I've done:
- Start with the model attached in the forum
- Note that this model already has errors in it. To avoid confusing these old errors with errors on my changes I deleted Body_in. I also hid Body_out and operations in Job_out to avoid confusion.
- Following/interpretting instructions from jescombe, I copied BaseFeature from Body_out (just BaseFeature -- in the Object Selection/dependencies dialog I unchecked Model_top_mir3) and pasted a copy. Make it visible 3b. Same instructions -- now make a new Path Job from that BaseFeature, with default settings 3c. Same instructions -- create an adaptive operation in that job, select and add the face as Base Geometry, enable checkbox for Use Outline, Ok. We have now recreated the adaptive operation of interest and want to add extensions 3d. Same instructions -- reopen the dialog for that adaptive, Extensions -> Enable Extensions; check the boxes for Edge158 and Edge162.
The instructions here seem to successfully recreate the extensions shown in jescombe's screenshot, which I think is what Siltti is looking for. In this process I did not generate any EdgeWalker errors.
I did some additional messing around and managed to produce "EdgeWalker has no edges to load" errors by deleting geometry items used by operations, but I don't think that is a bug. I'd agree that the error could be a lot clearer, but it is correct for those operations to produce an error in this situation. This is my best guess for how @gagagu gets these errors, but it's hard to be sure.
As an additional test, I tried creating a Pocket operation in this new job to mirror what I think the Iso Kuoppa operation is supposed to do. I added all of the bounded faces and (just to make a clear screen shot) turned the step over down to 10%. It seems to work as I would expect -- screenshot attached
I'd be willing to look again with more specific reproduction instructions, but barring more details I would close this bug as "cannot reproduce"
@davidgilkaufman thanks for the feedback!
I'd agree that the error could be a lot clearer
Any suggestions on what that would look like ?
I'd say that whenever we understand what went wrong we should print that explanation, in a message crafted for users to read, instead of printing an exception and backtrace. I'd have to read the code more closely to be sure what's appropriate, but something along the lines of: "Error, base geometry items are missing"
We don't do this anywhere else (as far as I know) so I'm a little reluctant to suggest it, but it bothers me that we print error messages to the console without a clear indication of which operation produced them. I would consider adding the operation name to that error message as well.
The operation fails because the selected base geometry is a spline. Interestingly, the profile operation works just fine with the spline boundary. This should be a relatively easy solution.