Example #1
0
    // restore saved measures method
    private void Restore(EventParam jsonStringParam)
    {
        // create an new measure instance from the JSON string
        planeAngleInstance = JsonUtility.FromJson <PlaneAngleClass>(jsonStringParam.getStringParam());
        instanceList.Add(planeAngleInstance);

        // instantiate 2 planes
        GameObject p1 = Instantiate(refPlane, cloneParent);

        p1.SetActive(true);

        cloneNormal = Instantiate(refNormal, p1.transform);
        cloneNormal.SetActive(true);
        cloneNormal.transform.localPosition = Vector3.zero;
        cloneNormal.transform.eulerAngles   = Vector3.zero;

        GameObject p2 = Instantiate(refPlane, cloneParent);

        p2.SetActive(true);

        cloneNormal = Instantiate(refNormal, p2.transform);
        cloneNormal.SetActive(true);
        cloneNormal.transform.localPosition = Vector3.zero;
        cloneNormal.transform.eulerAngles   = Vector3.zero;

        // set the non serializable fields of the measure instance
        planeAngleInstance.RestoreInstance(p1, p2);
    }
Example #2
0
    // process click event
    public void PlacePlaneClickRecieved(EventParam positionParam)
    {
        if (clickCount == 0)
        {
            planeAngleInstance = new PlaneAngleClass();
            instanceList.Add(planeAngleInstance);
        }

        if (clickCount < 2)
        {
            clonePlane = Instantiate(refPlane, cloneParent);
            clonePlane.SetActive(true);
            clonePlane.transform.position = positionParam.getPointParam();

            cloneNormal = Instantiate(refNormal, clonePlane.transform);
            cloneNormal.SetActive(true);
            cloneNormal.transform.localPosition = Vector3.zero;
            cloneNormal.transform.eulerAngles   = Vector3.zero;

            planeAngleInstance.AddElement(clonePlane);
        }

        clickCount += 1;
    }