Autodesk / PowerShapeAndPowerMillAPI

An API for Autodesk PowerShape and PowerMill
MIT License
31 stars 39 forks source link

sNCProgram.Toolpaths.Count returns zero #34

Open arturboszczyk opened 3 years ago

arturboszczyk commented 3 years ago

Hi Luke,

Hope you can help me with this. I've run below code and not sure why the toolpaths count I'm getting is 0. There are definitely toolpaths inside the NC program. Please note this is old 2017 dated project, which I want to modify and re-post. I have just checked there is no issue with a project created in 2021 version of PowerMill. I even created new NC program, added toolpaths to this freshly created NC program - same issue - Toolpath count=0

Please approach me and I can send you the whole affected project, for you to investigate this.

I've updated project to 1.1.53 in NuGet but still the same issue.

**_powerMILL = New PMAutomation(Autodesk.ProductInterface.InstanceReuse.UseExistingInstance) Dim pSession As PMProject = powerMILL.ActiveProject

    For Each sNCProgram As PMNCProgram In pSession.NCPrograms
        If sNCProgram.IsActive Then
            MsgBox("Toolpaths count =" & sNCProgram.Toolpaths.Count)
        End If
    Next_**

image image

Hope you can help me with this.

Cheers Arthur

arturboszczyk commented 3 years ago

Hi

I know why the code fails but I'm not sure why running: EDIT NCPROGRAM '3711-2201A_leading_v1' LIST adds empty line between the OPTION FILE line and first name of toolpath. See images below. If you know why, please let me know.

image image image

Cheers

lukeedw commented 3 years ago

That is indeed odd. I would assume it is related to a setting difference between the two. I would suggest you create a new NC program and start adding toolpaths to it and changing settings. Slowly making it the same as your 3711 NC Program. Each time you make a change, run the "EDIT LIST" command and see at what point the blank line appears. It could be something to do with the workplanes or coolant options... things like that...

Al-Ke commented 5 months ago

We may consider using print par $extract(filter(components(entity('ncprogram','" + Name + "')),"RootType == 'nctoolpath'"),'name') instead of EDIT NCPROGRAM '" + Name + "' LIST