protected override void PreviewFillet() { InitSession(); bool result; var linesChamfer = _filletNodes[0].Node.Get <FunctionInterpreter>().Name == FunctionNames.LineTwoPoints && _filletNodes[1].Node.Get <FunctionInterpreter>().Name == FunctionNames.LineTwoPoints; if (!linesChamfer) { Builder = new NodeBuilder(Document, FunctionNames.Fillet2D); Builder[0].ReferenceList = SelectedShapes; Builder[1].Real = SizeWindow.Value; Builder[2].Integer = (int)FilletChamferTypes.SimpleFillet2D; result = Builder.ExecuteFunction(); SizeWindow.FailedValue = !result; } else { result = NodeBuilderUtils.BuildFillet(_filletNodes[0], _filletNodes[1], AnimationDocument, Document, SizeWindow.Value); } if (!result) { InitSession(); } AnimationDocument.Revert(); Send(InputNames.View, NotificationNames.RefreshView); Send(InputNames.View, NotificationNames.RebuildTreeView); }
public static void Fillet2D(Document document, List <SceneSelectedEntity> entities, double radius) { var previewDocument = new Document(); var interpreter = previewDocument.Root.Set <DocumentContextInterpreter>(); var contextInterpreter = document.Root.Get <DocumentContextInterpreter>(); interpreter.Context = contextInterpreter.Context; previewDocument.Root.Set <ActionGraphInterpreter>().ActionsGraph = document.Root.Get <ActionGraphInterpreter>().ActionsGraph; interpreter.Document = previewDocument; previewDocument.Transact(); NodeBuilderUtils.BuildFillet(entities[0], entities[1], previewDocument, document, radius); previewDocument.Revert(); }