public void UpdateMesh()
        {
            //Debug.Log("updateMesh");
            //if (gameObject == null || _meshFilter == null) return;
            Vector3[] vects = Vects;
            Vector3   size  = Size;

            Vector3[] gapVects = new Vector3[4];
            for (int i = 0; i < 3; i++)
            {
                gapVects[i] = vects[i] * gap;
            }
            gapVects[3] = gapVects[0] + gapVects[1] + gapVects[2];


            Vector3[] magVects = new Vector3[3];
            for (int i = 0; i < 3; i++)
            {
                magVects[i] = (vects[i] * size[i]) - (gapVects[i] * 2);
            }

            Vector3[] pts = new Vector3[4];
            pts[0] = gapVects[3];
            pts[1] = pts[0] + magVects[0];
            pts[2] = pts[1] + magVects[2];
            pts[3] = pts[0] + magVects[2];

            Mesh mesh = MeshMaker.makeExtrusion(pts, magVects[1].magnitude);

            _meshFilter.mesh = mesh;
        }