예제 #1
0
        public void AddVisualizer(Type visType)
        {
            IVisualizer visualizer = (IVisualizer)Activator.CreateInstance(visType);

            Visualizers.Add(visualizer);
            TabPage page = new TabPage(visualizer.DisplayName);

            page.Tag = visualizer;

            var toolbar = new VisualizerToolbar(ActiveSnapshot, visualizer);

            toolbar.Dock = DockStyle.Top;
            page.Controls.Add(toolbar);

            visualizer.Control.Top    = toolbar.Height;
            visualizer.Control.Left   = 0;
            visualizer.Control.Size   = new System.Drawing.Size(page.Width, page.Height - toolbar.Height);
            visualizer.Control.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
            page.Controls.Add(visualizer.Control);

            VisualizerHost.TabPages.Add(page);

            //We have to initialize here to make sure everything is wired if the visualizer calls back in
            if (!visualizer.Initialize(this, Connection, ActiveSnapshot))
            {
                VisualizerHost.TabPages.Remove(page);
                Visualizers.Remove(visualizer);
                return;
            }

            VisualizerHost.SelectedTab      = page;
            m_closeVisualizerButton.Enabled = true;
        }
예제 #2
0
        protected VisualizationManager()
        {
            dynSettings.Controller.DynamoModel.ConnectorDeleted += new ConnectorHandler(DynamoModel_ConnectorDeleted);
            dynSettings.Controller.EvaluationCompleted          += new EventHandler(Controller_EvaluationCompleted);
            dynSettings.Controller.RequestsRedraw += new EventHandler(Controller_RequestsRedraw);
            DynamoSelection.Instance.Selection.CollectionChanged += new NotifyCollectionChangedEventHandler(Selection_CollectionChanged);
            dynSettings.Controller.DynamoModel.ModelCleared      += new EventHandler(DynamoModel_ModelCleared);
            dynSettings.Controller.DynamoModel.CleaningUp        += new CleanupHandler(DynamoModel_CleaningUp);
            dynSettings.Controller.DynamoModel.NodeDeleted       += new NodeHandler(DynamoModel_NodeDeleted);

            Visualizers.Add(typeof(GraphicItem), VisualizationManagerASM.DrawLibGGraphicItem);

            octree = new Octree.OctreeSearch.Octree(10000, -10000, 10000, -10000, 10000, -10000, 10000000);
        }
예제 #3
0
 private void AddPlugin(IJsonViewerPlugin plugin)
 {
     //_plugins.Add(plugin);
     if (plugin is ICustomTextProvider provider)
     {
         TextVisualizers.Add(provider);
     }
     if (plugin is IJsonVisualizer visualizer)
     {
         if (DefaultVisualizer == null)
         {
             DefaultVisualizer = visualizer;
         }
         Visualizers.Add(visualizer);
     }
 }
예제 #4
0
        public VisualizationManagerRevit()
        {
            if (dynSettings.Controller.Context == Context.VASARI_2014)
            {
                AlternateDrawingContextAvailable = true;
                DrawToAlternateContext           = true;

                AlternateContextName = "Vasari";
            }
            else
            {
                AlternateDrawingContextAvailable = false;
            }

            Visualizers.Add(typeof(Element), DrawElement);
            Visualizers.Add(typeof(Transform), DrawTransform);
            Visualizers.Add(typeof(XYZ), DrawXyz);
            Visualizers.Add(typeof(ParticleSystem), DrawParticleSystem);
            Visualizers.Add(typeof(TriangleFace), DrawTriangleFace);
            Visualizers.Add(typeof(GeometryObject), DrawGeometryObject);
            Visualizers.Add(typeof(Autodesk.Revit.DB.CurveLoop), DrawCurveLoop);
        }