World > Camera#
- class miniworlds.worlds.manager.camera_manager.CameraManager(view_x, view_y, world)[Quellcode]#
CameraManager defines a movable viewport into a 2D world and tracks visible actors. It is accessed via world.camera and is responsible for view positioning, actor visibility, and coordinate transformations.
Public Data Attributes:
Width of the camera viewport in pixels.
Height of the camera viewport in pixels.
Width of the world in pixels.
Height of the world in pixels.
Returns world size as (width, height).
Camera x-position (top-left corner in world coordinates).
Camera y-position (top-left corner in world coordinates).
Top-left corner of the camera in world coordinates.
Returns camera rect in world coordinates.
Returns camera rect in screen coordinates.
Returns the full world rect.
Returns center of camera in world coordinates.
Inherited from
Sprite
image
rect
layer
Dynamic, read only property for protected _layer attribute.
Public Methods:
__init__
(view_x, view_y, world)get_rect
()Returns the camera rectangle in world coordinates.
Returns the camera rectangle in screen coordinates.
Returns the full world rectangle from the camera's current origin.
get_screen_position
(pos)Convert world coordinates to screen coordinates.
get_local_position
(pos)Convert world coordinates to camera-local coordinates.
Convert local camera position to global world position.
is_actor_in_view
(actor)from_actor
(actor)Move camera to center on a given actor.
is_in_screen
(pixel)Inherited from
Sprite
__init__
(*groups)add
(*groups)add the sprite to groups
remove
(*groups)remove the sprite from groups
add_internal
(group)For adding this sprite to a group internally.
remove_internal
(group)For removing this sprite from a group internally.
update
(*args, **kwargs)method to control sprite behavior
kill
()remove the Sprite from all Groups
groups
()list of Groups that contain this Sprite
alive
()does the sprite belong to any groups
__repr__
()Return repr(self).
Private Methods:
_disable_resize
()Disable automatic resize handling.
_enable_resize
()Re-enable automatic resize handling.
_set_width
(value)_set_height
(value)_set_topleft
(value)_limit_x
(value)_limit_y
(value)_reload_actors_in_view
()Marks actors in view as dirty for redraw.
_reload_camera
()Internal: reloads geometry and triggers world resize.
_clear_camera_cache
()Clears view tracking for actor visibility.
_update
()Called each frame to refresh geometry if needed.
_cache_rects
()Caches world and screen rects.
- from_actor(actor)[Quellcode]#
Move camera to center on a given actor.
- Rückgabetyp:
Examples
>>> world.camera.from_actor(actor)
- get_actors_in_view()[Quellcode]#
- get_global_coordinates_for_world(pos)[Quellcode]#
Convert local camera position to global world position.
- Rückgabetyp:
- Parameter:
pos – Position relative to the camera.
- Rückgabe:
Global world position.
Examples
>>> world.camera.get_global_coordinates_for_world((100, 50))
- get_local_position(pos)[Quellcode]#
Convert world coordinates to camera-local coordinates.
- Rückgabetyp:
- Parameter:
pos – Global position in the world.
- Rückgabe:
Local position relative to the camera.
Examples
>>> world.camera.get_local_position((500, 400))
- get_rect()[Quellcode]#
Returns the camera rectangle in world coordinates.
- Rückgabetyp:
Rect
- Rückgabe:
A pygame.Rect representing the current viewport’s world area.
Examples
>>> world.camera.get_rect()
- get_screen_position(pos)[Quellcode]#
Convert world coordinates to screen coordinates.
- Rückgabetyp:
- Parameter:
pos – Position in world coordinates.
- Rückgabe:
Position in screen coordinates.
Examples
>>> world.camera.get_screen_position((100, 200))
- get_screen_rect()[Quellcode]#
Returns the camera rectangle in screen coordinates.
- Rückgabetyp:
Rect
- Rückgabe:
A pygame.Rect representing where the camera appears on screen.
Examples
>>> world.camera.get_screen_rect()
- get_world_rect()[Quellcode]#
Returns the full world rectangle from the camera’s current origin.
- Rückgabetyp:
Rect
- Rückgabe:
A pygame.Rect representing the visible and scrolled world area.
Examples
>>> world.camera.get_world_rect()
- is_actor_in_view(actor)[Quellcode]#
- Rückgabetyp:
- is_in_screen(pixel)[Quellcode]#
- Rückgabetyp:
- property rect: Rect#
Returns camera rect in world coordinates.
- property screen_rect: Rect#
Returns camera rect in screen coordinates.
- property world_rect: Rect#
Returns the full world rect.