Krita Source Code Documentation
Loading...
Searching...
No Matches
KisSpatialContainer::SpatialNode Struct Reference

Classes

struct  SpatialNodeData
 

Public Member Functions

int childIndexForPoint (QPointF position)
 
 SpatialNode ()
 
 ~SpatialNode ()
 

Public Attributes

QVector< SpatialNode * > children = {}
 
bool isLeaf {true}
 
QRectF maximumArea
 
int nodeId {-1}
 
int pointsCount {0}
 
QVector< SpatialNodeDatapointsData = {}
 
qreal xPartition {0.0}
 
qreal yPartition {0.0}
 

Detailed Description

Definition at line 38 of file KisSpatialContainer.cpp.

Constructor & Destructor Documentation

◆ SpatialNode()

KisSpatialContainer::SpatialNode::SpatialNode ( )
inline

Definition at line 54 of file KisSpatialContainer.cpp.

54{children = {}; pointsData = {};}
QVector< SpatialNodeData > pointsData

References children, and pointsData.

◆ ~SpatialNode()

KisSpatialContainer::SpatialNode::~SpatialNode ( )
inline

Definition at line 55 of file KisSpatialContainer.cpp.

References nodeId.

Member Function Documentation

◆ childIndexForPoint()

int KisSpatialContainer::SpatialNode::childIndexForPoint ( QPointF position)

Definition at line 713 of file KisSpatialContainer.cpp.

714{
715 if (position.x() > xPartition) {
716 if (position.y() > yPartition) {
717 return 0;
718 }
719 return 1;
720 } else {
721 if (position.y() > yPartition) {
722 return 2;
723 }
724 return 3;
725 }
726}

References xPartition, and yPartition.

Member Data Documentation

◆ children

QVector<SpatialNode*> KisSpatialContainer::SpatialNode::children = {}

Definition at line 62 of file KisSpatialContainer.cpp.

62{}; // four children // the instance is owned by the parent

◆ isLeaf

bool KisSpatialContainer::SpatialNode::isLeaf {true}

Definition at line 67 of file KisSpatialContainer.cpp.

67{true};

◆ maximumArea

QRectF KisSpatialContainer::SpatialNode::maximumArea

Definition at line 71 of file KisSpatialContainer.cpp.

◆ nodeId

int KisSpatialContainer::SpatialNode::nodeId {-1}

Definition at line 73 of file KisSpatialContainer.cpp.

73{-1};

◆ pointsCount

int KisSpatialContainer::SpatialNode::pointsCount {0}

Definition at line 66 of file KisSpatialContainer.cpp.

66{0};

◆ pointsData

QVector<SpatialNodeData> KisSpatialContainer::SpatialNode::pointsData = {}

Definition at line 61 of file KisSpatialContainer.cpp.

61{};

◆ xPartition

qreal KisSpatialContainer::SpatialNode::xPartition {0.0}

Definition at line 63 of file KisSpatialContainer.cpp.

63{0.0};

◆ yPartition

qreal KisSpatialContainer::SpatialNode::yPartition {0.0}

Definition at line 64 of file KisSpatialContainer.cpp.

64{0.0};

The documentation for this struct was generated from the following file: