public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature <EditMacroFeatureDefinitionParameters> feature, EditMacroFeatureDefinitionParameters parameters, out AlignDimensionDelegate <EditMacroFeatureDefinitionParameters> alignDim) { alignDim = null; return(new CustomFeatureRebuildResult() { Result = true }); }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature <MacroFeatureParams> feature, MacroFeatureParams parameters, out AlignDimensionDelegate <MacroFeatureParams> alignDim) { var txt = parameters.TextParameter; var inputBody = parameters.InputBody; alignDim = null; return(new CustomFeatureRebuildResult()); }
public override bool OnEditDefinition(ISwApplication app, ISwDocument model, ISwMacroFeature <EditMacroFeatureDefinitionParameters> feature) { if (ShowPage(feature.Parameters, out EditMacroFeatureDefinitionParameters newParams)) { feature.Parameters = newParams; return(true); } else { feature.Parameters = null; return(false); } }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature <DimensionWatcherData> feature, DimensionWatcherData parameters, out AlignDimensionDelegate <DimensionWatcherData> alignDim) { alignDim = null; var res = parameters.Dimension != null; return(new CustomFeatureRebuildResult() { Result = parameters.Dimension != null, ErrorMessage = !res ? "Dimension not found" : "" }); }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature <DimensionMacroFeatureParams> feature, DimensionMacroFeatureParams parameters, out AlignDimensionDelegate <DimensionMacroFeatureParams> alignDim) { var resBodies = GetBodies(); //generating bodies alignDim = (name, dim) => { switch (name) { case nameof(DimensionMacroFeatureParams.FirstDimension): this.AlignLinearDimension(dim, new Point(0, 0, 0), new Vector(1, 0, 0)); break; case nameof(DimensionMacroFeatureParams.SecondDimension): this.AlignRadialDimension(dim, new Point(0, 0, 0), new Vector(0, 0, 1)); break; } }; return(new CustomFeatureBodyRebuildResult() { Bodies = resBodies }); //returning custom rebuild result }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { return(new CustomFeatureRebuildResult() { Result = true }); }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { return(new CustomFeatureRebuildResult() { Result = false, ErrorMessage = "Failed to regenerate this feature" }); }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature feature, PmpMacroFeatData parameters, out AlignDimensionDelegate <PmpMacroFeatData> alignDim) { alignDim = (n, d) => { switch (n) { case nameof(PmpMacroFeatData.Number): this.AlignLinearDimension(d, new Point(0, 0, 0), new Vector(0, 1, 0)); break; case nameof(PmpMacroFeatData.Angle): this.AlignAngularDimension(d, new Point(0, 0, 0), new Point(-0.1, 0, 0), new Vector(0, 1, 0)); break; } }; var sweepArc = app.MemoryGeometryBuilder.WireBuilder.PreCreateArc(); sweepArc.Center = new Point(0, 0, 0); sweepArc.Axis = new Vector(0, 0, 1); sweepArc.Diameter = 0.01; sweepArc.Commit(); var sweepLine = app.MemoryGeometryBuilder.WireBuilder.PreCreateLine(); sweepLine.StartCoordinate = new Point(0, 0, 0); sweepLine.EndCoordinate = new Point(1, 1, 1); sweepLine.Commit(); var sweep = (ISwTempSweep)app.MemoryGeometryBuilder.SolidBuilder.PreCreateSweep(); sweep.Profiles = new ISwTempRegion[] { app.MemoryGeometryBuilder.CreatePlanarSheet(sweepArc).Bodies.OfType <ISwTempPlanarSheetBody>().First() }; sweep.Path = sweepLine; sweep.Commit(); parameters.Number = parameters.Number + 1; return(new CustomFeatureBodyRebuildResult() { Bodies = sweep.Bodies }); }
public override void OnPostRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature <BoxMacroFeatureData> feature, BoxMacroFeatureData parameters) { base.OnPostRebuild(app, model, feature, parameters); }
public virtual CustomFeatureState_e OnUpdateState(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { return(CustomFeatureState_e.Default); }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { return(base.OnRebuild(app, model, feature)); }
public override void OnPostRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature <CabinetSizeData> feature, CabinetSizeData parameters) { m_Svc.Configure((IXAssembly)model, parameters.Width, parameters.Height, parameters.Depth, parameters.NumberOfDrawers, parameters.DrawerWidth, parameters.DrawerHandleType); }
public virtual CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { return(null); }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { var body = app.MemoryGeometryBuilder.CreateSolidBox(new Point(0, 0, 0), new Vector(1, 0, 0), new Vector(0, 1, 0), 0.1, 0.1, 0.1); return(new CustomFeatureBodyRebuildResult() { Bodies = body.Bodies.ToArray() }); }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { if (!string.IsNullOrEmpty(model.Title)) { return(new CustomFeatureRebuildResult() { Result = true }); } else { return(new CustomFeatureRebuildResult() { Result = true, ErrorMessage = Resources.MacroFeatureError }); } }
public override CustomFeatureState_e OnUpdateState(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { //disallow editing or suppressing of the feature return(CustomFeatureState_e.CannotBeDeleted | CustomFeatureState_e.CannotBeSuppressed); }
/// <summary> /// Called when macro feature is rebuild /// </summary> /// <param name="app">Application</param> /// <param name="model">Document</param> /// <param name="feature">Feature</param> public virtual void OnPostRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { }
protected virtual void AddDataToRebuildQueue(ISwApplication app, ISwDocument doc, ISwMacroFeature macroFeatInst) { m_RebuildFeaturesQueue.Add(new MacroFeatureRegenerateData() { Application = app, Document = doc, Feature = macroFeatInst }); }
public override CustomFeatureRebuildResult OnRebuild(ISwApplication app, ISwDocument model, ISwMacroFeature feature, MacroFeatureEditBodiesParams parameters, out AlignDimensionDelegate <MacroFeatureEditBodiesParams> alignDim) { alignDim = null; return(new CustomFeatureRebuildResult()); }
public virtual bool OnEditDefinition(ISwApplication app, ISwDocument model, ISwMacroFeature feature) { return(true); }