예제 #1
0
        public void BeginCallBack(Tesselator.TriangleListType type)
        {
            m_VertexIndexList.Clear();
            m_LineWidthList.Clear();
            m_TriangleListType = type;
            m_LineWidth        = .5;

            switch (m_TriangleListType)
            {
            case Tesselator.TriangleListType.Triangles:
                m_TriangleColor = new RGBA_Doubles(.1, 0, 0, .2);
                m_LineColor     = new RGBA_Doubles(0, 0, 0);
                break;

            case Tesselator.TriangleListType.TriangleFan:
                m_TriangleColor = new RGBA_Doubles(0, 1, 0, .2);
                m_LineColor     = new RGBA_Doubles(0, 0, 0);
                break;

            case Tesselator.TriangleListType.TriangleStrip:
                m_TriangleColor = new RGBA_Doubles(0, 0, 1, .2);
                m_LineColor     = new RGBA_Doubles(0, 0, 0);
                break;

            case Tesselator.TriangleListType.LineLoop:
                m_LineColor = new RGBA_Doubles(m_ColorRand.NextDouble(), m_ColorRand.NextDouble(), m_ColorRand.NextDouble());
                break;
            }
        }
예제 #2
0
        void Tesselator.ITessListener.Begin(Tesselator.TriangleListType type)
        {
#if DEBUG
            if (type != Tesselator.TriangleListType.Triangles)
            {
            }
#endif
            //_triangleListType = type;

            //what type of triangle list
            //Console.WriteLine("begin: " + type.ToString());
            //Assert.IsTrue(GetNextOutputAsString() == "B");
            //switch (type)
            //{
            //    case Tesselator.TriangleListType.Triangles:
            //        Assert.IsTrue(GetNextOutputAsString() == "TRI");
            //        break;

            //    case Tesselator.TriangleListType.TriangleFan:
            //        Assert.IsTrue(GetNextOutputAsString() == "FAN");
            //        break;

            //    case Tesselator.TriangleListType.TriangleStrip:
            //        Assert.IsTrue(GetNextOutputAsString() == "STRIP");
            //        break;

            //    default:
            //        throw new Exception("unknown TriangleListType '" + type.ToString() + "'.");
            //}
        }
예제 #3
0
        public void BeginCallBack(Tesselator.TriangleListType type)
        {
            if (type != Tesselator.TriangleListType.Triangles)
            {
            }
            this.triangleListType = type;

            //what type of triangle list
            //Console.WriteLine("begin: " + type.ToString());
            //Assert.IsTrue(GetNextOutputAsString() == "B");
            //switch (type)
            //{
            //    case Tesselator.TriangleListType.Triangles:
            //        Assert.IsTrue(GetNextOutputAsString() == "TRI");
            //        break;

            //    case Tesselator.TriangleListType.TriangleFan:
            //        Assert.IsTrue(GetNextOutputAsString() == "FAN");
            //        break;

            //    case Tesselator.TriangleListType.TriangleStrip:
            //        Assert.IsTrue(GetNextOutputAsString() == "STRIP");
            //        break;

            //    default:
            //        throw new Exception("unknown TriangleListType '" + type.ToString() + "'.");
            //}
        }
예제 #4
0
 /// <summary>
 /// clear previous results and load a new input vertex list
 /// </summary>
 /// <param name="inputVertextList"></param>
 public void ResetAndLoadInputVertexList(int inputVertexCount)
 {
     this.inputVertexCount = inputVertexCount;
     //1. reset
     this.triangleListType = Tesselator.TriangleListType.LineLoop;//?
     this.tempVertexList.Clear();
     resultIndexList.Clear();
 }
예제 #5
0
        public void BeginCallBack(Tesselator.TriangleListType type)
        {
            switch (type)
            {
            case Tesselator.TriangleListType.Triangles:
                GL.Begin(BeginMode.Triangles);
                break;

            case Tesselator.TriangleListType.TriangleFan:
                GL.Begin(BeginMode.TriangleFan);
                break;

            case Tesselator.TriangleListType.TriangleStrip:
                GL.Begin(BeginMode.TriangleStrip);
                break;
            }
        }
예제 #6
0
        public void BeginCallBack(Tesselator.TriangleListType type)
        {
            switch (type)
            {
            case Tesselator.TriangleListType.Triangles:
                Gl.glBegin(Gl.GL_TRIANGLES);
                break;

            case Tesselator.TriangleListType.TriangleFan:
                Gl.glBegin(Gl.GL_TRIANGLE_FAN);
                break;

            case Tesselator.TriangleListType.TriangleStrip:
                Gl.glBegin(Gl.GL_TRIANGLE_STRIP);
                break;
            }
        }
예제 #7
0
        public void BeginCallBack(Tesselator.TriangleListType type)
        {
            Assert.IsTrue(GetNextOutputAsString() == "B");
            switch (type)
            {
            case Tesselator.TriangleListType.Triangles:
                Assert.IsTrue(GetNextOutputAsString() == "TRI");
                break;

            case Tesselator.TriangleListType.TriangleFan:
                Assert.IsTrue(GetNextOutputAsString() == "FAN");
                break;

            case Tesselator.TriangleListType.TriangleStrip:
                Assert.IsTrue(GetNextOutputAsString() == "STRIP");
                break;

            default:
                throw new Exception("unknown TriangleListType '" + type.ToString() + "'.");
            }
        }
예제 #8
0
        public void BeginCallBack(Tesselator.TriangleListType type)
        {
            m_VertexIndexList.Clear();
            m_LineWidthList.Clear();
            m_TriangleListType = type;
            m_LineWidth = .5;

            switch (m_TriangleListType)
            {
                case Tesselator.TriangleListType.Triangles:
                    m_TriangleColor = new RGBA_Doubles(.1, 0, 0, .2);
                    m_LineColor = new RGBA_Doubles(0, 0, 0);
                    break;

                case Tesselator.TriangleListType.TriangleFan:
                    m_TriangleColor = new RGBA_Doubles(0, 1, 0, .2);
                    m_LineColor = new RGBA_Doubles(0, 0, 0);
                    break;

                case Tesselator.TriangleListType.TriangleStrip:
                    m_TriangleColor = new RGBA_Doubles(0, 0, 1, .2);
                    m_LineColor = new RGBA_Doubles(0, 0, 0);
                    break;

                case Tesselator.TriangleListType.LineLoop:
                    m_LineColor = new RGBA_Doubles(m_ColorRand.NextDouble(), m_ColorRand.NextDouble(), m_ColorRand.NextDouble());
                    break;

            }
        }