Пример #1
0
        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);
        }
Пример #2
0
        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();
        }