void testBadDisplayList() {
        buildGLContext();

        FTGLOutlineFont* outlineFont = new FTGLOutlineFont( FONT_FILE);
        outlineFont->FaceSize(18);

        int glList = glGenLists(1);
        glNewList( glList, GL_COMPILE);

        outlineFont->Render(GOOD_ASCII_TEST_STRING);

        glEndList();

        CPPUNIT_ASSERT( glGetError() == GL_INVALID_OPERATION);
    }
        void testResizeBug()
        {
            buildGLContext();
        
            FTGLTextureFont* textureFont = new FTGLTextureFont( FONT_FILE);            
            CPPUNIT_ASSERT( textureFont->Error() == 0);
            
            textureFont->FaceSize(18);
            textureFont->Render("first");

            textureFont->FaceSize(38);
            textureFont->Render("second");
            
            CPPUNIT_ASSERT( glGetError() == GL_NO_ERROR);        
        }
    void testRender() {
        buildGLContext();

        FTGLOutlineFont* outlineFont = new FTGLOutlineFont( FONT_FILE);
        outlineFont->Render(GOOD_ASCII_TEST_STRING);

        CPPUNIT_ASSERT( outlineFont->Error() == 0x97);   // Invalid pixels per em
        CPPUNIT_ASSERT( glGetError() == GL_NO_ERROR);

        outlineFont->FaceSize(18);
        outlineFont->Render(GOOD_ASCII_TEST_STRING);

        CPPUNIT_ASSERT( outlineFont->Error() == 0);
        CPPUNIT_ASSERT( glGetError() == GL_NO_ERROR);
    }
Beispiel #4
0
        void testDisplayList()
        {
            buildGLContext();
        
            FTGLPixmapFont* pixmapFont = new FTGLPixmapFont( FONT_FILE);            
            pixmapFont->FaceSize(18);
            
            int glList = glGenLists(1);
            glNewList( glList, GL_COMPILE);

                pixmapFont->Render(GOOD_ASCII_TEST_STRING);

            glEndList();

            CPPUNIT_ASSERT( glGetError() == GL_NO_ERROR);
        }
    void testGoodDisplayList() {
        buildGLContext();

        FTGLOutlineFont* outlineFont = new FTGLOutlineFont( FONT_FILE);
        outlineFont->FaceSize(18);

        outlineFont->UseDisplayList(false);
        int glList = glGenLists(1);
        glNewList( glList, GL_COMPILE);

        outlineFont->Render(GOOD_ASCII_TEST_STRING);

        glEndList();

        CPPUNIT_ASSERT( glGetError() == GL_NO_ERROR);
    }
Beispiel #6
0
        void testRender()
        {
            buildGLContext();

            FTGLBitmapFont* bitmapFont = new FTGLBitmapFont( FONT_FILE);            
            bitmapFont->Render(GOOD_ASCII_TEST_STRING);

            CPPUNIT_ASSERT( bitmapFont->Error() == 0);        
            CPPUNIT_ASSERT( glGetError() == GL_NO_ERROR);        

            bitmapFont->FaceSize(18);
            bitmapFont->Render(GOOD_ASCII_TEST_STRING);

            CPPUNIT_ASSERT( bitmapFont->Error() == 0);        
            CPPUNIT_ASSERT( glGetError() == GL_NO_ERROR);        
        }
        void testRender()
        {
            setUpFreetype();

            buildGLContext();

            FTExtrudeGlyph* extrudedGlyph = new FTExtrudeGlyph(face->glyph,
                                                      0.0f, 0.0f, 0.0f, true);
            CPPUNIT_ASSERT(extrudedGlyph->Error() == 0);
            extrudedGlyph->Render(FTPoint(0, 0, 0), FTGL::RENDER_FRONT |
                                                    FTGL::RENDER_BACK |
                                                    FTGL::RENDER_SIDE);

            CPPUNIT_ASSERT(glGetError() == GL_NO_ERROR);

            tearDownFreetype();
        }
Beispiel #8
0
        void testBadDisplayList()
        {
            buildGLContext();

            FTExtrudeFont* extrudedFont = new FTExtrudeFont(FONT_FILE);
            extrudedFont->FaceSize(18);

            int glList = glGenLists(1);
            glNewList(glList, GL_COMPILE);

                extrudedFont->Render(GOOD_ASCII_TEST_STRING);

            glEndList();

            CPPUNIT_ASSERT_EQUAL((int)glGetError(), GL_INVALID_OPERATION);
            delete extrudedFont;
        }
Beispiel #9
0
        void testRender()
        {
            buildGLContext();

            FTExtrudeFont* extrudedFont = new FTExtrudeFont(FONT_FILE);
            extrudedFont->Render(GOOD_ASCII_TEST_STRING);

            CPPUNIT_ASSERT_EQUAL(extrudedFont->Error(), 0x97);   // Invalid pixels per em
            CPPUNIT_ASSERT_EQUAL(GL_NO_ERROR, (int)glGetError());

            extrudedFont->FaceSize(18);
            extrudedFont->Render(GOOD_ASCII_TEST_STRING);

            CPPUNIT_ASSERT_EQUAL(extrudedFont->Error(), 0);
            CPPUNIT_ASSERT_EQUAL(GL_NO_ERROR, (int)glGetError());
            delete extrudedFont;
        }
Beispiel #10
0
        void testGoodDisplayList()
        {
            buildGLContext();

            FTExtrudeFont* extrudedFont = new FTExtrudeFont(FONT_FILE);
            extrudedFont->FaceSize(18);

            extrudedFont->UseDisplayList(false);
            int glList = glGenLists(1);
            glNewList(glList, GL_COMPILE);

                extrudedFont->Render(GOOD_ASCII_TEST_STRING);

            glEndList();

            CPPUNIT_ASSERT_EQUAL(GL_NO_ERROR, (int)glGetError());
            delete extrudedFont;
        }
Beispiel #11
0
        void testPenPosition()
        {
            buildGLContext();
            float rasterPosition[4];
            
            glRasterPos2f(0.0f,0.0f);
            
            glGetFloatv(GL_CURRENT_RASTER_POSITION, rasterPosition);
            CPPUNIT_ASSERT_DOUBLES_EQUAL( 0.0, rasterPosition[0], 0.01);
            
            FTGLBitmapFont* bitmapFont = new FTGLBitmapFont( FONT_FILE);            
            bitmapFont->FaceSize(18);

            bitmapFont->Render(GOOD_ASCII_TEST_STRING);
            bitmapFont->Render(GOOD_ASCII_TEST_STRING);

            glGetFloatv(GL_CURRENT_RASTER_POSITION, rasterPosition);
            CPPUNIT_ASSERT_DOUBLES_EQUAL( 122, rasterPosition[0], 0.01);
            CPPUNIT_ASSERT_DOUBLES_EQUAL( 0.0, rasterPosition[1], 0.01);
        }