-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathCloudWorker.h
45 lines (32 loc) · 915 Bytes
/
CloudWorker.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
//-----------------------------------------------------------
// Copyright (C) 2019 Piotr (Peter) Beben <[email protected]>
// See LICENSE included with this distribution.
#ifndef RECONSTRUCTTHREAD_H
#define RECONSTRUCTTHREAD_H
#include "constants.h"
#include <QMutex>
#include <QObject>
class Cloud;
class BoundBox;
class CloudWorker : public QObject
{
Q_OBJECT
public:
explicit CloudWorker(
Cloud& cloud, QObject *parent = nullptr);
~CloudWorker();
public slots:
void approxCloudNorms(int nIters, size_t kNN);
void decimateCloud(size_t nHoles, size_t kNN);
void sparsifyCloud(float percent);
void reconstructCloud(
int kSVDIters, size_t kNN, size_t nfreq, float densify,
size_t natm, size_t latm, size_t maxNewPoints, bool looseBBox,
SparseApprox method);
signals:
void finished(bool updateBBox);
private:
Cloud *m_cloud;
QMutex m_mutex;
};
#endif // RECONSTRUCTTHREAD_H