NX CAM Cambnd.AskBoundaries的使用

string operName = "FACE_MILLING";

            NXOpen.CAM.Operation operation1 = (NXOpen.CAM.Operation)workPart.CAMSetup.CAMOperationCollection.FindObject(operName);

            int count;

            IntPtr[] boundaries;

            theUfSession.Cambnd.AskBoundaries(operation1.Tag, CamGeomType.CamBlank, out count, out boundaries);

            //theUfSession.Camgeom.AskItems(operation1.Tag, CamGeomType.CamTrim, out count, out boundaries);

 

            theSession.LogFile.WriteLine("boundary count: " + count);

            for (int i = 0; i < count; i++)

            {

                //theUfSession.Camgeom.AskItemEntity(boundaries[i], out entityTag);

                //NXObject obj = (NXObject)NXObjectManager.Get(entityTag);

                //ShowInfo(obj.Name);

 

                UFCambnd.BoundaryData boundaryData;

                theUfSession.Cambnd.AskBoundaryData(boundaries[i], out boundaryData);

                int itemsCount;

                IntPtr[] items;

                theUfSession.Cambnd.AskBoundaryItems(boundaries[i],out itemsCount,out items);

                for (int j = 0; j < itemsCount; j++)

                {

                    Tag entityTag;

                    theUfSession.Cambnd.AskItemEntity(items[j],out entityTag);

                    theUfSession.Disp.SetHighlight(entityTag, 1);

                }

                theSession.LogFile.WriteLine("boundaryData.boundary_type: " + boundaryData.boundary_type);

 

            }

你可能感兴趣的:(CAM,NX)