Ejemplo n.º 1
0
 private void OnEnable()
 {
     if (m_drawing == null)
     {
         m_drawing = new CustomDrawing()
         {
             renderPassEvent = RenderPassEvent.AfterRenderingSkybox,
         };
         m_drawing.drawer += OnRenderObjectSRP;
     }
     m_planerShadowDirParam = Shader.PropertyToID("_planerLightDir");
     MeshFilter[] meshFileters = GetComponentsInChildren <MeshFilter>();
     Transform[]  trans        = GetComponentsInChildren <Transform>();
     m_meshToTransform = new Dictionary <int, int>();
     for (int i = 0; i < meshFileters.Length; i++)
     {
         for (int j = 0; j < trans.Length; j++)
         {
             if (meshFileters[i].name == trans[j].name)
             {
                 m_meshToTransform.Add(i, j);
                 break;
             }
         }
     }
     if (planerLight)
     {
         m_planerShadowDirTransform = planerLight.GetComponent <Transform>();
     }
     if (!ScriptableRenderer.staticDrawingRender.Contains(m_drawing))
     {
         ScriptableRenderer.staticDrawingRender.Add(m_drawing);
     }
 }
Ejemplo n.º 2
0
        public ContainerView(View view, LayoutBorder padding = default(LayoutBorder))
        {
            _view = view;
            var node      = view.GetNode();
            var container = new Container(view.Size + padding.Size, padding);

            container.AddChild(node);
            _container = container;
            _container.AddComponent(new Drawable()
            {
                Draw = (_, ctx) => CustomDrawing.DrawRect(ctx.Position, Size, BackgroundColor)
            });
        }
Ejemplo n.º 3
0
    private CustomDrawing AddDrawcall(RenderPassEvent rendereveent, CustomDrawing.DrawFunction func)
    {
        CustomDrawing drawing = new CustomDrawing()
        {
            renderPassEvent = rendereveent,
        };

        drawing.drawer = func;
        if (!ScriptableRenderer.staticDrawingRender.Contains(drawing))
        {
            ScriptableRenderer.staticDrawingRender.Add(drawing);
        }
        return(drawing);
    }
Ejemplo n.º 4
0
 private void OnEnable()
 {
     if (m_drawing == null)
     {
         m_drawing = AddDrawcall(RenderPassEvent.BeforeRenderingSkybox + 2, OnParticlesDrawing);
     }
     if (m_depthBoundDrawing == null)
     {
         m_depthBoundDrawing = AddDrawcall(RenderPassEvent.BeforeRenderingSkybox + 1, OnDepthBounds);
     }
     if (m_beginFrame == null)
     {
         m_beginFrame = AddDrawcall(RenderPassEvent.BeforeRendering, OnBeginFrame);
     }
     if (m_endFrame == null)
     {
         m_endFrame = AddDrawcall(RenderPassEvent.AfterRendering, OnEndFrame);
     }
     OnInit();
 }
Ejemplo n.º 5
0
        void MainFormLoad(object sender, EventArgs e)
        {
            Image intImg = Image.FromFile("diamond.png");
            Image tImg = Image.FromFile("table.png");
            const int k = 5;
            Random r = new Random(255);
            try {
                for (int i = 0; i < k; i++) {
                    Structure di = new Structure(diagramContainer1, "ITEM" + i.ToString());
                    di.TitleImage = tImg;
                    Node cols = new Node("Columns", di);
                    cols.AddNode(new Node("id", true, intImg, di));
                    cols.AddNode(new Node("type", true, intImg, di));
                    cols.AddNode(new Node("name", di));
                    cols.AddNode(new Node("surname", di)).AddNode(new Node("child1", di)).AddNode(new Node("child2", di));
                    cols.AddNode(new Node("key", di));
                    cols.AddNode(new Node("anotherKey", di));
                    cols.AddNode(new Node("valid", di)).AddNode(new Node("child3", di)).AddNode(new Node("child4", di));
                    di.AddNode(cols);
                    di.AddOnDiagram(diagramContainer1, Color.FromArgb(r.Next(255), r.Next(255), r.Next(255)));
                    di.Drawing.Location = new Point(r.Next(300), r.Next(300));
                }
            } catch (Exception ex) {
                MessageBox.Show(ex.Message);
            }
            for (int i = 0; i < k; i++) {

                Color c = Color.FromArgb(r.Next(255), r.Next(255), r.Next(255));
                int x = r.Next(k);
                int y = r.Next(k);
                if (x != y) {
                    diagramContainer1.AddLink(diagramContainer1.DiagramItems[x], diagramContainer1.DiagramItems[y]);
                }
            }
            diagramContainer1.Invalidate();

            CustomItem customItem = new CustomItem();
            customItem.Color = Color.Red;
            customItem.Name = "CustomItem";

            CustomDrawing customDrawing = new CustomDrawing(customItem);
            customDrawing.Movable = true;
            customDrawing.Size = new Size(100, 100);
            customItem.Drawing = customDrawing;

            Structure stru = (diagramContainer1.DiagramItems[0] as Structure);
            diagramContainer1.AddLink(stru.Nodes[0].Nodes[3], customItem);

            diagramContainer1.AddItem(customItem, customDrawing, true, true);
            diagramContainer1.AddLink(customItem, diagramContainer1.DiagramItems[0]);

            CircleDrawing customDrawing2 = new CircleDrawing(130, 130);
            customDrawing2.Movable = true;
            customDrawing2.Size = new Size(100, 100);
            diagramContainer1.AddDrawing(customDrawing2, true);

            diagramContainer1.AddLinkDrawing(customDrawing2, customDrawing);
            diagramContainer1.Invalidate();

            diagramContainer1.DrawableHeight = 705;
            diagramContainer1.DrawableWidth = 758;
        }