public void init()
    {
        main    = GameObject.Find("Origami").GetComponent <OrigamiManager>().ori;
        buttons = new List <List <GameObject> >();

        for (int i = 0; i < main.surface.Count; i++)
        {
            int k = 0;
            buttons.Add(new List <GameObject>());
            //Debug.Log("edges" + i+ ":"+main.surface[i].edges.Count);
            for (int j = 0; j < main.surface[i].edges.Count; j++)
            {
                if (main.surface[i].edges[j].isEnd == false)
                {
                    buttons[i].Add(Instantiate(prefab) as GameObject);
                    buttons[i][buttons[i].Count - 1].transform.SetParent(gameObject.transform, false);

                    buttons[i][buttons[i].Count - 1].transform.position += new Vector3(tmp * (k % 3), 0, 0);

                    buttons[i][buttons[i].Count - 1].GetComponent <SelectEdge>().SetNum(k + 1);
                    buttons[i][buttons[i].Count - 1].GetComponent <SelectEdge>().SetName(i + ":" + j + ":" + k);
                    buttons[i][buttons[i].Count - 1].SetActive(false);
                    k++;
                }
            }
        }
        active = false;
    }
 // Use this for initialization
 void Start()
 {
     ori  = new DataSet.Origami(irogami, irogamiSelected);
     kata = new DataSet.Orikata();
     load();
     GameObject.Find("ButtonManager").GetComponent <EdgesButtonController>().init();
     befselecting = -1;
 }