Blender  V3.3
OccluderSource.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #pragma once
4 
10 #include "../geometry/GridHelpers.h"
11 
12 #include "../winged_edge/WEdge.h"
13 
14 #ifdef WITH_CXX_GUARDEDALLOC
15 # include "MEM_guardedalloc.h"
16 #endif
17 
18 namespace Freestyle {
19 
21  // Disallow copying and assignment
22  OccluderSource(const OccluderSource &other);
23  OccluderSource &operator=(const OccluderSource &other);
24 
25  public:
27  virtual ~OccluderSource();
28 
29  void begin();
30  virtual bool next();
31  bool isValid();
32 
33  WFace *getWFace();
36 
37  virtual void getOccluderProscenium(real proscenium[4]);
38  virtual real averageOccluderArea();
39 
40  protected:
42  vector<WShape *>::const_iterator currentShape, shapesEnd;
43  vector<WFace *>::const_iterator currentFace, facesEnd;
44 
45  bool valid;
46 
49 
50  void buildCachedPolygon();
51 
52 #ifdef WITH_CXX_GUARDEDALLOC
53  MEM_CXX_CLASS_ALLOC_FUNCS("Freestyle:OccluderSource")
54 #endif
55 };
56 
57 } /* namespace Freestyle */
Read Guarded memory(de)allocation.
vector< WFace * >::const_iterator currentFace
vector< WFace * >::const_iterator facesEnd
virtual real averageOccluderArea()
virtual void getOccluderProscenium(real proscenium[4])
Polygon3r & getGridSpacePolygon()
vector< WShape * >::const_iterator shapesEnd
vector< WShape * >::const_iterator currentShape
const GridHelpers::Transform & transform
inherits from class Rep
Definition: AppCanvas.cpp:18
double real
Definition: Precision.h:12