Mercurial > hg > orthanc-stone
comparison OrthancStone/Sources/Scene2D/Internals/OpenGLLinesProgram.cpp @ 1576:92fca2b3ba3d
sanitizing the handling of canvas size
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 24 Sep 2020 16:40:30 +0200 |
parents | 244ad1e4e76a |
children | 4fb8fdf03314 |
comparison
equal
deleted
inserted
replaced
1575:e4a52cbbdd70 | 1576:92fca2b3ba3d |
---|---|
413 } | 413 } |
414 } | 414 } |
415 | 415 |
416 void OpenGLLinesProgram::Apply(const Data& data, | 416 void OpenGLLinesProgram::Apply(const Data& data, |
417 const AffineTransform2D& transform, | 417 const AffineTransform2D& transform, |
418 unsigned int canvasWidth, | |
419 unsigned int canvasHeight, | |
418 bool antialiasing, | 420 bool antialiasing, |
419 bool scaleIndependantThickness) | 421 bool scaleIndependantThickness) |
420 { | 422 { |
421 if (!context_.IsContextLost() && !data.IsEmpty()) | 423 if (!context_.IsContextLost() && !data.IsEmpty()) |
422 { | 424 { |
426 GLint locationPosition = program_->GetAttributeLocation("a_position"); | 428 GLint locationPosition = program_->GetAttributeLocation("a_position"); |
427 GLint locationMiterDirection = program_->GetAttributeLocation("a_miter_direction"); | 429 GLint locationMiterDirection = program_->GetAttributeLocation("a_miter_direction"); |
428 GLint locationColor = program_->GetAttributeLocation("a_color"); | 430 GLint locationColor = program_->GetAttributeLocation("a_color"); |
429 | 431 |
430 float m[16]; | 432 float m[16]; |
431 transform.ConvertToOpenGLMatrix(m, context_.GetCanvasWidth(), context_.GetCanvasHeight()); | 433 transform.ConvertToOpenGLMatrix(m, canvasWidth, canvasHeight); |
432 | 434 |
433 glUniformMatrix4fv(program_->GetUniformLocation("u_matrix"), 1, GL_FALSE, m); | 435 glUniformMatrix4fv(program_->GetUniformLocation("u_matrix"), 1, GL_FALSE, m); |
434 | 436 |
435 glBindBuffer(GL_ARRAY_BUFFER, data.GetVerticesBuffer()); | 437 glBindBuffer(GL_ARRAY_BUFFER, data.GetVerticesBuffer()); |
436 glEnableVertexAttribArray(locationPosition); | 438 glEnableVertexAttribArray(locationPosition); |