// Start is called before the first frame update
    void Start()
    {
        Vector3 c = new Vector3(centre.transform.position.x,
                                centre.transform.position.y,
                                centre.transform.position.z);

        angle = angle * Mathf.Deg2Rad;

        foreach (GameObject p in points)
        {
            Coords position = new Coords(p.transform.position, 1);
            //p.transform.position = HolisticMath.Shear(position,shear.x, shear.y, shear.z).ToVector();
            p.transform.position = HolisticMath.Reflect(position).ToVector();
        }

        Coords.DrawLine(new Coords(points[0].transform.position), new Coords(points[1].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[1].transform.position), new Coords(points[2].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[2].transform.position), new Coords(points[3].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[3].transform.position), new Coords(points[0].transform.position), 0.02f, Color.yellow);

        Coords.DrawLine(new Coords(points[4].transform.position), new Coords(points[5].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[5].transform.position), new Coords(points[6].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[6].transform.position), new Coords(points[7].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[7].transform.position), new Coords(points[4].transform.position), 0.02f, Color.yellow);

        Coords.DrawLine(new Coords(points[2].transform.position), new Coords(points[6].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[7].transform.position), new Coords(points[3].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[5].transform.position), new Coords(points[1].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[4].transform.position), new Coords(points[0].transform.position), 0.02f, Color.yellow);

        Coords.DrawLine(new Coords(points[8].transform.position), new Coords(points[9].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[9].transform.position), new Coords(points[2].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[9].transform.position), new Coords(points[6].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[8].transform.position), new Coords(points[3].transform.position), 0.02f, Color.yellow);
        Coords.DrawLine(new Coords(points[8].transform.position), new Coords(points[7].transform.position), 0.02f, Color.yellow);
    }
Exemplo n.º 2
0
    // Start is called before the first frame update
    void Start()
    {
        var c = origin.transform.position;
        var radianRotation = rotation * Mathf.Deg2Rad;

        foreach (var point in points)
        {
            var position = new Coords(point.transform.position, 1);

            /*
             *          position = HolisticMath.Translate(position, new Coords(-c.x, -c.y, -c.z, 0)); */
            position = HolisticMath.Reflect(position);
            point.transform.position = position.ToVector();

            /*            point.transform.position = HolisticMath
             *             .Translate(position, new Coords(new Vector3(c.x, c.y, c.z), 0)).ToVector(); */
            /*
             * SCALE
             * position = HolisticMath.Translate(position, new Coords(-c.x, -c.y, -c.z, 0));
             * position = HolisticMath.Scale(position, new Coords(scaling, 0));
             * point.transform.position = HolisticMath
             * .Translate(position, new Coords(new Vector3(c.x, c.y, c.z), 0)).ToVector(); */
        }
    }