public override OperationData GetOperationData()
        {
            OperationData data = base.GetOperationData();

            NXOpen.CAM.CavityMillingBuilder operBuilder = null;
            try
            {
                operBuilder = workPart.CAMSetup.CAMOperationCollection.CreateCavityMillingBuilder(this.Oper);
                if (operBuilder.CutParameters.FloorSameAsPartStock)
                {
                    data.FloorStock = operBuilder.CutParameters.PartStock.Value;
                    data.SideStock  = operBuilder.CutParameters.PartStock.Value;
                }
                else
                {
                    data.SideStock  = operBuilder.CutParameters.PartStock.Value;
                    data.FloorStock = operBuilder.CutParameters.FloorStock.Value;
                }
                data.Depth = operBuilder.CutLevel.GlobalDepthPerCut.DistanceBuilder.Value;
                if (operBuilder.BndStepover.DistanceBuilder.Intent == NXOpen.CAM.ParamValueIntent.ToolDep)
                {
                    double toolDia = data.Tool.ToolDia;
                    double dep     = operBuilder.BndStepover.DistanceBuilder.Value;
                    data.Stepover = toolDia * dep / 100;
                }
                else
                {
                    data.Stepover = operBuilder.BndStepover.DistanceBuilder.Value;
                }

                data.Speed = operBuilder.FeedsBuilder.SpindleRpmBuilder.Value;
                data.Feed  = operBuilder.FeedsBuilder.FeedCutBuilder.Value;
                return(data);
            }
            catch (NXException ex)
            {
                throw ex;
            }
            finally
            {
                if (operBuilder != null)
                {
                    operBuilder.Destroy();
                }
            }
        }
 public override void Create(string name)
 {
     base.CreateOperation(this.templateOperName, name, this.GroupModel);
     NXOpen.CAM.CavityMillingBuilder builder1 = null;
     try
     {
         builder1 = workPart.CAMSetup.CAMOperationCollection.CreateCavityMillingBuilder(this.Oper);
         builder1.FeedsBuilder.SetMachiningData();
         builder1.Commit();
     }
     catch (NXException ex)
     {
         throw ex;
     }
     finally
     {
         if (builder1 != null)
         {
             builder1.Destroy();
         }
     }
 }