简单节点编辑器(二)

作者: 小小小小小丶敏 | 来源:发表于2017-09-25 15:20 被阅读13次

上次的拖动窗口已经画出来了,这次我们看看怎么将两个窗口用连线连接起来吧。我们在上一篇的程序中,再增加一些代码,如下

using UnityEngine;  
using UnityEditor;  
public class NodeEditor : EditorWindow {  
    //窗口的矩形  
    Rect windowRect = new Rect(50, 50, 150, 100);  
    Rect windowRect2 = new Rect(100, 100, 150, 100);  
    //窗口的ID  
    int windownID = 0;  
    int windownID2 = 0;  
    static void ShowEditor() {  
        NodeEditor editor = EditorWindow.GetWindow<NodeEditor>();  
    }  
    void OnGUI() {  
        //绘画窗口  
        BeginWindows();  
        windowRect = GUI.Window(windownID, windowRect, DrawNodeWindow, "Demo Window");  
        windowRect2 = GUI.Window(windownID2,windowRect2,DrawNodeWindow,"Demo Window2");  
        EndWindows();  
        //连接窗口  
        DrawNodeCurve(windowRect,windowRect2);  
    }  
    //绘画窗口函数  
    void DrawNodeWindow(int id) {  
        //创建一个GUI Button  
        if (GUILayout.Button("Link")) {  
            Debug.Log("Clikc Link Button");  
        }  
        //设置改窗口可以拖动  
        GUI.DragWindow();  
    }  
      
    void DrawNodeCurve(Rect start, Rect end , Color color) {  
        Vector3 startPos = new Vector3(start.x + start.width, start.y + start.height / 2, 0);  
        Vector3 endPos = new Vector3(end.x, end.y + end.height / 2, 0);  
        Vector3 startTan = startPos + Vector3.right * 50;  
        Vector3 endTan = endPos + Vector3.left * 50;  
        Handles.DrawBezier(startPos, endPos, startTan, endTan, color, null, 4);  
    }  
}  
运行Editor,出现这样的效果,是不是很帅气?当然,这还只是一些初步的代码,不过还是分享给大家学习,祝大家早日做好节点编辑器

相关文章

  • 简单节点编辑器(二)

    上次的拖动窗口已经画出来了,这次我们看看怎么将两个窗口用连线连接起来吧。我们在上一篇的程序中,再增加一些代码,如下

  • 简单节点编辑器(一)

    本文转自:http://blog.csdn.net/feng888668/article/details/3870...

  • DatistEQ之自定义节点

    本文旨在说明,DatistEQ原生节点及编辑器的定义方法。定义节点 定义节点编辑器 对应的xaml文件。 节点的图...

  • Blender节点编辑器的应用

    如何添加节点编辑器 选中一个物体——添加节点编辑器——新建 渲染视图时,物体的投影特别长,可以通过添加映射节点调整...

  • (二)坐标系和节点变换属性

    (二)坐标系和节点变换属性 标签(空格分隔): 内容创作工作流程 在 场景编辑器 和 节点和组件 文档中,我们介绍...

  • 数据结构:优先队列(堆)

    一些简单的实现 简单链表 二叉查找树 二叉堆(又称堆) 堆是完全二叉树,任意节点子树上的所有节点 <= 当前节点(...

  • LeetCode 每日一题 [69] 二叉树的深度

    LeetCode 二叉树的深度 [简单] 输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含...

  • (六)创建和销毁节点

    (六)创建和销毁节点 创建新节点 除了通过场景编辑器创建节点外,我们也可以在脚本中动态创建节点。通过 new cc...

  • react+antv实现简易版脑图编辑器

    目前功能 初版编辑器:点击编辑按钮,进入编辑模式,选择节点更改字体颜色更改字体大小添加子节点添加同级节点(根节点无...

  • 二叉树

    一些关于二叉树的简单操作 创建节点 简单操作

网友评论

    本文标题:简单节点编辑器(二)

    本文链接:https://www.haomeiwen.com/subject/dfhdextx.html