def xform(self, v): if isinstance(v, Vector3): raw = lib.godot_transform_xform_vector3(self._gd_ptr, v._gd_ptr) return Vector3.build_from_gdobj(raw) elif isinstance(v, AABB): raw = lib.godot_transform_xform_aabb(self._gd_ptr, v._gd_ptr) return AABB.build_from_gdobj(raw) elif isinstance(v, Plane): raw = lib.godot_transform_xform_plane(self._gd_ptr, v._gd_ptr) return Plane.build_from_gdobj(raw) raise TypeError( 'Param `v` should be of type `Plane`, `AABB` or `Vector3`')
def get_any_point(self): raw = lib.godot_plane_get_any_point(self._gd_ptr) return Vector3.build_from_gdobj(raw)
def center(self): raw = lib.godot_plane_center(self._gd_ptr) return Vector3.build_from_gdobj(raw)
def normal(self): return Vector3.build_from_gdobj( lib.godot_plane_get_normal(self._gd_ptr))
def project(self, point): self._check_param_type('point', point, Vector3) raw = lib.godot_plane_project(self._gd_ptr, point._gd_ptr) return Vector3.build_from_gdobj(raw)
def get_shortest_axis(self): raw = lib.godot_aabb_get_shortest_axis(self._gd_ptr) return Vector3.build_from_gdobj(raw)
def get_support(self, dir): raw = lib.godot_aabb_get_support(self._gd_ptr, dir._gd_ptr) return Vector3.build_from_gdobj(raw)
def size(self): return Vector3.build_from_gdobj(lib.godot_aabb_get_size(self._gd_ptr))
def position(self): return Vector3.build_from_gdobj(lib.godot_aabb_get_position(self._gd_ptr))
def get_endpoint(self, idx): raw = lib.godot_aabb_get_endpoint(self._gd_ptr, idx) return Vector3.build_from_gdobj(raw)
def xform_inv(self, vect): self._check_param_type('vect', vect, Vector3) gd_obj = lib.godot_basis_xform_inv(self._gd_ptr, vect._gd_ptr) return Vector3.build_from_gdobj(gd_obj)
def get_scale(self): gd_obj = lib.godot_basis_get_scale(self._gd_ptr) return Vector3.build_from_gdobj(gd_obj)
def z(self): return Vector3.build_from_gdobj( lib.godot_basis_get_axis(self._gd_ptr, self.AXIS_Z))
def origin(self): raw = lib.godot_transform_get_origin(self._gd_ptr) return Vector3.build_from_gdobj(raw)