summaryrefslogtreecommitdiffstats
path: root/src/extras/3dtext/qextrudedtextgeometry.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/extras/3dtext/qextrudedtextgeometry.cpp')
-rw-r--r--src/extras/3dtext/qextrudedtextgeometry.cpp17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/extras/3dtext/qextrudedtextgeometry.cpp b/src/extras/3dtext/qextrudedtextgeometry.cpp
index 1c9208ea9..c353bf62c 100644
--- a/src/extras/3dtext/qextrudedtextgeometry.cpp
+++ b/src/extras/3dtext/qextrudedtextgeometry.cpp
@@ -130,7 +130,7 @@ TriangulationData triangulate(const QString &text, const QFont &font)
result.indices.resize(result.indices.size() + size_t(triangles.indices.size()));
memcpy(&result.indices[prevNumIndices], triangles.indices.data(), size_t(triangles.indices.size()) * sizeof(IndexType));
for (size_t i = prevNumIndices, m = result.indices.size(); i < m; ++i)
- result.indices[i] += result.vertices.size();
+ result.indices[i] += IndexType(result.vertices.size());
// Append new triangles to result.vertices
result.vertices.reserve(size_t(triangles.vertices.size()) / 2);
@@ -307,7 +307,7 @@ void QExtrudedTextGeometryPrivate::update()
TriangulationData data = triangulate(m_text, m_font);
- const size_t numVertices = data.vertices.size();
+ const IndexType numVertices = IndexType(data.vertices.size());
const size_t numIndices = data.indices.size();
struct Vertex {
@@ -327,7 +327,8 @@ void QExtrudedTextGeometryPrivate::update()
vertices.push_back({ QVector3D(v.x(), v.y(), m_depth), // vertex
QVector3D(0.0f, 0.0f, 1.0f) }); // normal
- for (size_t i = 0, verticesIndex = vertices.size(); i < data.outlines.size(); ++i) {
+ int verticesIndex = int(vertices.size());
+ for (size_t i = 0; i < data.outlines.size(); ++i) {
const int begin = data.outlines[i].begin;
const int end = data.outlines[i].end;
const int verticesIndexBegin = verticesIndex;
@@ -380,12 +381,12 @@ void QExtrudedTextGeometryPrivate::update()
memcpy(data.data(), vertices.data(), vertices.size() * sizeof(Vertex));
m_vertexBuffer->setData(data);
- m_positionAttribute->setCount(vertices.size());
- m_normalAttribute->setCount(vertices.size());
+ m_positionAttribute->setCount(int(vertices.size()));
+ m_normalAttribute->setCount(int(vertices.size()));
}
// resize for following insertions
- const int indicesOffset = indices.size();
+ const int indicesOffset = int(indices.size());
indices.resize(indices.size() + numIndices * 2);
// copy values for back faces
@@ -405,7 +406,7 @@ void QExtrudedTextGeometryPrivate::update()
memcpy(data.data(), indices.data(), indices.size() * sizeof(IndexType));
m_indexBuffer->setData(data);
- m_indexAttribute->setCount(indices.size());
+ m_indexAttribute->setCount(uint(indices.size()));
}
}
@@ -512,3 +513,5 @@ Qt3DCore::QAttribute *QExtrudedTextGeometry::indexAttribute() const
} // Qt3DExtras
QT_END_NAMESPACE
+
+#include "moc_qextrudedtextgeometry.cpp"