QGIS API Documentation
3.16.0-Hannover (43b64b13f3)
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
w
z
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
w
z
Variables
Typedefs
Enumerations
Enumerator
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
2
3
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
2
3
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
c
e
f
g
h
k
l
m
o
p
r
s
t
u
v
w
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
y
z
Related Functions
3
a
c
d
e
f
g
i
l
m
n
o
p
q
r
s
t
v
Files
File List
File Members
All
3
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
z
Variables
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
w
Typedefs
3
a
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
Enumerations
Enumerator
c
l
s
t
Macros
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
w
y
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
src
3d
materials
qgsmaterialregistry.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
qgsmaterialregistry.cpp
3
--------------------------------------
4
Date : July 2020
5
Copyright : (C) 2020 by Nyall Dawson
6
Email : nyall dot dawson at gmail dot com
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
16
#include "
qgsmaterialregistry.h
"
17
#include "
qgsabstractmaterialsettings.h
"
18
19
QgsMaterialRegistry::QgsMaterialRegistry
()
20
{
21
}
22
23
QgsMaterialRegistry::~QgsMaterialRegistry
()
24
{
25
qDeleteAll( mMetadata );
26
}
27
28
bool
QgsMaterialRegistry::addMaterialSettingsType
(
QgsMaterialSettingsAbstractMetadata
*metadata )
29
{
30
if
( !metadata || mMetadata.contains( metadata->
type
() ) )
31
return
false
;
32
33
mMetadata[metadata->
type
()] = metadata;
34
return
true
;
35
}
36
37
QgsAbstractMaterialSettings
*
QgsMaterialRegistry::createMaterialSettings
(
const
QString &type )
const
38
{
39
if
( !mMetadata.contains( type ) )
40
return
nullptr
;
41
42
return
mMetadata[type]->create();
43
}
44
45
QgsMaterialSettingsAbstractMetadata
*
QgsMaterialRegistry::materialSettingsMetadata
(
const
QString &type )
const
46
{
47
return
mMetadata.value( type );
48
}
49
50
QStringList
QgsMaterialRegistry::materialSettingsTypes
()
const
51
{
52
return
mMetadata.keys();
53
}
QgsMaterialRegistry::materialSettingsMetadata
QgsMaterialSettingsAbstractMetadata * materialSettingsMetadata(const QString &type) const
Returns metadata for specified material settings type. Returns nullptr if not found.
Definition:
qgsmaterialregistry.cpp:45
QgsMaterialRegistry::materialSettingsTypes
QStringList materialSettingsTypes() const
Returns a list of all available material settings types.
Definition:
qgsmaterialregistry.cpp:50
qgsmaterialregistry.h
QgsMaterialSettingsAbstractMetadata::type
QString type() const
Returns the unique material type string.
Definition:
qgsmaterialregistry.h:60
QgsMaterialSettingsAbstractMetadata
Stores metadata about one 3D material settings class.
Definition:
qgsmaterialregistry.h:41
qgsabstractmaterialsettings.h
QgsMaterialRegistry::createMaterialSettings
QgsAbstractMaterialSettings * createMaterialSettings(const QString &type) const
Creates a new instance of the material settings of the specified type.
Definition:
qgsmaterialregistry.cpp:37
QgsAbstractMaterialSettings
3 Abstract base class for material settings.
Definition:
qgsabstractmaterialsettings.h:105
QgsMaterialRegistry::~QgsMaterialRegistry
~QgsMaterialRegistry()
Definition:
qgsmaterialregistry.cpp:23
QgsMaterialRegistry::addMaterialSettingsType
bool addMaterialSettingsType(QgsMaterialSettingsAbstractMetadata *metadata)
Registers a new material settings type. Takes ownership of the metadata instance.
Definition:
qgsmaterialregistry.cpp:28
QgsMaterialRegistry::QgsMaterialRegistry
QgsMaterialRegistry()
Definition:
qgsmaterialregistry.cpp:19
Generated on Sat Oct 24 2020 17:43:09 for QGIS API Documentation by
1.8.20