Beginner's problems with model change

Here's the place for discussion related to CAM/CNC and the development of the Path module.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Siltti
Posts: 39
Joined: Tue Apr 19, 2016 6:27 am

Re: Beginner's problems with model change

Post by Siltti »

Here.

Timo
Attachments
Ylä_PS.21b.FCStd
(575.38 KiB) Downloaded 17 times
Siltti
Posts: 39
Joined: Tue Apr 19, 2016 6:27 am

Re: Beginner's problems with model change

Post by Siltti »

Dear Sirs,

after qick thinking I propose three functions to MillSurface, Pocket and Adaptive operations, others may be found necessary with 3D cases.

-Ignore edge loops, mills over like there was no hole or pocket at all. Some Step converters seem to use non-standard direction of loops (CW, CCW compared to surface normal) in internal loops, so it should be possible to force picking incorrect loops also. This has been a problem with some other codes, because it looks like there is surface inside surface instead of a hole, when inner loop direction is wrong.

-Consider edge loops, leaves islands intact in the surface. This helps leaving screw towers etc. to surface. Again same CW/CCW is a problem with some Step converters.

-Extend given edge. Given two connected edges means cleaning a corner. To avoid unnecessary milling too far, a limiter distances from corner may be given also. Problems arise when extension should go to non-normal direction like my model has, and extension can penetrate through material. A direction vector or something would be needed to the ends to avoid this.

Best regards,

Timo
jescombe
Posts: 90
Joined: Tue Mar 09, 2021 4:19 pm

Re: Beginner's problems with model change

Post by jescombe »

Thanks, seems to be complaining about invalid shapes on multiple edges of your modified Body_out part. Am not really sure why, but I don't see these errors if I create a new Path job referencing a new copy of just the BaseFeature part.

Just looking at your changes to this BaseFeature part. Are these new sketches & pads only there to work around the issue that you're unable to use "Use Outline" to ignore the holes and the internal pocket for the Adaptive? With that 'fixed' I'm able to adaptive the face on the BaseFeature part, and extend the open edges as you want, see screenshot..
adaptive_base_model.png
adaptive_base_model.png (154.16 KiB) Viewed 683 times
Siltti
Posts: 39
Joined: Tue Apr 19, 2016 6:27 am

Re: Beginner's problems with model change

Post by Siltti »

Dear Jescombe,

you are right, those are my attempts to get at least something done. Very good, if things would go without them, as it is quite time consumping to add them and after each one needs to repick all operation's surfaces due to ID:s getting mixed. I will study your message and try to get my model working. Thanks!

Best regards,

Timo
Last edited by Siltti on Sun Jan 29, 2023 5:16 pm, edited 1 time in total.
jescombe
Posts: 90
Joined: Tue Mar 09, 2021 4:19 pm

Re: Beginner's problems with model change

Post by jescombe »

I'm not very familiar with the code, but this is what I think is going on with "Use Outline"..

The Adaptive operation expects the outline of the face to come from face.Wires[0].

In your model this isn't the case - Wires[0] is actually the hole in the lower left corner, and Wires[7] is the outline.

I worked around this by changing the Adaptive code to use face.OuterWire instead. This seems to work fine for me, however I've no idea whether it's the correct fix.

"Use Outline" doesn't work properly in a Pocket operation either, which I think uses a different approach to find the outline. This suggests to me that the geometry of your model is suspect, and so perhaps the error is coming from the import / conversion process from the original STEP file?
Siltti
Posts: 39
Joined: Tue Apr 19, 2016 6:27 am

Re: Beginner's problems with model change

Post by Siltti »

Dear Sirs,

I updated to FC to the most recent weekly version 31709, but still can't get my model working properly. Even if I add a totally new job_out2 to it and start collecting operations to it, extensions wires don't show up. Unfortunately remaking everything from scratch is too much work, so I have to try to work with my workaround tabs. Some of them are needed anyway because extension would not clean some sharp angle details.

If the core reason for this can't be found, is it be possible to save the entire job into a log file and redo all the editing and operations from it to a clean document only having imported Step geometry? That would create a model file without problems caused by my trials and errors.

Best regards,

Timo
jescombe
Posts: 90
Joined: Tue Mar 09, 2021 4:19 pm

Re: Beginner's problems with model change

Post by jescombe »

For what it's worth, I've raised issue #8294 to see whether the suggested change to the Adaptive outline code is acceptable..

If you want to try it in the meantime, you could just unpack the AppImage and change that one line?

If so, run the AppImage with --appimage-extract as a parameter, change line #842 in src/Mod/Path/Path/Op/Adaptive.py, and then launch the AppRun executable
Siltti
Posts: 39
Joined: Tue Apr 19, 2016 6:27 am

Re: Beginner's problems with model change

Post by Siltti »

Dear Jescombe,

sorry i missed your last message. Yes, it is really possible, almost very probable, that my step is incorrect. I have been strugling with many Step incompatibilities between the most expensive codes: holes in surfaces and corner roundings are something which typically are not received as expected, but their complements are created so the solid part is not consistent. This happens even between products owned by same company!

In the dark frustrating hours I have been dreaming of a Step interpreter which reads the file line by line and user could heal the data for consistent material side and holes really being holes, stitching points etc. Remembering that we are talking about hundreds of millions in license costs and enormous amount of lost manpower, I wonder why this has not been a subject of interst to any coder. This is not anybody's fault, Step definition simply is not as exact as it should be.

Best regards,

Timo
Siltti
Posts: 39
Joined: Tue Apr 19, 2016 6:27 am

Re: Beginner's problems with model change

Post by Siltti »

Dear Jescombe,

--appimage sounds to be a Linux command line. I live in WIndows world, this does not apply to me?

Best regards,

Timo
jescombe
Posts: 90
Joined: Tue Mar 09, 2021 4:19 pm

Re: Beginner's problems with model change

Post by jescombe »

Ah no, in that case you should have Mod/Path/Path/Op/Adaptive.py already extracted from the zip file?

You should just need to change line 842 in that file to test, change wire_B = face.Wires[0] to wire_B = face.OuterWire
Post Reply