Table of Contents

Class PlacementGridRotationUtils3D

Namespace
GridPlacement.GDScript
Assembly
MoonBark.GridPlacement.GDScript.dll
class PlacementGridRotationUtils3D extends RefCounted
PlacementGridRotationUtils3D

Fields

ORIENTATION_COUNT

const ORIENTATION_COUNT: int = 24

Properties

current_idx

var current_idx: int = grid.get_orthogonal_index_from_basis(node.basis)

new_idx

var new_idx: int = (current_idx + increment) % ORIENTATION_COUNT

wrapped_idx

var wrapped_idx: int = ((orientation_idx % ORIENTATION_COUNT) + ORIENTATION_COUNT) % ORIENTATION_COUNT

global_pos

var global_pos: Vector3 = node.global_position

local

var local: Vector3 = grid.to_local(global_pos)

cell

var cell: Vector3i = grid.local_to_map(local)

cell_local_center

var cell_local_center: Vector3 = grid.map_to_local(cell)

Methods

rotate_node_clockwise

static func rotate_node_clockwise(node: Node3D, grid: GridMap, increment: int = 1, snap_to_grid: bool = true) -> int:

Parameters

node
grid
increment
snap_to_grid

Returns

rotate_node_counter_clockwise

static func rotate_node_counter_clockwise(node: Node3D, grid: GridMap, increment: int = 1, snap_to_grid: bool = true) -> int:

Parameters

node
grid
increment
snap_to_grid

Returns

set_node_orientation

static func set_node_orientation(node: Node3D, grid: GridMap, orientation_idx: int, snap_to_grid: bool = true) -> void:

Parameters

node
grid
orientation_idx
snap_to_grid

Returns

degrees_to_increment

static func degrees_to_increment(degrees: float) -> int:

Parameters

degrees

Returns

basis_to_orientation_idx

static func basis_to_orientation_idx(grid: GridMap, basis: Basis) -> int:

Parameters

grid
basis

Returns

orientation_idx_to_basis

static func orientation_idx_to_basis(grid: GridMap, idx: int) -> Basis:

Parameters

grid
idx

Returns