Blender V5.0
DRW_select_buffer.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2016 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#pragma once
10
11#include "DNA_ID.h"
12
13#include "BLI_array.hh"
14#include "BLI_map.hh"
17#include "BLI_set.hh"
18#include "BLI_sys_types.h" /* for bool and uint */
19
20struct ARegion;
21struct Base;
22struct Depsgraph;
23struct Object;
24struct RegionView3D;
25struct View3D;
26struct rcti;
27
39
60
61/* `draw_select_buffer.cc` */
62
63bool DRW_select_buffer_elem_get(uint sel_id, uint &r_elem, uint &r_base_index, char &r_elem_type);
64
70 Object *object,
71 char elem_type);
76 Depsgraph *depsgraph, ARegion *region, View3D *v3d, const rcti *rect, uint *r_buf_len);
82 Depsgraph *depsgraph, ARegion *region, View3D *v3d, const rcti *rect, uint *r_bitmap_len);
90 ARegion *region,
91 View3D *v3d,
92 const int center[2],
93 int radius,
94 uint *r_bitmap_len);
102 ARegion *region,
103 View3D *v3d,
105 const rcti *rect,
106 uint *r_bitmap_len);
111 ARegion *region,
112 View3D *v3d,
113 const int center[2]);
120 ARegion *region,
121 View3D *v3d,
122 const int center[2],
123 uint id_min,
124 uint id_max,
125 uint *dist);
128 short select_mode);
unsigned int uint
ID and Library types, which are fundamental for SDNA.
uint * DRW_select_buffer_bitmap_from_rect(Depsgraph *depsgraph, ARegion *region, View3D *v3d, const rcti *rect, uint *r_bitmap_len)
uint * DRW_select_buffer_bitmap_from_circle(Depsgraph *depsgraph, ARegion *region, View3D *v3d, const int center[2], int radius, uint *r_bitmap_len)
void DRW_select_buffer_context_create(Depsgraph *depsgraph, blender::Span< Base * > bases, short select_mode)
uint DRW_select_buffer_sample_point(Depsgraph *depsgraph, ARegion *region, View3D *v3d, const int center[2])
uint DRW_select_buffer_context_offset_for_object_elem(Depsgraph *depsgraph, Object *object, char elem_type)
uint * DRW_select_buffer_read(Depsgraph *depsgraph, ARegion *region, View3D *v3d, const rcti *rect, uint *r_buf_len)
bool DRW_select_buffer_elem_get(uint sel_id, uint &r_elem, uint &r_base_index, char &r_elem_type)
uint * DRW_select_buffer_bitmap_from_poly(Depsgraph *depsgraph, ARegion *region, View3D *v3d, blender::Span< blender::int2 > poly, const rcti *rect, uint *r_bitmap_len)
uint DRW_select_buffer_find_nearest_to_point(Depsgraph *depsgraph, ARegion *region, View3D *v3d, const int center[2], uint id_min, uint id_max, uint *dist)
BPy_StructRNA * depsgraph
unsigned long long int uint64_t
MatBase< float, 4, 4 > float4x4
blender::IndexRange face
blender::IndexRange total
blender::IndexRange vert
blender::IndexRange edge
blender::Map< Object *, ElemIndexRanges > elem_ranges
bool is_dirty(Depsgraph *depsgraph, RegionView3D *rv3d)
blender::Vector< Object * > objects
blender::float4x4 persmat