

Public Member Functions | |
| CenteredAlignedTextGL () | |
| void | drawTextContent (GL gl, SciTextRenderer renderer, StringMatrixGL text, TextGrid positionMatrix, double angle) |
Definition at line 27 of file CenteredAlignedTextGL.java.
| org::scilab::modules::renderer::textDrawing::CenteredAlignedTextGL::CenteredAlignedTextGL | ( | ) | [inline] |
| void org::scilab::modules::renderer::textDrawing::CenteredAlignedTextGL::drawTextContent | ( | GL | gl, | |
| SciTextRenderer | renderer, | |||
| StringMatrixGL | text, | |||
| TextGrid | positionMatrix, | |||
| double | angle | |||
| ) | [inline, virtual] |
Draw the text matrix inside a position matrix using a specific text renderer.
| gl | current OpenGL pipeline | |
| renderer | renderer to use for drawing | |
| text | matrix of strings | |
| positionMatrix | matrix of positions. | |
| angle | angle of the text to draw |
Implements org::scilab::modules::renderer::textDrawing::TextAlignementStrategy.
Definition at line 44 of file CenteredAlignedTextGL.java.
References org::scilab::modules::renderer::utils::textRendering::SciTextRenderer::begin3DRendering(), org::scilab::modules::renderer::textDrawing::TextAlignementStrategy::centerX(), org::scilab::modules::renderer::utils::textRendering::SciTextRenderer::draw3D(), org::scilab::modules::renderer::utils::textRendering::SciTextRenderer::end3DRendering(), org::scilab::modules::renderer::textDrawing::TextGrid::getCellCoordinates(), org::scilab::modules::renderer::textDrawing::StringMatrix::getMatrixElement(), org::scilab::modules::renderer::textDrawing::StringMatrix::getNbCol(), org::scilab::modules::renderer::textDrawing::StringMatrix::getNbRow(), org::scilab::modules::renderer::textDrawing::StringMatrixGL::getStringWidth(), org::scilab::modules::renderer::utils::geom3D::Vector3D::getX(), org::scilab::modules::renderer::textDrawing::TextAlignementStrategy::getYCoordinate(), org::scilab::modules::renderer::utils::geom3D::Vector3D::getZ(), i, and j.
00045 { 00046 renderer.begin3DRendering(); 00047 for (int i = 0; i < text.getNbRow(); i++) { 00048 for (int j = 0; j < text.getNbCol(); j++) { 00049 Vector3D[] curCell = positionMatrix.getCellCoordinates(i, j); 00050 // put the middle of the string in the middle of the cell 00051 double xCoord = ((curCell[2].getX() + curCell[1].getX()) - text.getStringWidth(i, j)) / 2.0; 00052 xCoord = centerX(xCoord); 00053 double yCoord = getYCoordinate(curCell); 00054 renderer.draw3D(gl, text.getMatrixElement(i, j), xCoord, 00055 yCoord, curCell[1].getZ(), angle); 00056 } 00057 } 00058 00059 renderer.end3DRendering(); 00060 00061 }

1.5.5