Example #1
0
    void createUI()
    {
        // create neural image
        GameObject obj = Resources.Load("Heatmap") as GameObject;
        Vector2    pos = new Vector2(-20, -90);

        int idx = 0;

        foreach (var input in this.playground.INPUTS)
        {
            GameObject    heatMap = GameObject.Instantiate(obj, featureLayer.transform, true);
            RectTransform t       = heatMap.GetComponent <RectTransform>();
            t.anchoredPosition = pos;

            ImageHeatmap imageHeatmap = heatMap.GetComponent <ImageHeatmap>();
            imageHeatmap.id = input.Key;

            Toggle toggle = heatMap.GetComponent <Toggle>();
            if (this.playground.state.inputs.Contains(input.Key) == false)
            {
                toggle.isOn = false;
            }

            imageHeatmap.onClick = (id) =>
            {
                if (this.playground.state.inputs.Contains(id))
                {
                    this.playground.state.inputs.Remove(id);
                }
                else
                {
                    this.playground.state.inputs.Add(id);
                }
                reset();
            };

            GameObject feature = GameObject.Instantiate(features[idx++], featureLayer.transform, false);
            t = feature.GetComponent <RectTransform>();
            Vector2 tPos = t.anchoredPosition;
            tPos.y             = pos.y;
            t.anchoredPosition = tPos;

            pos.y -= 55;
        }

        createHiddenLayers();
        createThumbnails();
    }
Example #2
0
    void createHiddenLayers()
    {
        int layerNumber = this.playground.network.Count - 2;

        if (layerNumber > 0)
        {
            const int layerWidth = 300;


            GameObject obj  = Resources.Load("Heatmap") as GameObject;
            Vector2    pos  = new Vector2(0, -90);
            float      offX = 0;
            if (layerNumber == 1)
            {
                pos.x = 0;
            }
            else
            {
                pos.x = -150;
                offX  = layerWidth / (layerNumber - 1);
            }

            GameObject btns = Resources.Load("buttons") as GameObject;

            for (int i = 1; i < this.playground.network.Count - 1; i++)
            {
                GameObject btn = GameObject.Instantiate(btns, hiddenLayers.transform, true);
                btn.GetComponent <RectTransform>().anchoredPosition = new Vector2(pos.x, -50);
                Button[] new_buttons = btn.GetComponentsInChildren <Button>();

                int shapeId = i - 1;
                new_buttons[0].onClick.AddListener(() =>
                {
                    if (this.playground.state.networkShape[shapeId] > 1)
                    {
                        this.playground.state.networkShape[shapeId]--;
                    }
                    reset();
                });
                new_buttons[1].onClick.AddListener(() =>
                {
                    if (this.playground.state.networkShape[shapeId] < 8)
                    {
                        this.playground.state.networkShape[shapeId]++;
                    }
                    reset();
                });



                var layer = this.playground.network[i];

                for (int j = 0; j < layer.Count; j++)
                {
                    var node = layer[j];

                    GameObject    heatMap = GameObject.Instantiate(obj, hiddenLayers.transform, true);
                    RectTransform t       = heatMap.GetComponent <RectTransform>();
                    t.anchoredPosition = pos;
                    ImageHeatmap imageHeatmap = heatMap.GetComponent <ImageHeatmap>();
                    imageHeatmap.id = node.id;

                    pos.y -= 55;
                }

                pos.y  = -90;
                pos.x += offX;
            }
        }
    }