Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qcapsulegeometry_p.h
Go to the documentation of this file.
1
// Copyright (C) 2022 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3
4
#ifndef CAPSULEGEOMETRY_H
5
#define CAPSULEGEOMETRY_H
6
7
//
8
// W A R N I N G
9
// -------------
10
//
11
// This file is not part of the Qt API. It exists purely as an
12
// implementation detail. This header file may change from version to
13
// version without notice, or even be removed.
14
//
15
// We mean it.
16
//
17
18
#include <QQuick3DGeometry>
19
20
QT_BEGIN_NAMESPACE
21
22
class
CapsuleGeometry
:
public
QQuick3DGeometry
23
{
24
Q_OBJECT
25
QML_NAMED_ELEMENT
(
CapsuleGeometry
)
26
Q_PROPERTY
(
bool
enableNormals
READ
enableNormals
WRITE
setEnableNormals
NOTIFY
27
enableNormalsChanged
)
28
Q_PROPERTY
(
bool
enableUV
READ
enableUV
WRITE
setEnableUV
NOTIFY
enableUVChanged
)
29
30
Q_PROPERTY
(
int
longitudes
READ
longitudes
WRITE
setLongitudes
NOTIFY
longitudesChanged
)
31
Q_PROPERTY
(
int
latitudes
READ
latitudes
WRITE
setLatitudes
NOTIFY
latitudesChanged
)
32
Q_PROPERTY
(
int
rings
READ
rings
WRITE
setRings
NOTIFY
ringsChanged
)
33
Q_PROPERTY
(
float
height
READ
height
WRITE
setHeight
NOTIFY
heightChanged
)
34
Q_PROPERTY
(
float
diameter
READ
diameter
WRITE
setDiameter
NOTIFY
diameterChanged
)
35
36
public:
37
CapsuleGeometry
();
38
39
bool
enableNormals
()
const
{
return
m_enableNormals; }
40
void
setEnableNormals
(
bool
enable
);
41
42
bool
enableUV
()
const
{
return
m_enableUV; }
43
void
setEnableUV
(
bool
enable
);
44
45
int
longitudes
()
const
{
return
m_longitudes; }
46
void
setLongitudes
(
int
longitudes
);
47
48
int
latitudes
()
const
{
return
m_latitudes; }
49
void
setLatitudes
(
int
latitudes
);
50
51
int
rings
()
const
{
return
m_rings; }
52
void
setRings
(
int
rings
);
53
54
float
height
()
const
{
return
m_height; }
55
void
setHeight
(
float
height
);
56
57
float
diameter
()
const
{
return
m_diameter; }
58
void
setDiameter
(
float
diameter
);
59
60
signals
:
61
void
enableNormalsChanged
();
62
void
enableUVChanged
();
63
void
longitudesChanged
();
64
void
latitudesChanged
();
65
void
ringsChanged
();
66
void
heightChanged
();
67
void
diameterChanged
();
68
69
private
:
70
enum class
UvProfile { Fixed, Aspect, Uniform };
71
72
void
updateData();
73
74
bool
m_enableNormals =
true
;
75
bool
m_enableUV =
false
;
76
77
// Number of longitudes, or meridians, distributed by azimuth
78
int
m_longitudes = 32;
79
// Number of latitudes, distributed by inclination. Must be even
80
int
m_latitudes = 16;
81
// Number of sections in cylinder between hemispheres
82
int
m_rings = 1;
83
// Height of the middle cylinder on the y axis, excluding the hemispheres
84
float
m_height = 100.f;
85
// Diameter on the xz plane
86
float
m_diameter = 100.f;
87
UvProfile m_uvProfile = UvProfile::Fixed;
88
};
89
90
QT_END_NAMESPACE
91
92
#endif
CapsuleGeometry
Definition
qcapsulegeometry_p.h:23
CapsuleGeometry::setLongitudes
void setLongitudes(int longitudes)
Definition
qcapsulegeometry.cpp:40
CapsuleGeometry::setEnableNormals
void setEnableNormals(bool enable)
Definition
qcapsulegeometry.cpp:18
CapsuleGeometry::latitudes
int latitudes
Definition
qcapsulegeometry_p.h:31
CapsuleGeometry::enableUV
bool enableUV
Definition
qcapsulegeometry_p.h:28
CapsuleGeometry::longitudes
int longitudes() const
Definition
qcapsulegeometry_p.h:45
CapsuleGeometry::latitudes
int latitudes() const
Definition
qcapsulegeometry_p.h:48
CapsuleGeometry::latitudesChanged
void latitudesChanged()
CapsuleGeometry::longitudesChanged
void longitudesChanged()
CapsuleGeometry::setHeight
void setHeight(float height)
Definition
qcapsulegeometry.cpp:73
CapsuleGeometry::ringsChanged
void ringsChanged()
CapsuleGeometry::setRings
void setRings(int rings)
Definition
qcapsulegeometry.cpp:62
CapsuleGeometry::diameterChanged
void diameterChanged()
CapsuleGeometry::enableUV
bool enableUV() const
Definition
qcapsulegeometry_p.h:42
CapsuleGeometry::diameter
float diameter
Definition
qcapsulegeometry_p.h:34
CapsuleGeometry::longitudes
int longitudes
Definition
qcapsulegeometry_p.h:30
CapsuleGeometry::enableUVChanged
void enableUVChanged()
CapsuleGeometry::rings
int rings() const
Definition
qcapsulegeometry_p.h:51
CapsuleGeometry::setLatitudes
void setLatitudes(int latitudes)
Definition
qcapsulegeometry.cpp:51
CapsuleGeometry::diameter
float diameter() const
Definition
qcapsulegeometry_p.h:57
CapsuleGeometry::rings
int rings
Definition
qcapsulegeometry_p.h:32
CapsuleGeometry::setEnableUV
void setEnableUV(bool enable)
Definition
qcapsulegeometry.cpp:29
CapsuleGeometry::enableNormalsChanged
void enableNormalsChanged()
CapsuleGeometry::height
float height() const
Definition
qcapsulegeometry_p.h:54
CapsuleGeometry::heightChanged
void heightChanged()
CapsuleGeometry::setDiameter
void setDiameter(float diameter)
Definition
qcapsulegeometry.cpp:84
CapsuleGeometry::enableNormals
bool enableNormals
Definition
qcapsulegeometry_p.h:27
QQuick3DGeometry
\qmltype Geometry \inherits Object3D \inqmlmodule QtQuick3D \instantiates QQuick3DGeometry
Definition
qquick3dgeometry.h:14
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qstandardpaths_haiku.cpp:21
QT_END_NAMESPACE
Definition
qsharedpointer.cpp:1590
height
GLint GLsizei GLsizei height
Definition
qopengles2ext.h:206
enable
GLboolean enable
Definition
qopengles2ext.h:855
QML_NAMED_ELEMENT
#define QML_NAMED_ELEMENT(NAME)
Definition
qqmlintegration.h:60
Q_PROPERTY
#define Q_PROPERTY(...)
Definition
qtmetamacros.h:56
Q_OBJECT
#define Q_OBJECT
Definition
qtmetamacros.h:119
signals
#define signals
Definition
qtmetamacros.h:41
qtquick3dphysics
src
helpers
qcapsulegeometry_p.h
Generated by
1.10.0