def new_uninitialized_gdobj(gdtype): # TODO: use dict to optimize this ? # It seems Godot encode Variant as type nil... if gdtype == lib.GODOT_VARIANT_TYPE_NIL: return godot_variant_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_BOOL: return godot_bool_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_INT: return godot_int_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_REAL: return godot_real_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_STRING: return godot_string_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_VECTOR2: return godot_vector2_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_RECT2: return godot_rect2_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_VECTOR3: return godot_vector3_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_TRANSFORM2D: return godot_transform2d_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_PLANE: return godot_plane_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_QUAT: return godot_quat_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_AABB: return godot_aabb_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_BASIS: return godot_basis_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_TRANSFORM: return godot_transform_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_COLOR: return godot_color_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_NODE_PATH: return godot_node_path_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_RID: return godot_rid_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_OBJECT: return godot_object_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_DICTIONARY: return godot_dictionary_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_ARRAY: return godot_array_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_BYTE_ARRAY: return godot_pool_byte_array_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_INT_ARRAY: return godot_pool_int_array_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_REAL_ARRAY: return godot_pool_real_array_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_STRING_ARRAY: return godot_pool_string_array_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_VECTOR2_ARRAY: return godot_pool_vector2_array_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_VECTOR3_ARRAY: return godot_pool_vector3_array_alloc() elif gdtype == lib.GODOT_VARIANT_TYPE_POOL_COLOR_ARRAY: return godot_pool_color_array_alloc() else: raise TypeError( "Unknown Variant type `%s` (this should never happen !)" % gdtype)
def __init__(self, position=Vector3(), size=Vector3()): self._check_param_type('position', position, Vector3) self._check_param_type('size', size, Vector3) self._gd_ptr = godot_aabb_alloc() lib.godot_aabb_new(self._gd_ptr, position._gd_ptr, size._gd_ptr)
def _copy_gdobj(gdobj): return godot_aabb_alloc(gdobj[0])