Example #1
0
    public void AddEdge(int beginId, int endId)
    {
        Edge    newEdge = Instantiate(prefabEdge, Vector3.zero, Quaternion.identity, transform);
        Node    begin   = nodes.Find(node => node.Id == beginId);
        Node    end     = nodes.Find(node => node.Id == endId);
        EdgeTag tag     = Instantiate(prefabEdgeTag, Vector3.zero, Quaternion.identity, canvas);

        tag.Initialize(newEdge);
        newEdge.Initialize(this, edgeIdCount, begin, end, tag);
        newEdge.BeginPosition = new Vector3(begin.transform.position.x, begin.transform.position.y, 1);
        newEdge.EndPosition   = new Vector3(end.transform.position.x, end.transform.position.y, 1);
        edges.Add(newEdge);
        edgeIdCount++;
    }