BRL-CAD
Loading...
Searching...
No Matches
view.h
Go to the documentation of this file.
1
/* V I E W . H
2
* BRL-CAD
3
*
4
* Copyright (c) 1993-2025 United States Government as represented by
5
* the U.S. Army Research Laboratory.
6
*
7
* This library is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public License
9
* version 2.1 as published by the Free Software Foundation.
10
*
11
* This library is distributed in the hope that it will be useful, but
12
* WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* Lesser General Public License for more details.
15
*
16
* You should have received a copy of the GNU Lesser General Public
17
* License along with this file; see the file named COPYING for more
18
* information.
19
*/
20
/** @addtogroup libdm */
21
/** @{ */
22
/** @file dm/view.h
23
*
24
* dm routines related to view management (migrated from libtclcad.) These may
25
* ultimately take a different form or move elsewhere - the immediate idea here
26
* is to extract the key logic from libtclcad for use in non-Tcl environments.
27
*
28
*/
29
30
#include "
common.h
"
31
32
#include "
vmath.h
"
33
34
#include "
bu/hash.h
"
35
#include "
bu/vls.h
"
36
#include "
bv/defines.h
"
37
#include "
dm/defines.h
"
38
39
#ifndef DM_VIEW_H
40
#define DM_VIEW_H
41
42
__BEGIN_DECLS
43
44
struct
dm_path_edit_params
{
45
int
edit_mode
;
46
double
dx
;
47
double
dy
;
48
mat_t
edit_mat
;
49
};
50
51
struct
dm_view_data
{
52
struct
bu_hash_tbl
*
edited_paths
;
53
struct
bu_vls
*
prim_label_list
;
54
int
prim_label_list_size
;
55
int
dlist_on
;
56
int
refresh_on
;
57
};
58
59
DM_EXPORT
extern
void
dm_draw_faceplate
(
struct
bview
*v);
60
61
/* As a temporary measure, require client codes to specifically ask to enable
62
* the bits that require librt in the headers if they're not going to be
63
* calling them. Not ideal, but pulling in rt also pulls in openNURBS, which
64
* can have significant implications. */
65
#ifdef DM_WITH_RT
66
/* TODO - needed for dm_draw_labels, which cracks the database
67
* objects to generate label info. Need to think about how to
68
* better handle this... - ideally should be a callback of some
69
* sort on a bv scene object... */
70
#include "
rt/wdb.h
"
71
72
DM_EXPORT
extern
void
dm_draw_viewobjs
(
struct
rt_wdb
*
wdbp
,
struct
bview
*v,
struct
dm_view_data
*d);
73
74
/* Stripped down form of dm_draw_viewobjs that does just what's needed for the new setup */
75
DM_EXPORT
extern
void
dm_draw_objs
(
struct
bview
*v,
void
(*
dm_draw_custom
)(
struct
bview
*,
void
*),
void
*u_data);
76
#endif
/* DM_NO_RT */
77
78
__END_DECLS
79
80
#endif
/* DM_VIEW_H */
81
82
/** @} */
83
/*
84
* Local Variables:
85
* mode: C
86
* tab-width: 8
87
* indent-tabs-mode: t
88
* c-file-style: "stroustrup"
89
* End:
90
* ex: shiftwidth=4 tabstop=8
91
*/
defines.h
dvec
Definition
dvec.h:74
common.h
Header file for the BRL-CAD common definitions.
defines.h
bu_hash_tbl
struct bu_hash_tbl bu_hash_tbl
Definition
hash.h:48
dm_draw_faceplate
void dm_draw_faceplate(struct bview *v)
mat_t
fastf_t mat_t[ELEMENTS_PER_MAT]
4x4 matrix
Definition
vmath.h:370
hash.h
wdb.h
bu_vls
Definition
vls.h:53
bview
Definition
defines.h:565
dm_path_edit_params
Definition
view.h:44
dm_path_edit_params::dx
double dx
Definition
view.h:46
dm_path_edit_params::edit_mat
mat_t edit_mat
Definition
view.h:48
dm_path_edit_params::edit_mode
int edit_mode
Definition
view.h:45
dm_path_edit_params::dy
double dy
Definition
view.h:47
dm_view_data
Definition
view.h:51
dm_view_data::edited_paths
struct bu_hash_tbl * edited_paths
Definition
view.h:52
dm_view_data::refresh_on
int refresh_on
Definition
view.h:56
dm_view_data::prim_label_list_size
int prim_label_list_size
Definition
view.h:54
dm_view_data::dlist_on
int dlist_on
Definition
view.h:55
dm_view_data::prim_label_list
struct bu_vls * prim_label_list
Definition
view.h:53
rt_wdb
Definition
wdb.h:62
vls.h
vmath.h
fundamental vector, matrix, quaternion math macros
include
dm
view.h
Generated on Sat Jul 5 2025 01:23:51 for BRL-CAD by
1.9.8