Blender  V3.3
WSFillGrid.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #pragma once
4 
10 #include "WEdge.h"
11 
12 #include "../geometry/Grid.h"
13 #include "../geometry/Polygon.h"
14 
15 namespace Freestyle {
16 
17 class WSFillGrid {
18  public:
19  inline WSFillGrid(Grid *grid = NULL, WingedEdge *winged_edge = NULL)
20  {
21  _winged_edge = winged_edge;
22  _grid = grid;
23  _polygon_id = 0;
24  }
25 
26  virtual ~WSFillGrid()
27  {
28  }
29 
30  void fillGrid();
31 
34  {
35  return _winged_edge;
36  }
37 
39  {
40  return _grid;
41  }
42 
44  void setWingedEdge(WingedEdge *winged_edge)
45  {
46  if (winged_edge) {
47  _winged_edge = winged_edge;
48  }
49  }
50 
51  void setGrid(Grid *grid)
52  {
53  if (grid) {
54  _grid = grid;
55  }
56  }
57 
58  private:
59  Grid *_grid;
60  WingedEdge *_winged_edge;
61  unsigned _polygon_id;
62 
63 #ifdef WITH_CXX_GUARDEDALLOC
64  MEM_CXX_CLASS_ALLOC_FUNCS("Freestyle:WSFillGrid")
65 #endif
66 };
67 
68 } /* namespace Freestyle */
Classes to define a Winged Edge data structure.
WingedEdge * getWingedEdge()
Definition: WSFillGrid.h:33
void setWingedEdge(WingedEdge *winged_edge)
Definition: WSFillGrid.h:44
virtual ~WSFillGrid()
Definition: WSFillGrid.h:26
void setGrid(Grid *grid)
Definition: WSFillGrid.h:51
WSFillGrid(Grid *grid=NULL, WingedEdge *winged_edge=NULL)
Definition: WSFillGrid.h:19
inherits from class Rep
Definition: AppCanvas.cpp:18