[−][src]Struct gdnative_bindings::camera_2d::Camera2D
core class Camera2D
inherits Node2D
(unsafe).
Official documentation
See the documentation of this class in the Godot engine's official documentation.
Memory management
Non reference counted objects such as the ones of this type are usually owned by the engine.
Camera2D
is a reference-only type. Persistent references can
only exist in the unsafe Ref<Camera2D>
form.
In the cases where Rust code owns an object of this type, for example if the object was just
created on the Rust side and not passed to the engine yet, ownership should be either given
to the engine or the object must be manually destroyed using Ptr::free
, or Ptr::queue_free
if it is a Node
.
Class hierarchy
Camera2D inherits methods from:
Safety
All types in the Godot API have "interior mutability" in Rust parlance.
To enforce that the official thread-safety guidelines are
followed, the typestate pattern is used in the Ref
and TRef
smart pointers,
and the Instance
API. The typestate Access
in these types tracks whether the
access is unique, shared, or exclusive to the current thread. For more information,
see the type-level documentation on Ref
.
Implementations
impl Camera2D
[src]
Constants
pub const ANCHOR_MODE_DRAG_CENTER: i64
[src]
pub const ANCHOR_MODE_FIXED_TOP_LEFT: i64
[src]
pub const CAMERA2D_PROCESS_IDLE: i64
[src]
pub const CAMERA2D_PROCESS_PHYSICS: i64
[src]
impl Camera2D
[src]
pub fn new() -> Ref<Self, Unique>
[src]
Creates a new instance of this object.
Because this type is not reference counted, the lifetime of the returned object is not automatically managed.
Immediately after creation, the object is owned by the caller, and can be
passed to the engine (in which case the engine will be responsible for
destroying the object) or destroyed manually using Ptr::free
, or preferably
Ptr::queue_free
if it is a Node
.
pub fn align(&self)
[src]
pub fn clear_current(&self)
[src]
pub fn force_update_scroll(&self)
[src]
pub fn anchor_mode(&self) -> AnchorMode
[src]
pub fn get_camera_position(&self) -> Vector2
[src]
pub fn get_camera_screen_center(&self) -> Vector2
[src]
pub fn custom_viewport(&self) -> Option<Ref<Node, Shared>>
[src]
pub fn drag_margin(&self, margin: i64) -> f64
[src]
pub fn follow_smoothing(&self) -> f64
[src]
pub fn h_offset(&self) -> f64
[src]
pub fn limit(&self, margin: i64) -> i64
[src]
pub fn offset(&self) -> Vector2
[src]
pub fn process_mode(&self) -> Camera2DProcessMode
[src]
pub fn v_offset(&self) -> f64
[src]
pub fn zoom(&self) -> Vector2
[src]
pub fn is_current(&self) -> bool
[src]
pub fn is_follow_smoothing_enabled(&self) -> bool
[src]
pub fn is_h_drag_enabled(&self) -> bool
[src]
pub fn is_limit_drawing_enabled(&self) -> bool
[src]
pub fn is_limit_smoothing_enabled(&self) -> bool
[src]
pub fn is_margin_drawing_enabled(&self) -> bool
[src]
pub fn is_rotating(&self) -> bool
[src]
pub fn is_screen_drawing_enabled(&self) -> bool
[src]
pub fn is_v_drag_enabled(&self) -> bool
[src]
pub fn make_current(&self)
[src]
pub fn reset_smoothing(&self)
[src]
pub fn set_anchor_mode(&self, anchor_mode: i64)
[src]
pub fn set_custom_viewport(&self, viewport: impl AsArg<Node>)
[src]
pub fn set_drag_margin(&self, margin: i64, drag_margin: f64)
[src]
pub fn set_enable_follow_smoothing(&self, follow_smoothing: bool)
[src]
pub fn set_follow_smoothing(&self, follow_smoothing: f64)
[src]
pub fn set_h_drag_enabled(&self, enabled: bool)
[src]
pub fn set_h_offset(&self, ofs: f64)
[src]
pub fn set_limit(&self, margin: i64, limit: i64)
[src]
pub fn set_limit_drawing_enabled(&self, limit_drawing_enabled: bool)
[src]
pub fn set_limit_smoothing_enabled(&self, limit_smoothing_enabled: bool)
[src]
pub fn set_margin_drawing_enabled(&self, margin_drawing_enabled: bool)
[src]
pub fn set_offset(&self, offset: Vector2)
[src]
pub fn set_process_mode(&self, mode: i64)
[src]
pub fn set_rotating(&self, rotating: bool)
[src]
pub fn set_screen_drawing_enabled(&self, screen_drawing_enabled: bool)
[src]
pub fn set_v_drag_enabled(&self, enabled: bool)
[src]
pub fn set_v_offset(&self, ofs: f64)
[src]
pub fn set_zoom(&self, zoom: Vector2)
[src]
Methods from Deref<Target = Node2D>
pub fn apply_scale(&self, ratio: Vector2)
[src]
pub fn get_angle_to(&self, point: Vector2) -> f64
[src]
pub fn global_position(&self) -> Vector2
[src]
pub fn global_rotation(&self) -> f64
[src]
pub fn global_rotation_degrees(&self) -> f64
[src]
pub fn global_scale(&self) -> Vector2
[src]
pub fn position(&self) -> Vector2
[src]
pub fn get_relative_transform_to_parent(
&self,
parent: impl AsArg<Node>
) -> Transform2D
[src]
&self,
parent: impl AsArg<Node>
) -> Transform2D
pub fn rotation(&self) -> f64
[src]
pub fn rotation_degrees(&self) -> f64
[src]
pub fn scale(&self) -> Vector2
[src]
pub fn z_index(&self) -> i64
[src]
pub fn global_translate(&self, offset: Vector2)
[src]
pub fn is_z_relative(&self) -> bool
[src]
pub fn look_at(&self, point: Vector2)
[src]
pub fn move_local_x(&self, delta: f64, scaled: bool)
[src]
pub fn move_local_y(&self, delta: f64, scaled: bool)
[src]
pub fn rotate(&self, radians: f64)
[src]
pub fn set_global_position(&self, position: Vector2)
[src]
pub fn set_global_rotation(&self, radians: f64)
[src]
pub fn set_global_rotation_degrees(&self, degrees: f64)
[src]
pub fn set_global_scale(&self, scale: Vector2)
[src]
pub fn set_global_transform(&self, xform: Transform2D)
[src]
pub fn set_position(&self, position: Vector2)
[src]
pub fn set_rotation(&self, radians: f64)
[src]
pub fn set_rotation_degrees(&self, degrees: f64)
[src]
pub fn set_scale(&self, scale: Vector2)
[src]
pub fn set_transform(&self, xform: Transform2D)
[src]
pub fn set_z_as_relative(&self, enable: bool)
[src]
pub fn set_z_index(&self, z_index: i64)
[src]
pub fn to_global(&self, local_point: Vector2) -> Vector2
[src]
pub fn to_local(&self, global_point: Vector2) -> Vector2
[src]
pub fn translate(&self, offset: Vector2)
[src]
Trait Implementations
impl Debug for Camera2D
[src]
impl Deref for Camera2D
[src]
impl DerefMut for Camera2D
[src]
impl GodotObject for Camera2D
[src]
type RefKind = ManuallyManaged
The memory management kind of this type. This modifies the behavior of the Ref
smart pointer. See its type-level documentation for more information. Read more
fn class_name() -> &'static str
[src]
fn null() -> Null<Self>
[src]
fn new() -> Ref<Self, Unique> where
Self: Instanciable,
[src]
Self: Instanciable,
fn cast<T>(&self) -> Option<&T> where
T: GodotObject + SubClass<Self>,
[src]
T: GodotObject + SubClass<Self>,
fn upcast<T>(&self) -> &T where
Self: SubClass<T>,
T: GodotObject,
[src]
Self: SubClass<T>,
T: GodotObject,
unsafe fn assume_shared(&self) -> Ref<Self, Shared>
[src]
unsafe fn assume_thread_local(&self) -> Ref<Self, ThreadLocal> where
Self: GodotObject<RefKind = RefCounted>,
[src]
Self: GodotObject<RefKind = RefCounted>,
unsafe fn assume_unique(&self) -> Ref<Self, Unique>
[src]
impl Instanciable for Camera2D
[src]
impl QueueFree for Camera2D
[src]
unsafe fn godot_queue_free(obj: *mut godot_object)
[src]
impl Sealed for Camera2D
[src]
impl SubClass<CanvasItem> for Camera2D
[src]
impl SubClass<Node> for Camera2D
[src]
impl SubClass<Node2D> for Camera2D
[src]
impl SubClass<Object> for Camera2D
[src]
Auto Trait Implementations
impl RefUnwindSafe for Camera2D
impl !Send for Camera2D
impl !Sync for Camera2D
impl Unpin for Camera2D
impl UnwindSafe for Camera2D
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> SubClass<T> for T where
T: GodotObject,
[src]
T: GodotObject,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,