示例#1
0
            /// create edge with given next, twin, and face
            public CLSEdgeProps(CLSEdge n, CLSEdge t, CLSFace f)
            {
//C++ TO C# CONVERTER TODO TASK: The following line was determined to be a copy assignment (rather than a reference assignment) - this should be verified and a 'CopyFrom' method should be created:
//ORIGINAL LINE: next = n;
                next.CopyFrom(n);
//C++ TO C# CONVERTER TODO TASK: The following line was determined to be a copy assignment (rather than a reference assignment) - this should be verified and a 'CopyFrom' method should be created:
//ORIGINAL LINE: twin = t;
                twin.CopyFrom(t);
//C++ TO C# CONVERTER TODO TASK: The following line was determined to be a copy assignment (rather than a reference assignment) - this should be verified and a 'CopyFrom' method should be created:
//ORIGINAL LINE: face = f;
                face.CopyFrom(f);
            }
示例#2
0
            public CLSFaceProps(CLSEdge e)
            {
//C++ TO C# CONVERTER TODO TASK: The following line was determined to be a copy assignment (rather than a reference assignment) - this should be verified and a 'CopyFrom' method should be created:
//ORIGINAL LINE: edge = e;
                edge.CopyFrom(e);
            }
示例#3
0
            public void init()
            {
                // initialize cl-surf
                //
                //    b  e1   a
                //    e2      e4
                //    c   e3  d
                CLSVertex a = g.add_vertex();         // VertexProps( Point(far,far,0) ), g);

                g[a].position = new Point(far, far, 0);
                CLSVertex b = g.add_vertex();         // VertexProps( Point(-far,far,0) ), g);

                g[b].position = new Point(-far, far, 0);
                CLSVertex c = g.add_vertex();         // VertexProps( Point(-far,-far,0) ), g);

                g[c].position = new Point(-far, -far, 0);
                CLSVertex d = g.add_vertex();         // VertexProps( Point(far,-far,0) ), g);

                g[c].position = new Point(far, -far, 0);
                CLSFace f_outer = g.add_face();
                CLSFace f_inner = g.add_face();
                CLSEdge e1      = g.add_edge(a, b);
                CLSEdge e1t     = g.add_edge(b, a);
                CLSEdge e2      = g.add_edge(b, c);
                CLSEdge e2t     = g.add_edge(c, b);
                CLSEdge e3      = g.add_edge(c, d);
                CLSEdge e3t     = g.add_edge(d, c);
                CLSEdge e4      = g.add_edge(d, a);
                CLSEdge e4t     = g.add_edge(a, d);

                g[f_inner].edge = e1;
                g[f_outer].edge = e1t;
//C++ TO C# CONVERTER TODO TASK: The following line was determined to be a copy assignment (rather than a reference assignment) - this should be verified and a 'CopyFrom' method should be created:
//ORIGINAL LINE: out_face = f_outer;
                out_face.CopyFrom(f_outer);
                // twin edges
                g.twin_edges(e1, e1t);
                g.twin_edges(e2, e2t);
                g.twin_edges(e3, e3t);
                g.twin_edges(e4, e4t);
                // inner face:
                g[e1].face = f_inner;
                g[e2].face = f_inner;
                g[e3].face = f_inner;
                g[e4].face = f_inner;
                // outer face:
                g[e1t].face = f_outer;
                g[e2t].face = f_outer;
                g[e3t].face = f_outer;
                g[e4t].face = f_outer;
                // next-pointers:
                g[e1].next = e2;
                g[e2].next = e3;
                g[e3].next = e4;
                g[e4].next = e1;
                // outer next-pointers:
                g[e1t].next = e4t;
                g[e4t].next = e3t;
                g[e3t].next = e2t;
                g[e2t].next = e1t;

                subdivide();
            }