void UserInterface::RenderFilledTick() { GLFont *fillLabel = new GLFont(); fillLabel->Create("Fonts\\another_font.glf"); fillLabel->Begin(); glColor4f(1.0f, 1.0f, 1.0f, 1.0f); fillLabel->RenderText("Fill ", workArea_TL.GetX() + 10.0f, workArea_BR.GetY() - 400.0f, 0, 8); fillLabel->End(); delete fillLabel; glBegin(GL_QUADS); glColor3f(1.0f, 1.0f, 1.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 400.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 420.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 420.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 400.0f); glEnd(); if (fill) { glBegin(GL_QUADS); glColor3f(0.0f, 0.0f, 0.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 405.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 415.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 415.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 405.0f); glEnd(); } }
void UserInterface::RenderSpinTick() { GLFont *spinLabel = new GLFont(); spinLabel->Create("Fonts\\another_font.glf"); spinLabel->Begin(); glColor4f(1.0f, 1.0f, 1.0f, 1.0f); spinLabel->RenderText("Spin ", workArea_TL.GetX() + 10.0f, workArea_BR.GetY() - 350.0f, 0, 8); spinLabel->End(); delete spinLabel; glBegin(GL_QUADS); glColor3f(1.0f, 1.0f, 1.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 350.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 370.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 370.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 350.0f); glEnd(); if (spin) { glBegin(GL_QUADS); glColor3f(0.0f, 0.0f, 0.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 355.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 365.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 365.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 355.0f); glEnd(); } }
void SlideBar::RenderLabel() { GLFont *Label = new GLFont(); Label->Create("Fonts\\another_font.glf"); Label->Begin(); glColor3f(1.0f, 1.0f, 1.0f); Label->RenderText(ID, slideBarLX - 10.0f, slideBarLY + 30.0f, 0, 8.0f); Label->End(); delete Label; }
void UserInterface::RenderModelPicker() { //Renders the title GLFont *modelSelectorLabel = new GLFont(); modelSelectorLabel->Create("Fonts\\another_font.glf"); modelSelectorLabel->Begin(); glColor4f(1.0f, 1.0f, 1.0f, 1.0f); modelSelectorLabel->RenderText("Model Selector: ", workArea_TL.GetX() + 10.0f, workArea_BR.GetY() - 450.0f, 0, 8); modelSelectorLabel->End(); delete modelSelectorLabel; /////////////////////////////////////////////////////////////////////////////// GLFont *teapotLabel = new GLFont(); teapotLabel->Create("Fonts\\another_font.glf"); teapotLabel->Begin(); glColor4f(1.0f, 1.0f, 1.0f, 1.0f); teapotLabel->RenderText("Teapot ", workArea_TL.GetX() + 10.0f, workArea_BR.GetY() - 500.0f, 0, 8); teapotLabel->End(); delete teapotLabel; glBegin(GL_QUADS); glColor3f(1.0f, 1.0f, 1.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 500.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 520.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 520.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 500.0f); glEnd(); if (teapot) { glBegin(GL_QUADS); glColor3f(0.0f, 0.0f, 0.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 505.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 515.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 515.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 505.0f); glEnd(); } //Desmond GLFont *desmondLabel = new GLFont(); desmondLabel->Create("Fonts\\another_font.glf"); desmondLabel->Begin(); glColor4f(1.0f, 1.0f, 1.0f, 1.0f); desmondLabel->RenderText("Desmond Miles ", workArea_TL.GetX() + 10.0f, workArea_BR.GetY() - 550.0f, 0, 8); desmondLabel->End(); delete desmondLabel; glBegin(GL_QUADS); glColor3f(1.0f, 1.0f, 1.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 550.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 570.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 570.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 550.0f); glEnd(); if (desmond) { glBegin(GL_QUADS); glColor3f(0.0f, 0.0f, 0.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 555.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 565.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 565.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 555.0f); glEnd(); } //Teddy GLFont *teddyLabel = new GLFont(); teddyLabel->Create("Fonts\\another_font.glf"); teddyLabel->Begin(); glColor4f(1.0f, 1.0f, 1.0f, 1.0f); teddyLabel->RenderText("Teddy ", workArea_TL.GetX() + 10.0f, workArea_BR.GetY() - 600.0f, 0, 8); teddyLabel->End(); delete teddyLabel; glBegin(GL_QUADS); glColor3f(1.0f, 1.0f, 1.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 600.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 620.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 620.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 600.0f); glEnd(); if (teddy) { glBegin(GL_QUADS); glColor3f(0.0f, 0.0f, 0.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 605.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 615.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 615.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 605.0f); glEnd(); } //C3P0 GLFont *C3P0Label = new GLFont(); C3P0Label->Create("Fonts\\another_font.glf"); C3P0Label->Begin(); glColor4f(1.0f, 1.0f, 1.0f, 1.0f); C3P0Label->RenderText("C-3P0", workArea_TL.GetX() + 10.0f, workArea_BR.GetY() - 650.0f, 0, 8); C3P0Label->End(); delete C3P0Label; glBegin(GL_QUADS); glColor3f(1.0f, 1.0f, 1.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 650.0f); glVertex2f(workArea_TL.GetX() + 160.0f, workArea_BR.GetY() - 670.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 670.0f); glVertex2f(workArea_TL.GetX() + 180.0f, workArea_BR.GetY() - 650.0f); glEnd(); if (C3P0) { glBegin(GL_QUADS); glColor3f(0.0f, 0.0f, 0.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 655.0f); glVertex2f(workArea_TL.GetX() + 165.0f, workArea_BR.GetY() - 665.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 665.0f); glVertex2f(workArea_TL.GetX() + 175.0f, workArea_BR.GetY() - 655.0f); glEnd(); } }
void SlideBar::RenderValueDisplay() { glEnable(GL_BLEND); glBegin(GL_QUADS); glColor4f(1.0f, 1.0f, 1.0f, alpha); glVertex2f(slideBarRX + 10.0f, slideBarRY); glVertex2f(slideBarRX + 10.0f, slideBarRY - 15.0f); glVertex2f(slideBarRX + 69.0f, slideBarRY - 15.0f); glVertex2f(slideBarRX + 69.0f, slideBarRY); glEnd(); glBegin(GL_LINES); glColor4f(0.3f, 0.3f, 0.3f, alpha); glVertex2f(slideBarRX + 69.0f, slideBarRY + 1.0f); glVertex2f(slideBarRX + 9.0f, slideBarRY + 1.0f); glVertex2f(slideBarRX + 9.0f, slideBarRY + 1.0f); glVertex2f(slideBarRX + 9.0f, slideBarRY - 16.0f); glColor4f(0.8f, 0.8f, 0.8f, alpha); glVertex2f(slideBarRX + 9.0f, slideBarRY - 16.0f); glVertex2f(slideBarRX + 70.0f, slideBarRY - 16.0f); glVertex2f(slideBarRX + 70.0f, slideBarRY - 16.0f); glVertex2f(slideBarRX + 70.0f, slideBarRY + 1.0f); glEnd(); float percentage; //This gets the ratio of where the pointer is in relation to the left and right (X) of the total bar. if (slideBarLX >= 0) { percentage = ((spX - slideBarLX) / (slideBarRX - slideBarLX)) * 100; } else { percentage = ((spX + fabsf(slideBarLX)) / (slideBarRX - slideBarLX)) * 100; } //The slider happens to go above the bound by a float or two, this will be ignored as the value is set to the min/max bound by the mousemove function. //This will take over once the user puts the slider back in bounds. if (!belowLowerBound && !aboveUpperBound) { if (percentage == 0) { value = lowNumber; } else { //If the low number is below zero, it needs to be assumed as 0 until the end //To keep the correct range the absolute value of the low number is added to the high number //Then the absolute value of the low number is taken away at the end. if (lowNumber <= 0) { value = ((highNumber + fabsf(lowNumber)) - 0) * (percentage / 100) - fabsf(lowNumber); } else { value = (highNumber - lowNumber) * (percentage / 100); } } } std::ostringstream converter; converter << value; converter.precision(0); std::string valueString(converter.str()); GLFont *valueLabel = new GLFont(); valueLabel->Create("Fonts\\franklin_gothic.glf"); valueLabel->Begin(); glColor4f(0.0f, 0.0f, 0.0f, alpha); valueLabel->RenderText(valueString.c_str(), slideBarRX + 15.0f, slideBarRY, 0, 6); valueLabel->End(); delete valueLabel; }