summaryrefslogtreecommitdiff
path: root/scene/resources/convex_polygon_shape_2d.cpp
diff options
context:
space:
mode:
authorKostadin Damyanov <maxmight@gmail.com>2015-10-13 05:01:54 +0300
committerKostadin Damyanov <maxmight@gmail.com>2015-10-13 05:01:54 +0300
commit29caf2bb5be061cd1ab014cf938f2c71d0bd2663 (patch)
tree859a0c3d2805198672c1e22d4780c3eb68f55a57 /scene/resources/convex_polygon_shape_2d.cpp
parentc5f574b914b3cb11d97ae616df4a0bced45bb17c (diff)
parent79e5ced7e668fa53567ac6aaf5a26393cea6c9a2 (diff)
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'scene/resources/convex_polygon_shape_2d.cpp')
-rw-r--r--scene/resources/convex_polygon_shape_2d.cpp25
1 files changed, 24 insertions, 1 deletions
diff --git a/scene/resources/convex_polygon_shape_2d.cpp b/scene/resources/convex_polygon_shape_2d.cpp
index 74506f8600..dac39fc846 100644
--- a/scene/resources/convex_polygon_shape_2d.cpp
+++ b/scene/resources/convex_polygon_shape_2d.cpp
@@ -29,7 +29,7 @@
#include "convex_polygon_shape_2d.h"
#include "servers/physics_2d_server.h"
-
+#include "servers/visual_server.h"
void ConvexPolygonShape2D::_update_shape() {
Physics2DServer::get_singleton()->shape_set_data(get_rid(),points);
@@ -66,6 +66,29 @@ void ConvexPolygonShape2D::_bind_methods() {
}
+void ConvexPolygonShape2D::draw(const RID& p_to_rid,const Color& p_color) {
+
+
+ Vector<Color> col;
+ col.push_back(p_color);
+ VisualServer::get_singleton()->canvas_item_add_polygon(p_to_rid,points,col);
+}
+
+Rect2 ConvexPolygonShape2D::get_rect() const {
+
+
+ Rect2 rect;
+ for(int i=0;i<points.size();i++) {
+ if (i==0)
+ rect.pos=points[i];
+ else
+ rect.expand_to(points[i]);
+ }
+
+ return rect;
+
+}
+
ConvexPolygonShape2D::ConvexPolygonShape2D() : Shape2D( Physics2DServer::get_singleton()->shape_create(Physics2DServer::SHAPE_CONVEX_POLYGON)) {