[Scummvm-git-logs] scummvm master -> 665bd9ce845cba6ec63807eacd02a53dffa9a2d7

sev- sev at scummvm.org
Mon Dec 17 19:27:32 CET 2018


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
665bd9ce84 BLADERUNNER: Rect -> RectFloat


Commit: 665bd9ce845cba6ec63807eacd02a53dffa9a2d7
    https://github.com/scummvm/scummvm/commit/665bd9ce845cba6ec63807eacd02a53dffa9a2d7
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2018-12-17T19:27:03+01:00

Commit Message:
BLADERUNNER: Rect -> RectFloat

Changed paths:
  A engines/bladerunner/rect_float.h
  R engines/bladerunner/rect.h
    engines/bladerunner/obstacles.cpp
    engines/bladerunner/obstacles.h


diff --git a/engines/bladerunner/obstacles.cpp b/engines/bladerunner/obstacles.cpp
index 06c19ad..62bb210b 100644
--- a/engines/bladerunner/obstacles.cpp
+++ b/engines/bladerunner/obstacles.cpp
@@ -247,7 +247,7 @@ bool Obstacles::mergePolygons(Polygon &polyA, Polygon &polyB) {
 	return flagDidMergePolygons;
 }
 
-void Obstacles::add(Rect rect) {
+void Obstacles::add(RectFloat rect) {
 	int polygonIndex = findEmptyPolygon();
 	if (polygonIndex < 0) {
 		return;
diff --git a/engines/bladerunner/obstacles.h b/engines/bladerunner/obstacles.h
index 2512490..f133fe0 100644
--- a/engines/bladerunner/obstacles.h
+++ b/engines/bladerunner/obstacles.h
@@ -23,7 +23,7 @@
 #ifndef BLADERUNNER_OBSTACLES_H
 #define BLADERUNNER_OBSTACLES_H
 
-#include "bladerunner/rect.h"
+#include "bladerunner/rect_float.h"
 #include "bladerunner/vector.h"
 
 namespace BladeRunner {
@@ -52,7 +52,7 @@ class Obstacles {
 	struct Polygon {
 		bool       isPresent;
 		int        verticeCount;
-		Rect       rect;
+		RectFloat  rect;
 		Vector2    vertices[kPolygonVertexCount];
 		VertexType vertexType[kPolygonVertexCount];
 
@@ -79,8 +79,8 @@ public:
 	~Obstacles();
 
 	void clear();
-	void add(Rect rect);
-	void add(float x0, float z0, float x1, float z1) { add(Rect(x0, z0, x1, z1)); }
+	void add(RectFloat rect);
+	void add(float x0, float z0, float x1, float z1) { add(RectFloat(x0, z0, x1, z1)); }
 	int findEmptyPolygon() const;
 	static float getLength(float x0, float z0, float x1, float z1);
 	bool find(const Vector3 &from, const Vector3 &to, Vector3 *next) const;
diff --git a/engines/bladerunner/rect.h b/engines/bladerunner/rect.h
deleted file mode 100644
index a44ad87..0000000
--- a/engines/bladerunner/rect.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef BLADERUNNER_RECT_H
-#define BLADERUNNER_RECT_H
-
-#include "common/debug.h"
-#include "common/types.h"
-#include "common/util.h"
-
-namespace BladeRunner {
-
-struct Rect {
-	float x0;
-	float y0;
-	float x1;
-	float y1;
-
-	Rect()
-		: x0(0.0f), y0(0.0f), x1(0.0f), y1(0.0f)
-	{}
-	Rect(float x0_, float y0_, float x1_, float y1_)
-		: x0(x0_), y0(y0_), x1(x1_), y1(y1_)
-	{}
-
-	void expand(float d) {
-		x0 -= d;
-		y0 -= d;
-		x1 += d;
-		y1 += d;
-	}
-
-	void trunc_2_decimals() {
-		x0 = truncf(x0 * 100.0f) / 100.0f;
-		y0 = truncf(y0 * 100.0f) / 100.0f;
-		x1 = truncf(x1 * 100.0f) / 100.0f;
-		y1 = truncf(y1 * 100.0f) / 100.0f;
-	}
-};
-
-inline bool overlaps(const Rect &a, const Rect &b) {
-	return !(a.y1 < b.y0 || a.y0 > b.y1 || a.x0 > b.x1 || a.x1 < b.x0);
-}
-
-inline Rect merge(const Rect &a, const Rect &b) {
-	Rect c;
-	c.x0 = MIN(a.x0, b.x0);
-	c.y0 = MIN(a.y0, b.y0);
-	c.x1 = MAX(a.x1, b.x1);
-	c.y1 = MAX(a.y1, b.y1);
-	return c;
-}
-
-} // End of namespace BladeRunner
-
-#endif
diff --git a/engines/bladerunner/rect_float.h b/engines/bladerunner/rect_float.h
new file mode 100644
index 0000000..4b7fea3
--- /dev/null
+++ b/engines/bladerunner/rect_float.h
@@ -0,0 +1,75 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BLADERUNNER_RECT_FLOAT_H
+#define BLADERUNNER_RECT_FLOAT_H
+
+#include "common/debug.h"
+#include "common/types.h"
+#include "common/util.h"
+
+namespace BladeRunner {
+
+struct RectFloat {
+	float x0;
+	float y0;
+	float x1;
+	float y1;
+
+	RectFloat()
+		: x0(0.0f), y0(0.0f), x1(0.0f), y1(0.0f)
+	{}
+	RectFloat(float x0_, float y0_, float x1_, float y1_)
+		: x0(x0_), y0(y0_), x1(x1_), y1(y1_)
+	{}
+
+	void expand(float d) {
+		x0 -= d;
+		y0 -= d;
+		x1 += d;
+		y1 += d;
+	}
+
+	void trunc_2_decimals() {
+		x0 = truncf(x0 * 100.0f) / 100.0f;
+		y0 = truncf(y0 * 100.0f) / 100.0f;
+		x1 = truncf(x1 * 100.0f) / 100.0f;
+		y1 = truncf(y1 * 100.0f) / 100.0f;
+	}
+};
+
+inline bool overlaps(const RectFloat &a, const RectFloat &b) {
+	return !(a.y1 < b.y0 || a.y0 > b.y1 || a.x0 > b.x1 || a.x1 < b.x0);
+}
+
+inline RectFloat merge(const RectFloat &a, const RectFloat &b) {
+	RectFloat c;
+	c.x0 = MIN(a.x0, b.x0);
+	c.y0 = MIN(a.y0, b.y0);
+	c.x1 = MAX(a.x1, b.x1);
+	c.y1 = MAX(a.y1, b.y1);
+	return c;
+}
+
+} // End of namespace BladeRunner
+
+#endif





More information about the Scummvm-git-logs mailing list