Geometrize  1.0
An application for geometrizing images into geometric primitives
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros
Public Member Functions | Private Attributes | List of all members
geometrize::scene::ImageTaskSvgScene::ImageTaskSvgSceneImpl Class Reference
Collaboration diagram for geometrize::scene::ImageTaskSvgScene::ImageTaskSvgSceneImpl:
Collaboration graph
[legend]

Public Member Functions

 ImageTaskSvgSceneImpl (ImageTaskSvgScene *pQ)
 
ImageTaskSvgSceneImpl operator= (const ImageTaskSvgSceneImpl &)=delete
 
 ImageTaskSvgSceneImpl (const ImageTaskSvgSceneImpl &)=delete
 
 ~ImageTaskSvgSceneImpl ()=default
 
void addShapes (const std::vector< geometrize::ShapeResult > &shapes, const std::uint32_t width, const std::uint32_t height)
 
void removeShapes ()
 

Private Attributes

ImageTaskSvgSceneq
 

Constructor & Destructor Documentation

geometrize::scene::ImageTaskSvgScene::ImageTaskSvgSceneImpl::ImageTaskSvgSceneImpl ( ImageTaskSvgScene pQ)
inline
24  : q{pQ}
25  {
26  }
ImageTaskSvgScene * q
Definition: imagetasksvgscene.cpp:57
geometrize::scene::ImageTaskSvgScene::ImageTaskSvgSceneImpl::ImageTaskSvgSceneImpl ( const ImageTaskSvgSceneImpl )
delete
geometrize::scene::ImageTaskSvgScene::ImageTaskSvgSceneImpl::~ImageTaskSvgSceneImpl ( )
default

Member Function Documentation

void geometrize::scene::ImageTaskSvgScene::ImageTaskSvgSceneImpl::addShapes ( const std::vector< geometrize::ShapeResult > &  shapes,
const std::uint32_t  width,
const std::uint32_t  height 
)
inline
32  {
33  if(shapes.empty()) {
34  return;
35  }
36 
37  const QString svgString{QString::fromStdString(geometrize::exporter::exportSVG(shapes, width, height))};
38  const QByteArray svgData{svgString.toUtf8()};
39  auto svgItem = new SvgItem(svgData);
40  svgItem->setFlags(QGraphicsItem::ItemClipsToShape);
41  svgItem->setCacheMode(QGraphicsItem::NoCache);
42  q->addItem(svgItem);
43  svgItem->setZValue(0);
44  }
ImageTaskSvgScene * q
Definition: imagetasksvgscene.cpp:57
ImageTaskSvgSceneImpl geometrize::scene::ImageTaskSvgScene::ImageTaskSvgSceneImpl::operator= ( const ImageTaskSvgSceneImpl )
delete
void geometrize::scene::ImageTaskSvgScene::ImageTaskSvgSceneImpl::removeShapes ( )
inline
47  {
48  const auto items = q->items();
49  for(auto& item : items) {
50  if(dynamic_cast<SvgItem*>(item) != nullptr) {
51  q->removeItem(item);
52  }
53  }
54  }
ImageTaskSvgScene * q
Definition: imagetasksvgscene.cpp:57

Member Data Documentation

ImageTaskSvgScene* geometrize::scene::ImageTaskSvgScene::ImageTaskSvgSceneImpl::q
private

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