Example #1
0
    public void AddGizmoCorner(Gizmo gizmo)
    {
        if (!(gizmo is GizmoCorner))
        {
            return;
        }
        GizmoCorner gizmoCorner = (GizmoCorner)gizmo;

        GameObject gizmoObject = new GameObject("corner");

        gizmoObject.transform.SetParent(gizmoWrapper.transform);

        CornerBehavior cornerBehavior = gizmoObject.AddComponent <CornerBehavior>();

        cornerBehavior.Init(geoCamera);

        CornerRefer corner = gizmoCorner.corner;
        Vector3     origin = geometry.UnitVector(corner.id2);
        Vector3     dir1   = geometry.Direction(corner.id2, corner.id1);
        Vector3     dir2   = geometry.Direction(corner.id2, corner.id3);

        cornerBehavior.SetData(origin, dir1, dir2);

        gizmoMap.Add(gizmoCorner, cornerBehavior);
    }
Example #2
0
    public void AddGizmoRight(Gizmo gizmo)
    {
        if (!(gizmo is GizmoRight))
        {
            return;
        }
        GizmoRight gizmoRight = (GizmoRight)gizmo;

        GameObject gizmoObject = new GameObject("right");

        gizmoObject.transform.SetParent(gizmoWrapper.transform);

        RightBehaviour rightBehaviour = gizmoObject.AddComponent <RightBehaviour>();

        rightBehaviour.Init(geoCamera);

        CornerRefer corner = gizmoRight.corner;
        Vector3     origin = geometry.UnitVector(corner.id2);
        Vector3     dir1   = geometry.Direction(corner.id2, corner.id1);
        Vector3     dir2   = geometry.Direction(corner.id2, corner.id3);

        rightBehaviour.SetData(origin, dir1, dir2);

        gizmoMap.Add(gizmoRight, rightBehaviour);
    }
Example #3
0
    public void AddGizmoAngle(Gizmo gizmo)
    {
        if (!(gizmo is GizmoAngle))
        {
            return;
        }
        GizmoAngle gizmoAngle = (GizmoAngle)gizmo;

        GameObject gizmoObject = new GameObject("angle");

        gizmoObject.transform.SetParent(gizmoWrapper.transform);

        AngleBehaviour angleBehaviour = gizmoObject.AddComponent <AngleBehaviour>();

        angleBehaviour.Init(geoCamera);

        CornerRefer corner = gizmoAngle.corner;
        Vector3     origin = geometry.UnitVector(corner.id2);
        Vector3     dir1   = geometry.Direction(corner.id2, corner.id1);
        Vector3     dir2   = geometry.Direction(corner.id2, corner.id3);
        float       angle  = geometry.CornerAngle(corner.id1, corner.id2, corner.id3);

        angleBehaviour.SetData(origin, dir1, dir2, angle);

        gizmoMap.Add(gizmoAngle, angleBehaviour);
    }
Example #4
0
    public TopTRightCondition(int id1, int id2, int id3) : base(2)
    {
        this.corner = new CornerRefer(id1, id2, id3);

        GizmoRight gizmoRight = new GizmoRight(corner);

        gizmos = new Gizmo[] { gizmoRight };
    }
Example #5
0
    public BottomAngleCondition(int id1, int id2, int id3, float angle) : base(2)
    {
        this.corner = new CornerRefer(id1, id2, id3);
        this.angle  = angle;

        GizmoCorner gizmoCorner = new GizmoCorner(corner);
        GizmoAngle  gizmoAngle  = new GizmoAngle(corner);

        gizmos = new Gizmo[] { gizmoCorner, gizmoAngle };
    }
Example #6
0
    public void UpdateGizmoRight(Gizmo gizmo)
    {
        if (!(gizmo is GizmoRight))
        {
            return;
        }
        GizmoRight gizmoRight = (GizmoRight)gizmo;

        RightBehaviour rightBehaviour = (RightBehaviour)gizmoMap[gizmoRight];

        CornerRefer corner = gizmoRight.corner;
        Vector3     origin = geometry.UnitVector(corner.id2);
        Vector3     dir1   = geometry.Direction(corner.id2, corner.id1);
        Vector3     dir2   = geometry.Direction(corner.id2, corner.id3);

        rightBehaviour.SetData(origin, dir1, dir2);
    }
Example #7
0
    public void UpdateGizmoCorner(Gizmo gizmo)
    {
        if (!(gizmo is GizmoCorner))
        {
            return;
        }
        GizmoCorner gizmoCorner = (GizmoCorner)gizmo;

        CornerBehavior cornerBehavior = (CornerBehavior)gizmoMap[gizmoCorner];

        CornerRefer corner = gizmoCorner.corner;
        Vector3     origin = geometry.UnitVector(corner.id2);
        Vector3     dir1   = geometry.Direction(corner.id2, corner.id1);
        Vector3     dir2   = geometry.Direction(corner.id2, corner.id3);

        cornerBehavior.SetData(origin, dir1, dir2);
    }
Example #8
0
    public void UpdateGizmoAngle(Gizmo gizmo)
    {
        if (!(gizmo is GizmoAngle))
        {
            return;
        }
        GizmoAngle gizmoAngle = (GizmoAngle)gizmo;

        AngleBehaviour angleBehaviour = (AngleBehaviour)gizmoMap[gizmoAngle];

        CornerRefer corner = gizmoAngle.corner;
        Vector3     origin = geometry.UnitVector(corner.id2);
        Vector3     dir1   = geometry.Direction(corner.id2, corner.id1);
        Vector3     dir2   = geometry.Direction(corner.id2, corner.id3);
        float       angle  = geometry.CornerAngle(corner.id1, corner.id2, corner.id3);

        angleBehaviour.SetData(origin, dir1, dir2, angle);
    }
Example #9
0
    public override FormInput Title()
    {
        CornerRefer corner = measure.corner;

        FormElement formElement = new FormElement(3);

        formElement.fields[0] = geometry.VertexSign(corner.id1);
        formElement.fields[1] = geometry.VertexSign(corner.id2);
        formElement.fields[2] = geometry.VertexSign(corner.id3);

        float   angle   = geometry.CornerAngle(corner.id1, corner.id2, corner.id3);
        FormNum formNum = new FormNum(angle);

        formNum.format = UIConstants.AngleFormat;

        FormInput formInput = new FormInput(4);

        formInput.inputs[0] = new FormText("∠");
        formInput.inputs[1] = formElement;
        formInput.inputs[2] = new FormText("=");
        formInput.inputs[3] = formNum;

        return(formInput);
    }
 private bool IsEdgeOppositeCorner(EdgeRefer er, CornerRefer cr)
 {
     return(cr.id2 != er.id1 && cr.id2 != er.id2);
 }
Example #11
0
    public GizmoRight(CornerRefer corner)
    {
        name = "GizmoRight";

        this.corner = corner;
    }
Example #12
0
    public GizmoRight(int id1, int id2, int id3)
    {
        name = "GizmoRight";

        corner = new CornerRefer(id1, id2, id3);
    }
Example #13
0
    public GizmoCorner(CornerRefer corner)
    {
        name = "GizmoCorner";

        this.corner = corner;
    }
Example #14
0
    public GizmoAngle(CornerRefer corner)
    {
        name = "GizmoAngle";

        this.corner = corner;
    }
Example #15
0
    public GizmoAngle(int id1, int id2, int id3)
    {
        name = "GizmoAngle";

        corner = new CornerRefer(id1, id2, id3);
    }
Example #16
0
 public CornerAngleMeasure(int id1, int id2, int id3) : base()
 {
     corner = new CornerRefer(id1, id2, id3);
 }
 private bool IsEdgeAdjacentCorner(EdgeRefer er, CornerRefer cr)
 {
     return(cr.id2 == er.id1 || cr.id2 == er.id2);
 }