mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-20 19:40:18 +00:00
...
This commit is contained in:
parent
17fa4add9a
commit
d14941d3ed
@ -23,8 +23,6 @@ inline PyObject* py_var(VM* vm, b2Vec2 v){
|
|||||||
return py_var(vm, Vec2(v.x, v.y));
|
return py_var(vm, Vec2(v.x, v.y));
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace imbox2d{
|
|
||||||
|
|
||||||
inline PyObject* get_body_object(b2Body* p){
|
inline PyObject* get_body_object(b2Body* p){
|
||||||
auto userdata = p->GetUserData().pointer;
|
auto userdata = p->GetUserData().pointer;
|
||||||
return reinterpret_cast<PyObject*>(userdata);
|
return reinterpret_cast<PyObject*>(userdata);
|
||||||
@ -111,7 +109,6 @@ struct PyBody{
|
|||||||
static void _register(VM* vm, PyObject* mod, PyObject* type);
|
static void _register(VM* vm, PyObject* mod, PyObject* type);
|
||||||
|
|
||||||
// methods
|
// methods
|
||||||
|
|
||||||
b2Vec2 get_position() const { return body->GetPosition(); }
|
b2Vec2 get_position() const { return body->GetPosition(); }
|
||||||
void set_position(b2Vec2 v){ body->SetTransform(v, body->GetAngle()); }
|
void set_position(b2Vec2 v){ body->SetTransform(v, body->GetAngle()); }
|
||||||
float get_rotation() const { return body->GetAngle(); }
|
float get_rotation() const { return body->GetAngle(); }
|
||||||
@ -148,12 +145,10 @@ struct PyWorld {
|
|||||||
static void _register(VM* vm, PyObject* mod, PyObject* type);
|
static void _register(VM* vm, PyObject* mod, PyObject* type);
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace imbox2d
|
|
||||||
|
|
||||||
|
|
||||||
inline void add_module_box2d(VM* vm){
|
inline void add_module_box2d(VM* vm){
|
||||||
PyObject* mod = vm->new_module("box2d");
|
PyObject* mod = vm->new_module("box2d");
|
||||||
imbox2d::PyBody::register_class(vm, mod);
|
PyBody::register_class(vm, mod);
|
||||||
imbox2d::PyWorld::register_class(vm, mod);
|
PyWorld::register_class(vm, mod);
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace pkpy
|
} // namespace pkpy
|
@ -4,7 +4,6 @@
|
|||||||
#include "pocketpy/bindings.h"
|
#include "pocketpy/bindings.h"
|
||||||
|
|
||||||
namespace pkpy{
|
namespace pkpy{
|
||||||
namespace imbox2d{
|
|
||||||
|
|
||||||
void PyBody::_register(VM* vm, PyObject* mod, PyObject* type){
|
void PyBody::_register(VM* vm, PyObject* mod, PyObject* type){
|
||||||
vm->bind(type, "__new__(cls, world: World, node: _NodeLike = None)",
|
vm->bind(type, "__new__(cls, world: World, node: _NodeLike = None)",
|
||||||
@ -84,5 +83,4 @@ void PyBody::_register(VM* vm, PyObject* mod, PyObject* type){
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace imbox2d
|
|
||||||
} // namespace pkpy
|
} // namespace pkpy
|
@ -3,7 +3,6 @@
|
|||||||
#include "box2d_bindings.hpp"
|
#include "box2d_bindings.hpp"
|
||||||
|
|
||||||
namespace pkpy{
|
namespace pkpy{
|
||||||
namespace imbox2d{
|
|
||||||
|
|
||||||
struct MyRayCastCallback: b2RayCastCallback{
|
struct MyRayCastCallback: b2RayCastCallback{
|
||||||
PK_ALWAYS_PASS_BY_POINTER(MyRayCastCallback)
|
PK_ALWAYS_PASS_BY_POINTER(MyRayCastCallback)
|
||||||
@ -128,6 +127,4 @@ void PyWorld::_register(VM* vm, PyObject* mod, PyObject* type){
|
|||||||
return vm->None;
|
return vm->None;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace imbox2d
|
|
||||||
} // namespace pkpy
|
} // namespace pkpy
|
Loading…
x
Reference in New Issue
Block a user