ZLayout EDA Library v1.0.0
Advanced Electronic Design Automation Layout Library with Bilingual Documentation
Loading...
Searching...
No Matches
quadtree.hpp File Reference

QuadTree spatial indexing for efficient geometric queries. More...

#include <zlayout/geometry/point.hpp>
#include <zlayout/geometry/rectangle.hpp>
#include <vector>
#include <memory>
#include <functional>
#include <string>
#include <mutex>
#include <algorithm>
Include dependency graph for quadtree.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  zlayout::spatial::QuadTreeNode< T >
 A node in the quadtree structure. More...
class  zlayout::spatial::QuadTree< T >
 Quadtree spatial index for efficient range and intersection queries. More...
struct  zlayout::spatial::QuadTree< T >::Statistics
 Get tree statistics for performance analysis. More...
class  zlayout::spatial::QuadTree< T >::Iterator
 Iterator support for tree traversal. More...
struct  zlayout::spatial::QuadTree< T >::DetailedStatistics
 Get detailed tree statistics. More...

Namespaces

namespace  zlayout
 Main namespace for ZLayout library.
namespace  zlayout::spatial

Typedefs

using zlayout::spatial::RectangleQuadTree = QuadTree<geometry::Rectangle>
 QuadTree specialized for Rectangle objects.
using zlayout::spatial::PointQuadTree = QuadTree<geometry::Point>
 QuadTree specialized for Point objects (using Point as both object and bounding box)

Functions

std::unique_ptr< RectangleQuadTreezlayout::spatial::create_rectangle_quadtree (const geometry::Rectangle &boundary, size_t capacity=10, size_t max_depth=8)
 Create QuadTree for rectangles with default bounding box function.
std::unique_ptr< PointQuadTreezlayout::spatial::create_point_quadtree (const geometry::Rectangle &boundary, size_t capacity=10, size_t max_depth=8)
 Create QuadTree for points with default bounding box function.

Detailed Description

QuadTree spatial indexing for efficient geometric queries.

Definition in file quadtree.hpp.