blob: 043c29febf74c8ab8e7953cbdceb08f93463d09b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
/* Starshatter: The Open Source Project
Copyright (c) 2021-2022, Starshatter: The Open Source Project Contributors
Copyright (c) 2011-2012, Starshatter OpenSource Distribution Contributors
Copyright (c) 1997-2006, Destroyer Studios LLC.
AUTHOR: John DiCamillo
OVERVIEW
========
Interface of the Grid class
*/
#ifndef Grid_h
#define Grid_h
#include "Bitmap.h"
#include "Graphic.h"
// +--------------------------------------------------------------------+
class Grid : public Graphic
{
public:
enum PLANE { GRID_XY, GRID_XZ, GRID_YZ };
Grid();
virtual ~Grid();
CPoint& Snap(CPoint& p);
bool IsSnap() const { return snap; }
bool IsShow() const { return show; }
void SetSnap(bool s) { snap = s; }
void SetShow(bool s) { show = s; }
void SetSize(int x, int y = 0);
void SetSkip(int x, int y = 0);
void ShowMinor(bool show) { minor = show; }
void ShowPlane(int p) { plane = p; }
void ShowReference(bool show) { show_ref = show; }
const char* GetReferencePlan() const;
void SetReferencePlan(const char* fname);
const char* GetReferenceFront() const;
void SetReferenceFront(const char* fname);
const char* GetReferenceSide() const;
void SetReferenceSide(const char* fname);
int GetSize() const { return x_size; }
// operations
virtual void Render(Video* video, DWORD flags);
virtual void RenderReference(Video* video);
protected:
int snapto(int i, int dim);
bool show;
bool show_ref;
bool snap;
bool minor;
int x_size, y_size;
int x_skip, y_skip;
int plane;
Vec3* x_major;
Vec3* x_minor;
Vec3* y_major;
Vec3* y_minor;
Bitmap* bmp_plan;
Bitmap* bmp_front;
Bitmap* bmp_side;
};
// +--------------------------------------------------------------------+
#endif Grid_h
|