KiCad PCB EDA Suite
|
Go to the source code of this file.
Classes | |
class | SHAPE_INDEX< T > |
class | SHAPE_INDEX< T >::Iterator |
Functions | |
template<class T > | |
static const SHAPE * | shapeFunctor (T aItem, int aLayer) |
Used by SHAPE_INDEX to get a SHAPE* from another type. | |
template<class T > | |
BOX2I | boundingBox (T aObject, int aLayer) |
Used by SHAPE_INDEX to get the bounding box of a generic T object. | |
template<class T , class V > | |
void | acceptVisitor (T aObject, V aVisitor) |
Used by SHAPE_INDEX to implement Accept(). | |
template<class T , class U > | |
bool | collide (T aObject, U aAnotherObject, int aLayer, int aMinDistance) |
Used by SHAPE_INDEX to implement Query(). | |
template<class T , class V > | |
bool | queryCallback (T aShape, void *aContext) |
void acceptVisitor | ( | T | aObject, |
V | aVisitor | ||
) |
Used by SHAPE_INDEX to implement Accept().
By default relies on V::operation() redefinition, should be specialized if V class doesn't have its () operation defined to accept T objects.
aObject | is a generic T object. |
aVisitor | is a visitor object. |
Definition at line 79 of file shape_index.h.
Referenced by SHAPE_INDEX< T >::Accept().
BOX2I boundingBox | ( | T | aObject, |
int | aLayer | ||
) |
Used by SHAPE_INDEX to get the bounding box of a generic T object.
By default relies on T::BBox() method, should be specialized if the T object doesn't allow that method.
aObject | is a generic T object. |
Definition at line 62 of file shape_index.h.
References SHAPE::BBox(), and shapeFunctor().
Referenced by SHAPE_INDEX< T >::Add(), GRAPHICS_IMPORTER_BUFFER::ImportTo(), SCH_RULE_AREA::RefreshContainedItemsAndDirectives(), SHAPE_INDEX< T >::Reindex(), SHAPE_INDEX< T >::Remove(), and KIFONT::FONT::StringBoundaryLimits().
bool collide | ( | T | aObject, |
U | aAnotherObject, | ||
int | aLayer, | ||
int | aMinDistance | ||
) |
Used by SHAPE_INDEX to implement Query().
By default relies on T::Collide(U) method, should be specialized if the T object doesn't allow that method.
aObject | is a generic T object. |
aAnotherObject | is a generic U object. |
aLayer | is the layer to test |
aMinDistance | is the minimum collision distance. |
Definition at line 97 of file shape_index.h.
References SHAPE::Collide(), and shapeFunctor().
Referenced by AUTOPLACER::chooseSideFiltered().
bool queryCallback | ( | T | aShape, |
void * | aContext | ||
) |
Definition at line 103 of file shape_index.h.
|
static |
Used by SHAPE_INDEX to get a SHAPE* from another type.
By default relies on T::GetShape() method, should be specialized if the T object doesn't allow that method.
aItem | generic T object. |
Definition at line 47 of file shape_index.h.
Referenced by boundingBox(), and collide().