Blender V4.3
OccluderSource.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
13
15
16#ifdef WITH_CXX_GUARDEDALLOC
17# include "MEM_guardedalloc.h"
18#endif
19
20namespace Freestyle {
21
23 // Disallow copying and assignment
24 OccluderSource(const OccluderSource &other);
25 OccluderSource &operator=(const OccluderSource &other);
26
27 public:
29 virtual ~OccluderSource();
30
31 void begin();
32 virtual bool next();
33 bool isValid();
34
35 WFace *getWFace();
38
39 virtual void getOccluderProscenium(real proscenium[4]);
40 virtual real averageOccluderArea();
41
42 protected:
44 vector<WShape *>::const_iterator currentShape, shapesEnd;
45 vector<WFace *>::const_iterator currentFace, facesEnd;
46
47 bool valid;
48
51
52 void buildCachedPolygon();
53
54#ifdef WITH_CXX_GUARDEDALLOC
55 MEM_CXX_CLASS_ALLOC_FUNCS("Freestyle:OccluderSource")
56#endif
57};
58
59} /* namespace Freestyle */
Class to define a cell grid surrounding the projected image of a scene.
Read Guarded memory(de)allocation.
Classes to define a Winged Edge data structure.
vector< WFace * >::const_iterator facesEnd
virtual void getOccluderProscenium(real proscenium[4])
vector< WShape * >::const_iterator currentShape
vector< WShape * >::const_iterator shapesEnd
vector< WFace * >::const_iterator currentFace
const GridHelpers::Transform & transform
inherits from class Rep
Definition AppCanvas.cpp:20
double real
Definition Precision.h:14