Ejemplo n.º 1
0
 public void AllVerticesSetState(bool show)
 {
     if (show)
     {
         foreach (VerticeDraggable v in verticesDraggables)
         {
             if (character.state == Character.states.EDITING)
             {
                 VerticeFaceDraggable vfd = v.GetComponent <VerticeFaceDraggable> ();
                 if (vfd.face != VerticeFaceDraggable.faces.CORNER)
                 {
                     v.gameObject.SetActive(true);
                 }
             }
             else if (character.state == Character.states.EDITING_FREE)
             {
                 VerticeFaceDraggable vfd = v.GetComponent <VerticeFaceDraggable> ();
                 if (vfd.face == VerticeFaceDraggable.faces.CORNER)
                 {
                     v.gameObject.SetActive(true);
                 }
             }
         }
     }
     else
     {
         foreach (VerticeDraggable v in verticesDraggables)
         {
             v.gameObject.SetActive(false);
         }
     }
 }
Ejemplo n.º 2
0
 void AddVerticeDraggables()
 {
     for (int a = 0; a < totalVertices; a++)
     {
         VerticeFaceDraggable v = Instantiate(verticeDraggable);
         v.transform.SetParent(transform);
         v.Init(meshConstructor, a, meshConstructor.GetVerticeByID(a, Vector3.zero));
         verticesDraggables.Add(v);
         //v.transform.localScale = verticesSize;
     }
 }
Ejemplo n.º 3
0
    void AddFaceVertices()
    {
        for (int faceID = 0; faceID < 6; faceID++)
        {
            VerticeFaceDraggable faceVertice = Instantiate(verticeFaceDraggable);
            List <int>           childsIDs   = new List <int> ();
            switch (faceID)
            {
            //TOP
            case 0:
                childsIDs.Add(0);
                childsIDs.Add(1);
                childsIDs.Add(2);
                childsIDs.Add(3);
                faceVertice.SetFace(VerticeFaceDraggable.faces.TOP);
                break;

            //bottom
            case 1:
                childsIDs.Add(4);
                childsIDs.Add(5);
                childsIDs.Add(7);
                childsIDs.Add(6);
                faceVertice.SetFace(VerticeFaceDraggable.faces.BOTTOM);
                break;

            //front
            case 2:
                childsIDs.Add(2);
                childsIDs.Add(3);
                childsIDs.Add(7);
                childsIDs.Add(6);
                faceVertice.SetFace(VerticeFaceDraggable.faces.FRONT);
                break;

            //back
            case 3:
                childsIDs.Add(0);
                childsIDs.Add(1);
                childsIDs.Add(4);
                childsIDs.Add(5);
                faceVertice.SetFace(VerticeFaceDraggable.faces.BACK);
                break;

            //right
            case 4:
                childsIDs.Add(1);
                childsIDs.Add(2);
                childsIDs.Add(5);
                childsIDs.Add(7);
                faceVertice.SetFace(VerticeFaceDraggable.faces.RIGHT);
                break;

            //left
            case 5:
                childsIDs.Add(0);
                childsIDs.Add(3);
                childsIDs.Add(4);
                childsIDs.Add(6);
                faceVertice.SetFace(VerticeFaceDraggable.faces.LEFT);
                break;
            }
            Vector3 newPos = Vector3.zero;
            foreach (int id in childsIDs)
            {
                faceVertice.childs.Add(verticesDraggables [id]);
                newPos += verticesDraggables [id].transform.localPosition;
            }
            newPos /= childsIDs.Count;

            faceVertice.transform.SetParent(transform);
            faceVertice.Init(meshConstructor, verticesDraggables.Count + 1, Vector3.zero);
            faceVertice.SetFaceType();
            //faceVertice.transform.localScale = verticesSize;
            verticesDraggables.Add(faceVertice);
        }
        RepositionateFaces();
    }