BRL-CAD
draw.c File Reference
#include "common.h"
#include <stdlib.h>
#include <string.h>
#include "bu/getopt.h"
#include "bu/parallel.h"
#include "mater.h"
#include "./ged_private.h"
Include dependency graph for draw.c:

Go to the source code of this file.

Functions

void _ged_drawH_part2 (int dashflag, struct bu_list *vhead, const struct db_full_path *pathp, struct db_tree_state *tsp, struct _ged_client_data *dgcdp)
 
void _ged_cvt_vlblock_to_solids (struct ged *gedp, struct bn_vlblock *vbp, const char *name, int copy)
 
int _ged_drawtrees (struct ged *gedp, int argc, const char *argv[], int kind, struct _ged_client_data *_dgcdp)
 
int ged_draw_guts (struct ged *gedp, int argc, const char *argv[], int kind)
 
int ged_draw (struct ged *gedp, int argc, const char *argv[])
 
int ged_ev (struct ged *gedp, int argc, const char *argv[])
 
int ged_redraw (struct ged *gedp, int argc, const char *argv[])
 

Detailed Description

The draw command.

Definition in file draw.c.

Function Documentation

void _ged_drawH_part2 ( int  dashflag,
struct bu_list vhead,
const struct db_full_path pathp,
struct db_tree_state tsp,
struct _ged_client_data dgcdp 
)

Once the vlist has been created, perform the common tasks in handling the drawn solid.

This routine must be prepared to run in parallel.

Definition at line 164 of file draw.c.

References dl_add_path(), _ged_client_data::dmode, _ged_client_data::freesolid, _ged_client_data::gdlp, ged::ged_create_vlist_callback, _ged_client_data::gedp, _ged_client_data::hiddenLine, _ged_client_data::transparency, _ged_client_data::wireframe_color, and _ged_client_data::wireframe_color_override.

Referenced by ged_E().

Here is the call graph for this function:

void _ged_cvt_vlblock_to_solids ( struct ged gedp,
struct bn_vlblock vbp,
const char *  name,
int  copy 
)

Definition at line 554 of file draw.c.

References BU_LIST_IS_EMPTY, bu_strlcpy, rt_wdb::dbip, ged::freesolid, ged_drawable::gd_headDisplay, ged::ged_create_vlist_callback, ged::ged_free_vlist_callback, ged::ged_gdp, ged::ged_wdbp, bn_vlblock::head, invent_solid(), bn_vlblock::nused, and bn_vlblock::rgb.

Referenced by _ged_drawtrees(), ged_brep(), ged_gqa(), ged_nirt(), ged_overlay(), and ged_preview().

Here is the call graph for this function:

int _ged_drawtrees ( struct ged gedp,
int  argc,
const char *  argv[],
int  kind,
struct _ged_client_data _dgcdp 
)

Definition at line 581 of file draw.c.

References _GED_BOOL_EVAL, _ged_cvt_vlblock_to_solids(), _GED_DRAW_NMG_POLY, _GED_DRAW_WIREFRAME, _GED_SHADED_MODE_ALL, _GED_SHADED_MODE_BOTS, _GED_SHADED_MODE_EVAL, _GED_SHADED_MODE_UNSET, _GED_WIREFRAME, append_solid_to_display_list(), _ged_client_data::autoview, bu_free(), bu_getopt(), bu_log(), bu_malloc(), bu_optarg, bu_optind, bu_vls_printf(), db_walk_tree(), rt_wdb::dbip, dl_addToDisplay(), dl_redraw(), _ged_client_data::dmode, bview_client_data::dmode, _ged_client_data::do_not_draw_nmg_solids_during_debugging, _ged_client_data::draw_edge_uses, _ged_client_data::draw_edge_uses_vbp, _ged_client_data::draw_nmg_only, _ged_client_data::draw_no_surfaces, _ged_client_data::draw_normals, _ged_client_data::draw_solid_lines_only, bview_client_data::draw_solid_lines_only, _ged_client_data::draw_wireframes, _ged_client_data::fastpath_count, _ged_client_data::freesolid, bview_client_data::freesolid, ged::freesolid, ged_drawable::gd_headDisplay, ged_drawable::gd_shaded_mode, _ged_client_data::gdlp, bview_client_data::gdlp, ged_autoview(), ged::ged_create_vlist_callback, GED_DISPLAY_LIST_NULL, GED_ERROR, ged::ged_gdp, ged::ged_gvp, GED_OK, ged::ged_result_str, ged::ged_wdbp, _ged_client_data::gedp, bview::gv_adaptive_plot, _ged_client_data::hiddenLine, bview_client_data::hiddenLine, memset(), nmg_booltree_leaf_tess(), nmg_booltree_leaf_tnurb(), nmg_km(), nmg_mm(), _ged_client_data::nmg_triangulate, RT_CHECK_DBI, rt_vlblock_free(), rt_vlblock_init(), _ged_client_data::shade_per_vertex_normals, _ged_client_data::shaded_mode_override, _ged_client_data::transparency, bview_client_data::transparency, db_tree_state::ts_m, rt_wdb::wdb_initial_tree_state, _ged_client_data::wireframe_color, bview_client_data::wireframe_color, _ged_client_data::wireframe_color_override, and bview_client_data::wireframe_color_override.

Referenced by ged_cm_end(), and ged_draw_guts().

Here is the call graph for this function:

int ged_draw ( struct ged gedp,
int  argc,
const char *  argv[] 
)

Prepare object(s) for display

Definition at line 1212 of file draw.c.

References _GED_DRAW_WIREFRAME, and ged_draw_guts().

Referenced by ged_blast(), ged_eac(), ged_loadview(), ged_mirror(), redraw_edited_path(), to_edit_redraw(), to_make(), to_mirror(), to_mouse_joint_selection_translate(), and to_vmake().

Here is the call graph for this function:

int ged_ev ( struct ged gedp,
int  argc,
const char *  argv[] 
)

Evaluate objects via NMG tessellation

Definition at line 1219 of file draw.c.

References _GED_DRAW_NMG_POLY, and ged_draw_guts().

Here is the call graph for this function:

int ged_redraw ( struct ged gedp,
int  argc,
const char *  argv[] 
)

Recalculate plots for displayed objects.

Definition at line 1225 of file draw.c.

References BU_LIST_FOR, bu_vls_addr(), bu_vls_printf(), bu_vls_trunc(), db_free_full_path(), db_full_path_match_top(), db_string_to_path(), rt_wdb::dbip, display_list::dl_path, dl_redraw(), ged_drawable::gd_headDisplay, GED_CHECK_ARGC_GT_0, GED_CHECK_DATABASE_OPEN, GED_CHECK_DRAWABLE, ged::ged_create_vlist_callback, GED_ERROR, ged::ged_gdp, ged::ged_gvp, GED_OK, ged::ged_result_str, ged::ged_wdbp, RT_CHECK_DBI, and rt_wdb::wdb_initial_tree_state.

Referenced by to_idle_mode(), and to_view_func_common().

Here is the call graph for this function: