summaryrefslogtreecommitdiff
path: root/include/JSystem/J2DGraph
diff options
context:
space:
mode:
authorlepelog <25211966+lepelog@users.noreply.github.com>2021-12-06 12:57:45 +0100
committerlepelog <25211966+lepelog@users.noreply.github.com>2021-12-06 13:14:13 +0100
commit9da2309be783fd453da060fd3fe1ccd5fbeba8a9 (patch)
tree594952e0140b501010236fd2d864fa179b1a2eb2 /include/JSystem/J2DGraph
parentc15d8fcb3e91890c3aa779b391258ff9d6ce1e61 (diff)
J2DGrafContext and J2DOrthoGraph
Diffstat (limited to 'include/JSystem/J2DGraph')
-rw-r--r--include/JSystem/J2DGraph/J2DGrafContext.h22
-rw-r--r--include/JSystem/J2DGraph/J2DOrthoGraph.h12
2 files changed, 25 insertions, 9 deletions
diff --git a/include/JSystem/J2DGraph/J2DGrafContext.h b/include/JSystem/J2DGraph/J2DGrafContext.h
index dd85bce171..3e6af36ad0 100644
--- a/include/JSystem/J2DGraph/J2DGrafContext.h
+++ b/include/JSystem/J2DGraph/J2DGrafContext.h
@@ -10,6 +10,7 @@ class J2DGrafContext {
public:
/* 802E8B08 */ J2DGrafContext(f32, f32, f32, f32);
/* 802E90C0 */ void scissor(JGeometry::TBox2<f32> const&);
+ void setColor(JUtility::TColor c) { this->setColor(c, c, c, c); }
/* 802E9118 */ void setColor(JUtility::TColor, JUtility::TColor, JUtility::TColor,
JUtility::TColor);
/* 802E9234 */ void setLineWidth(u8);
@@ -17,17 +18,24 @@ public:
/* 802E9368 */ void drawFrame(JGeometry::TBox2<f32> const&);
/* 802E9488 */ void line(JGeometry::TVec2<f32>, JGeometry::TVec2<f32>);
/* 802E9564 */ void lineTo(JGeometry::TVec2<f32>);
+ void lineTo(f32 x, f32 y) { this->lineTo(JGeometry::TVec2<f32>(x, y)); }
+ void moveTo(f32 x, f32 y) { this->moveTo(JGeometry::TVec2<f32>(x, y)); }
- /* 802E95D4 */ virtual ~J2DGrafContext();
+ void moveTo(JGeometry::TVec2<f32> pos) { mPrevPos = pos; }
+
+ /* 802E95D4 */ virtual ~J2DGrafContext() {}
/* 802E90E4 */ virtual void place(JGeometry::TBox2<f32> const&);
- /* 802E961C */ virtual void place(f32, f32, f32, f32);
+ /* 802E961C */ virtual void place(f32 x, f32 y, f32 width, f32 height) {
+ JGeometry::TBox2<f32> box(x, y, x + width, y + height);
+ this->place(box);
+ }
/* 802E8BB4 */ virtual void setPort();
/* 802E8C44 */ virtual void setup2D();
/* 802E8E20 */ virtual void setScissor();
- /* 802E9664 */ virtual bool getGrafType() const;
- /* 802E966C */ virtual void setLookat();
+ /* 802E9664 */ virtual s32 getGrafType() const { return 0; }
+ /* 802E966C */ virtual void setLookat() {}
-private:
+protected:
/* 0x04 */ JGeometry::TBox2<f32> mBounds;
/* 0x14 */ JGeometry::TBox2<f32> mScissorBounds;
/* 0x24 */ JUtility::TColor field_0x24;
@@ -35,8 +43,8 @@ private:
/* 0x2C */ JUtility::TColor field_0x2c;
/* 0x30 */ JUtility::TColor field_0x30;
/* 0x34 */ u8 mLineWidth;
- /* 0x38 */ JGeometry::TVec2<f32> field_0x14;
- /* 0x40 */ u8 field_0x40[0x40];
+ /* 0x38 */ JGeometry::TVec2<f32> mPrevPos;
+ /* 0x40 */ Mtx44 mMtx44;
/* 0x80 */ Mtx mPosMtx;
/* 0xB0 */ u8 field_0xb0;
/* 0xB1 */ u8 field_0xb1;
diff --git a/include/JSystem/J2DGraph/J2DOrthoGraph.h b/include/JSystem/J2DGraph/J2DOrthoGraph.h
index 4973087f93..8259b27c94 100644
--- a/include/JSystem/J2DGraph/J2DOrthoGraph.h
+++ b/include/JSystem/J2DGraph/J2DOrthoGraph.h
@@ -11,10 +11,12 @@ public:
/* 802E980C */ void setOrtho(JGeometry::TBox2<f32> const&, f32, f32);
/* 802E987C */ void scissorBounds(JGeometry::TBox2<f32>*, JGeometry::TBox2<f32> const*);
- /* 8000B118 */ virtual ~J2DOrthoGraph();
+ /* 8000B118 */ virtual ~J2DOrthoGraph() {}
/* 802E97B4 */ virtual void setPort();
- /* 802E9C88 */ virtual bool getGrafType() const;
+ /* 802E9C88 */ virtual s32 getGrafType() const { return 1; }
/* 802E9840 */ virtual void setLookat();
+ f32 getWidthPower() const { return mBounds.getWidth() / mOrtho.getWidth(); }
+ f32 getHeightPower() const { return mBounds.getHeight() / mOrtho.getHeight(); }
private:
/* 0xBC */ JGeometry::TBox2<f32> mOrtho;
@@ -22,4 +24,10 @@ private:
/* 0xD0 */ f32 mFar;
};
+void J2DFillBox(f32 param_0, f32 param_1, f32 param_2, f32 param_3, JUtility::TColor color);
+void J2DFillBox(JGeometry::TBox2<f32> const& param_0, JUtility::TColor param_1);
+void J2DDrawFrame(f32 param_0, f32 param_1, f32 param_2, f32 param_3, JUtility::TColor param_4,
+ u8 param_5);
+void J2DDrawFrame(JGeometry::TBox2<f32> const& param_0, JUtility::TColor param_1, u8 param_2);
+
#endif /* J2DORTHOGRAPH_H */