X-Git-Url: https://git.ucc.asn.au/?p=ipdf%2Fcode.git;a=blobdiff_plain;f=src%2Fdocument.cpp;h=7c490742086327484c26a5b4bbe0b9d39dc7ba04;hp=c97aa56ee3cc0c7355d66232d54a680889d7e8a3;hb=e63e9c9efda937cb9e2bb60e52cfd07c69c68d27;hpb=666fa863baba6345fa5cf66711e9149b5d06b825 diff --git a/src/document.cpp b/src/document.cpp index c97aa56..7c49074 100644 --- a/src/document.cpp +++ b/src/document.cpp @@ -90,9 +90,9 @@ void Document::Save(const string & filename) void Document::GenBaseQuadtree() { - m_quadtree.nodes.push_back(QuadTreeNode{QUADTREE_EMPTY, 1, QUADTREE_EMPTY, QUADTREE_EMPTY, QUADTREE_EMPTY, QTC_UNKNOWN, 0, 1}); - m_quadtree.nodes.push_back(QuadTreeNode{QUADTREE_EMPTY, QUADTREE_EMPTY, QUADTREE_EMPTY, QUADTREE_EMPTY, QUADTREE_EMPTY, QTC_UNKNOWN, 1, ObjectCount()}); + m_quadtree.nodes.push_back(QuadTreeNode{QUADTREE_EMPTY, QUADTREE_EMPTY, QUADTREE_EMPTY, QUADTREE_EMPTY, QUADTREE_EMPTY, QTC_UNKNOWN, 0, ObjectCount()}); m_quadtree.root_id = 0; + GenQuadNode(0, QTC_TOP_LEFT); } QuadTreeIndex Document::GenQuadNode(QuadTreeIndex parent, QuadTreeNodeChildren type) @@ -108,6 +108,7 @@ QuadTreeIndex Document::GenQuadNode(QuadTreeIndex parent, QuadTreeNodeChildren t m_objects.bounds.push_back(TransformToQuadChild(m_objects.bounds[i], type)); m_objects.types.push_back(m_objects.types[i]); m_objects.data_indices.push_back(m_objects.data_indices[i]); + m_count++; } } m_quadtree.nodes[new_index].object_end = m_objects.bounds.size(); @@ -397,6 +398,8 @@ void Document::AddPathFromString(const string & d, const Rect & bounds) x[2] = x[1]; y[2] = y[1]; + + Rect segment_bounds(x[0], y[0], x[2] - x[0], y[2] - y[0]); unsigned index = AddBezierData(Bezier(x[0],y[0],x[1],y[1],x[2],y[2])); Add(BEZIER,bounds,index);