Nice catch Dropout. I missed that. Would be nice of the offending geometry was identified by the code.
Jonah, your link didn't work, so I posted another. There is a switch to type to use different .NET builds. Last I looked, Rich Greenhoe, who wrote most of S2M, is over at Mastercam now and that Alphacam now charges for a SmartLister to work. ROTFL. If I write anything for the future it might be in Python, as the same code, with some import switches, will work in Bricscad too. :) A bunch of people helped over the years. They all had a hand in putting in the hard work.
I have a c++ brep rep traverser that dumps solids into a lisp container for VB or C# to pick up too. There is an error with normals in the results of the normals attached to the brep that acad seems to have at its core or is an inheritance from the brep limitation. Regardless, most solids work fine. I did find a way, in my head, of how to double-check each normal by putting the solid into another larger know solid and subtracting it and breping that one too and then comparing their outputs.
Avoiding that check which requires acad automation, directly, or by the core.dll, which I have never used, allows for 1/2 million solids to get dumped in seconds. Doing it when only necessary is an option though. It has to do with stepped routes. If the normals are reversed there is not have that part not machined from the wrong direction. With the db encrypted, the brep is a nice work around if the dump is good. The speed increase in doing it all in code only requires writing the new files, pretty much. It's about a couple of orders of magnitude faster.
My understanding is that Alphacam, years later, finally came out with their own feature recognition module. If Rich had a hand in that, especially because we did work together at times, I have confidence it works pretty well. For those that use CV, this is a nice option if it works. It's pretty cool you share it.
I found with winapi stuff freely available mixed with fkeys or sendkeys that I could automate most any wimdows application to do more. I don't want a bunch of companies getting mad at me for allowing others to see what is possible that they are not getting.
It's important to me that people own their copy of the software as an asset and have the freedom to do what they need to do.
There is a line between those that know and that don't and that is frequently exploited by many. They charge people now for code that was written long ago, is free, and is basic 101 stuff and they lock them into paying for it. Wish you well. It you want to discuss more please let me know. Have a great day.