Blender
V2.93
source
blender
freestyle
intern
view_map
ArbitraryGridDensityProvider.h
Go to the documentation of this file.
1
/*
2
* This program is free software; you can redistribute it and/or
3
* modify it under the terms of the GNU General Public License
4
* as published by the Free Software Foundation; either version 2
5
* of the License, or (at your option) any later version.
6
*
7
* This program is distributed in the hope that it will be useful,
8
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
* GNU General Public License for more details.
11
*
12
* You should have received a copy of the GNU General Public License
13
* along with this program; if not, write to the Free Software Foundation,
14
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15
*/
16
17
#pragma once
18
24
#include "
GridDensityProvider.h
"
25
26
namespace
Freestyle
{
27
28
class
ArbitraryGridDensityProvider
:
public
GridDensityProvider
{
29
// Disallow copying and assignment
30
ArbitraryGridDensityProvider
(
const
ArbitraryGridDensityProvider
&other);
31
ArbitraryGridDensityProvider
&operator=(
const
ArbitraryGridDensityProvider
&other);
32
33
public
:
34
ArbitraryGridDensityProvider
(
OccluderSource
&
source
,
35
const
real
proscenium[4],
36
unsigned
numCells
);
37
ArbitraryGridDensityProvider
(
OccluderSource
&
source
,
38
const
BBox<Vec3r>
&bbox,
39
const
GridHelpers::Transform
&
transform
,
40
unsigned
numCells
);
41
ArbitraryGridDensityProvider
(
OccluderSource
&
source
,
unsigned
numCells
);
42
43
protected
:
44
unsigned
numCells
;
45
46
private
:
47
void
initialize(
const
real
proscenium[4]);
48
};
49
50
class
ArbitraryGridDensityProviderFactory
:
public
GridDensityProviderFactory
{
51
public
:
52
ArbitraryGridDensityProviderFactory
(
unsigned
numCells
);
53
54
AutoPtr<GridDensityProvider>
newGridDensityProvider
(
OccluderSource
&source,
55
const
real
proscenium[4]);
56
AutoPtr<GridDensityProvider>
newGridDensityProvider
(
OccluderSource
&source,
57
const
BBox<Vec3r>
&bbox,
58
const
GridHelpers::Transform
&
transform
);
59
AutoPtr<GridDensityProvider>
newGridDensityProvider
(
OccluderSource
&source);
60
61
protected
:
62
unsigned
numCells
;
63
};
64
65
}
/* namespace Freestyle */
GridDensityProvider.h
Class to define a cell grid surrounding the projected image of a scene.
transform
SIMD_FORCE_INLINE btVector3 transform(const btVector3 &point) const
Definition:
btBoxCollision.h:205
Freestyle::ArbitraryGridDensityProviderFactory
Definition:
ArbitraryGridDensityProvider.h:50
Freestyle::ArbitraryGridDensityProviderFactory::ArbitraryGridDensityProviderFactory
ArbitraryGridDensityProviderFactory(unsigned numCells)
Definition:
ArbitraryGridDensityProvider.cpp:93
Freestyle::ArbitraryGridDensityProviderFactory::numCells
unsigned numCells
Definition:
ArbitraryGridDensityProvider.h:62
Freestyle::ArbitraryGridDensityProviderFactory::newGridDensityProvider
AutoPtr< GridDensityProvider > newGridDensityProvider(OccluderSource &source, const real proscenium[4])
Definition:
ArbitraryGridDensityProvider.cpp:98
Freestyle::ArbitraryGridDensityProvider
Definition:
ArbitraryGridDensityProvider.h:28
Freestyle::ArbitraryGridDensityProvider::numCells
unsigned numCells
Definition:
ArbitraryGridDensityProvider.h:44
Freestyle::AutoPtr
Definition:
AutoPtrHelper.h:28
Freestyle::BBox
Definition:
BBox.h:35
Freestyle::GridDensityProviderFactory
Definition:
GridDensityProvider.h:139
Freestyle::GridDensityProvider
Definition:
GridDensityProvider.h:41
Freestyle::GridDensityProvider::source
OccluderSource & source
Definition:
GridDensityProvider.h:129
Freestyle::GridHelpers::Transform
Definition:
GridHelpers.h:116
Freestyle::OccluderSource
Definition:
OccluderSource.h:34
Freestyle
inherits from class Rep
Definition:
AppCanvas.cpp:32
Freestyle::real
double real
Definition:
Precision.h:26
Generated on Tue Jan 31 2023 14:37:24 for Blender by
doxygen
1.9.1