Fission FSN
Loading...
Searching...
No Matches
gfCJigsawStencil.h
Go to the documentation of this file.
1/********************************************************************
2**
3* File: gfCJigsawStencil.h
4*
5* Purpose: Stencil class for cutting out jigsaw pieces
6*
7* Base tile cut out then tongues / grooves added
8*
9* (T)
10* ***************
11* * (G) *
12* * *
13* (T)*(G) (G)*(T)
14* * *
15* * (G) *
16* ***************
17* (T)
18*
19*********************************************************************/
20
21#ifndef gfCJigsawStencilhdr
22#define gfCJigsawStencilhdr
23
24#include "../gfIStencil.h"
25
27
29{
30public:
31
38
39 static eEDGE complimentGet(eEDGE pEdge);
40
41 gfCJigsawStencil(gfCJigsawStencilTextures* pStencilTex, fsS32 pWidth, fsS32 pHeight,
42 eEDGE pTop, eEDGE pRight, eEDGE pBottom, eEDGE pLeft, fsS32 pRow, fsS32 pCol);
43
46
47
48protected:
49
50 void generate() override;
51
52 void doSave(fsCEntity* pParent) override;
53 void doLoad(fsCEntity* pParent) override;
54
55private:
56
57
58 void basicTileCut();
59
60 void modifyDimensionsAndPosBasedOnEdges();
61
62 eEDGE mTop;
63 eEDGE mRight;
64 eEDGE mBottom;
65 eEDGE mLeft;
66
67 gfCJigsawStencilTextures* mStencilTextures;
68};
69
70#endif
Definition fsCEntity.h:39
gfCJigsawStencil(gfCJigsawStencilTextures *pStencilTex, fsS32 pWidth, fsS32 pHeight, eEDGE pTop, eEDGE pRight, eEDGE pBottom, eEDGE pLeft, fsS32 pRow, fsS32 pCol)
Definition gfCJigsawStencil.cpp:242
void doSave(fsCEntity *pParent) override
Definition gfCJigsawStencil.cpp:11
void generate() override
Definition gfCJigsawStencil.cpp:163
~gfCJigsawStencil()
Definition gfCJigsawStencil.cpp:271
void doLoad(fsCEntity *pParent) override
Definition gfCJigsawStencil.cpp:22
static eEDGE complimentGet(eEDGE pEdge)
Definition gfCJigsawStencil.cpp:33
eEDGE
Definition gfCJigsawStencil.h:33
@ eGROOVE
Definition gfCJigsawStencil.h:36
@ eTONGUE
Definition gfCJigsawStencil.h:35
@ eSTRAIGHT
Definition gfCJigsawStencil.h:34
Definition gfCJigsawStencilTextures.h:18
gfIStencil()
Definition gfIStencil.cpp:33
int fsS32
Definition fsBaseTypes.h:20