geometry: placeholder method for converting compounds to simple polygons [wip]

This commit is contained in:
Tomasz Wlostowski 2020-10-07 15:13:48 +02:00
parent 30f8cc1346
commit 7ffef32ea0
1 changed files with 64 additions and 62 deletions

View File

@ -30,13 +30,14 @@
#include <list>
#include <vector>
class SHAPE_SIMPLE;
class SHAPE_COMPOUND : public SHAPE
{
public:
SHAPE_COMPOUND() :
SHAPE( SH_COMPOUND ),
m_dirty( true )
{}
public:
SHAPE_COMPOUND() : SHAPE( SH_COMPOUND ), m_dirty( true )
{
}
SHAPE_COMPOUND( const std::vector<SHAPE*>& aShapes );
@ -70,7 +71,7 @@ class SHAPE_COMPOUND : public SHAPE
int Distance( const SEG& aSeg ) const;
void Move ( const VECTOR2I& aVector ) override;
void Move( const VECTOR2I& aVector ) override;
void AddShape( SHAPE* aShape )
{
@ -112,8 +113,9 @@ class SHAPE_COMPOUND : public SHAPE
aSubshapes = m_shapes;
}
private:
bool ConvertToSimplePolygon( SHAPE_SIMPLE* aOut ) const;
private:
BOX2I m_cachedBBox;
bool m_dirty;
std::vector<SHAPE*> m_shapes;