예제 #1
0
    // Returns wether the 2 vertices share a face and returns it if it exists
    public FaceNode shareFace(Vertex v1, Vertex v2)
    {
        FaceNode        f         = null;
        List <FaceNode> faceNodes = faceTree.getFaceNodes();

        for (int i = 0; i < faceNodes.Count; i++)
        {
            f = faceNodes[i];
            if (f.getFace().has(v1) && f.getFace().has(v2))
            {
                return(f);
            }
        }
        return(f);
    }
예제 #2
0
    // Returns wether the 2 vertices share a face and returns it if it exists
    public FaceNode shareFace(VertexNode v1, VertexNode v2)
    {
        FaceNode        f         = null;
        List <FaceNode> faceNodes = faceTree.getFaceNodes();

        for (int i = 0; i < faceNodes.Count; i++)
        {
            if (faceNodes[i].face.has(v1) && faceNodes[i].face.has(v2))
            {
                f = faceNodes[i];
                return(f);
            }
        }

        //List<Face> e1 = new List<Face>();
        //List<Face> e2 = new List<Face>();

        //for (int i = 0; i < v1.edges.Count; i++)
        //{
        //    Edge e = v1.edges[i];
        //    for (int j = 0; j < e.faces.Count; j++)
        //    {
        //        e1.Add(e.faces[j]);
        //    }
        //}

        //for (int i = 0; i < v2.edges.Count; i++)
        //{
        //    Edge e = v2.edges[i];
        //    for (int j = 0; j < e.faces.Count; j++)
        //    {
        //        e2.Add(e.faces[j]);
        //    }
        //}

        //for (int i = 0; i < e1.Count; i++)
        //{
        //    for (int j = 0; j < e2.Count; j++)
        //    {
        //        if (e1[i] == e2[j])
        //        {
        //            return faceTree.findNode(e1[i]);
        //        }
        //    }
        //}

        return(f);
    }