QGIS API Documentation 3.32.0-Lima (311a8cb8a6)
qgspointcloudblock.h
Go to the documentation of this file.
1/***************************************************************************
2 qgspointcloudblock.h
3 ---------------------
4 begin : October 2020
5 copyright : (C) 2020 by Peter Petrik
6 email : zilolv at gmail dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSPOINTCLOUDBLOCK_H
19#define QGSPOINTCLOUDBLOCK_H
20
21#include "qgis.h"
22#include "qgis_core.h"
23#include <QPair>
24#include <QString>
25#include <QVector>
26#include <QByteArray>
27
29
38class CORE_EXPORT QgsPointCloudBlock
39{
40 public:
42 QgsPointCloudBlock( int count,
43 const QgsPointCloudAttributeCollection &attributes,
44 const QByteArray &data, const QgsVector3D &scale, const QgsVector3D &offset );
46 virtual ~QgsPointCloudBlock() = default;
47
49 const char *data() const;
50
52 int pointCount() const;
53
59 int pointRecordSize() const { return mRecordSize; }
60
62 QgsPointCloudAttributeCollection attributes() const;
63
65 QgsVector3D scale() const;
66
68 QgsVector3D offset() const;
69
77 void setPointCount( int size );
78
79 private:
80
81 int mPointCount = 0;
83 int mRecordSize = 0;
84 QByteArray mStorage;
85 QgsVector3D mScale, mOffset;
86};
87
88
89#endif // QGSPOINTCLOUDBLOCK_H
Collection of point cloud attributes.
Base class for storing raw data from point cloud nodes.
virtual ~QgsPointCloudBlock()=default
Dtor.
int pointRecordSize() const
Returns the total size of each individual point record.