#include <line3d.H>
Inheritance diagram for LINE3D:
Public Types | |
enum | ref_img_t { REF_IMG_NONE = 0, REF_IMG_ID = 1, REF_IMG_COLOR = 2, REF_IMG_COLOR_2 = 4, REF_IMG_ID_PRE1 = 8, REF_IMG_ID_PRE2 = 16, REF_IMG_ID_PRE3 = 32, REF_IMG_ID_PRE4 = 64, REF_IMG_TEX_MEM = 128 } |
Public Member Functions | |
LINE3D () | |
LINE3D (mlib::CWpt_list &pts) | |
virtual | ~LINE3D () |
DEFINE_RTTI_METHODS3 ("LINE3D", LINE3D *, GEL, CDATA_ITEM *) | |
void | add (mlib::CWpt &p) |
void | add (mlib::CWpt_list &p) |
void | clear () |
void | set (mlib::CWpt_list &p) |
void | set (int i, mlib::CWpt &p) |
int | num () const |
bool | empty () const |
mlib::CWpt_list & | pts () const |
mlib::CWpt & | operator[] (int i) const |
mlib::CWpt & | point (int i) const |
mlib::Wpt | point (double s) const |
mlib::Wvec | tangent (int i) const |
mlib::Wvec | normal (int i) const |
double | length () const |
bool | loop () const |
double | width () const |
void | set_width (double w) |
CCOLOR & | color () const |
void | set_color (CCOLOR &c) |
double | alpha () const |
void | set_alpha (double a) |
void | set_do_stipple (bool b=true) |
bool | no_depth () const |
void | set_no_depth (bool d) |
void | draw_start (CCOLOR &col, double a, double w, bool do_stipple) |
void | draw_pts () |
void | draw_end () |
virtual RAYhit & | intersect (RAYhit &r, mlib::CWtransf &=mlib::Identity, int=0) const |
virtual int | draw (CVIEWptr &) |
virtual int | draw_vis_ref () |
virtual DATA_ITEM * | dup () const |
DEFINE_RTTI_METHODS3 ("GEL", GEL *, DATA_ITEM, CDATA_ITEM *) | |
virtual CTAGlist & | tags () const |
virtual RAYnear & | nearest (RAYnear &r, mlib::CWtransf &m=mlib::Identity) const |
virtual bool | inside (mlib::CXYpt_list &) const |
virtual bool | needs_blend () const |
virtual BBOX | bbox (int=0) const |
virtual bool | cull (const VIEW *) const |
virtual bool | is_3D () const |
virtual bool | can_do_halo () const |
virtual Cstr_ptr & | name () const |
virtual ostream & | print (ostream &s) const |
void | Own () const |
void | Free () const |
int | Lock () |
void | Unlock () |
int | Unique () const |
virtual void | add_tags () const |
virtual STDdstream & | format (STDdstream &d) const |
virtual STDdstream & | decode (STDdstream &d) |
virtual void | recompute () |
virtual STAT_STR_RET | class_name () const =0 |
virtual int | is_of_type (Cstr_ptr &t) const |
virtual int | draw_id_ref () |
virtual int | draw_id_ref_pre1 () |
virtual int | draw_id_ref_pre2 () |
virtual int | draw_id_ref_pre3 () |
virtual int | draw_id_ref_pre4 () |
virtual int | draw_color_ref () |
virtual int | draw_color_ref_2 () |
virtual int | draw_tex_mem_ref () |
virtual ref_img_t | use_ref_image () |
virtual int | draw_ref_img (ref_img_t t) |
virtual int | draw_final (CVIEWptr &) |
Static Public Member Functions | |
static STAT_STR_RET | static_name () |
static STAT_STR_RET | static_name () |
static int | add_decoder (Cstr_ptr &d, DATA_ITEM *di, int copy=-1) |
static void | set_default_decoder (DATA_ITEM *(*d)(STDdstream &, Cstr_ptr &, DATA_ITEM *)) |
static DATA_ITEM * | Decode (STDdstream &d, int DelayDecoding=0) |
static DATA_ITEM * | lookup (Cstr_ptr &d) |
static HASH * | di_hash () |
Protected Member Functions | |
int | _draw (CCOLOR &col, double a, double w, bool do_stipple) |
Protected Attributes | |
mlib::Wpt_list | _pts |
double | _width |
COLOR | _color |
double | _alpha |
bool | _do_stipple |
bool | _no_depth |
int | _copy |
TAGlist | _DEFINERtags |
Static Protected Attributes | |
static TAGlist * | _gel_tags = 0 |
Definition at line 15 of file line3d.H.
|
Definition at line 25 of file ref_img_client.H. |
|
Definition at line 15 of file line3d.C. Referenced by dup(). |
|
|
|
|
|
Definition at line 122 of file line3d.C. References draw_end(), draw_pts(), draw_start(), and empty(). Referenced by draw(), and draw_vis_ref(). |
|
|
|
Referenced by set(). |
|
Definition at line 41 of file data_item.C. References DATA_ITEM::_hash, and HASH::add(). Referenced by JOTvar< OBJ, TYPE >::check_inst_name(), FUNC_ITEM::FUNC_ITEM(), hashdist::hashdist(), JOTvar< OBJ, TYPE >::JOTvar(), and DISTRIB::notify_exist(). |
|
Definition at line 205 of file data_item.H. |
|
Definition at line 87 of file line3d.H. References _alpha. |
|
|
|
Reimplemented in GEOM. |
|
|
Definition at line 38 of file line3d.H. References _pts, and mlib::Pointlist< L, P, V, S >::clear(). Referenced by set(). |
|
Definition at line 84 of file line3d.H. References _color. |
|
|
|
Definition at line 57 of file data_item.C. References DATA_ITEM::_copy, DATA_ITEM::_decode_unknown, DATA_ITEM::class_name(), DATA_ITEM::decode(), DATA_ITEM::dup(), Config::get_var_bool(), and DATA_ITEM::lookup(). Referenced by JOThash::get(), DISTRIB::interpret(), and operator>>(). |
|
Reimplemented in JOTsend_geom, and BMESH. Definition at line 145 of file data_item.C. References DATA_ITEM::class_name(), COMMENT::decode(), j, COMMENT::name(), TAGformat::read_end_id(), TAGformat::read_id(), DATA_ITEM::recompute(), and DATA_ITEM::tags(). Referenced by DATA_ITEM::Decode(), BMESH::decode(), JOTio::get(), BMESH::get_patches(), Patch::get_texture(), VIEW::get_view_animator(), and VIEW::get_view_data_file(). |
|
|
|
|
|
Definition at line 225 of file data_item.H. References DATA_ITEM::_hash. |
|
Reimplemented from GEL. Definition at line 115 of file line3d.C. References _alpha, _color, _do_stipple, _draw(), and _width. |
|
Reimplemented in GELset. Definition at line 55 of file ref_img_client.H. Referenced by RefImageClient::draw_ref_img(), and RefImageClient::draw_tex_mem_ref(). |
|
Reimplemented in GELset. Definition at line 56 of file ref_img_client.H. Referenced by RefImageClient::draw_ref_img(). |
|
Definition at line 180 of file line3d.C. References empty(), and glPopAttrib(). Referenced by _draw(). |
|
Reimplemented in GELset, GEOM, GESTURE, ControlLineTexture, HiddenLineTexture, BMESH, and Patch. Definition at line 100 of file ref_img_client.H. Referenced by Patch::draw_final(), HiddenLineTexture::draw_final(), and ControlLineTexture::draw_final(). |
|
Reimplemented in GELset, and OGLTexture. Definition at line 50 of file ref_img_client.H. Referenced by RefImageClient::draw_ref_img(). |
|
Reimplemented in GELset. Definition at line 51 of file ref_img_client.H. Referenced by RefImageClient::draw_ref_img(). |
|
Reimplemented in GELset. Definition at line 52 of file ref_img_client.H. Referenced by RefImageClient::draw_ref_img(). |
|
Reimplemented in GELset. Definition at line 53 of file ref_img_client.H. Referenced by RefImageClient::draw_ref_img(). |
|
Reimplemented in GELset. Definition at line 54 of file ref_img_client.H. Referenced by RefImageClient::draw_ref_img(). |
|
Definition at line 168 of file line3d.C. References _pts, empty(), GL_LINE_STRIP, GL_POINTS, glBegin(), glEnd(), glVertex3dv(), ARRAY< T >::num(), and num(). Referenced by _draw(). |
|
|
Definition at line 136 of file line3d.C. References _no_depth, empty(), GL_COL(), GL_CURRENT_BIT, GL_DEPTH_TEST, GL_ENABLE_BIT, GL_LIGHTING, GL_LINE_BIT, GL_LINE_STIPPLE, GL_POINT_BIT, glDisable(), glEnable(), glLineStipple(), glLineWidth(), glPointSize(), glPushAttrib(), and num(). Referenced by _draw(). |
|
Reimplemented in DotsShader, DotsShader_EX, GLSLHatching, HalftoneShader, HalftoneShaderEx, and MSLDShader. Definition at line 57 of file ref_img_client.H. References RefImageClient::draw_color_ref(). Referenced by RefImageClient::draw_ref_img(). |
|
Reimplemented from RefImageClient. Definition at line 104 of file line3d.C. References _draw(), _width, and COLOR::black. |
|
Implements GEL. Definition at line 118 of file line3d.H. References LINE3D(). |
|
Definition at line 55 of file line3d.H. References _pts, and ARRAY< T >::empty(). Referenced by _draw(), draw_end(), draw_pts(), and draw_start(). |
|
Reimplemented in Animator, JOTdone, JOTsend_geom, and BMESH. Definition at line 194 of file data_item.C. References DATA_ITEM::class_name(), TAGformat::end_id(), Config::get_var_bool(), TAGformat::id(), DATA_ITEM::tags(), and STDdstream::write_newline(). Referenced by JOTdone::format(), BMESH::format(), Animator::format(), JOTio::put(), and VIEW::put_view_data_file(). |
|
Definition at line 76 of file ref.H. References REFcounter::_mutex, REFcounter::_u, and REF_ME. |
|
Reimplemented in TEXT2D. |
|
Reimplemented from GEL. |
|
Reimplemented in GEOM. |
|
Definition at line 214 of file data_item.H. References IS. Referenced by BMESH::operator=(). |
|
Definition at line 73 of file line3d.H. References _pts, and mlib::Pointlist< L, P, V, S >::length(). |
|
Definition at line 105 of file ref.H. References REFcounter::_mutex, and REFcounter::_u. Referenced by REFlock::REFlock(). |
|
Definition at line 222 of file data_item.H. References DATA_ITEM::_hash, and HASH::find(). Referenced by DATA_ITEM::Decode(), FUNC_ITEM::FUNC_ITEM(), Patch::get_tex(), and BMESH::read_jot_stream(). |
|
Definition at line 76 of file line3d.H. References _pts, ARRAY< T >::last(), and num(). |
|
Reimplemented in GEOM. Definition at line 129 of file gel.H. References GEL::_name. Referenced by operator<<(). |
|
Reimplemented in GEOM. |
|
Reimplemented in GEOM, ICON2D, DrawWidget, DEBUG_ELLIPSE, GESTURE, CAMwidget_anchor, CAMwidget_anchor, BALLwidget_anchor, and GRIDwidget_anchor. |
|
Definition at line 92 of file line3d.H. References _no_depth. |
|
Definition at line 70 of file line3d.H. References mlib::Vec3< V >::perpend(), and tangent(). |
|
Definition at line 52 of file line3d.H. References _pts, and ARRAY< T >::num(). Referenced by draw_pts(), draw_start(), and loop(). |
|
Definition at line 61 of file line3d.H. References _pts. |
|
Definition at line 59 of file ref.H. References REFcounter::_mutex, REFcounter::_u, and REF_ME. |
|
Definition at line 66 of file line3d.H. References _pts, and mlib::Pointlist< L, P, V, S >::interpolate(). |
|
Definition at line 62 of file line3d.H. References _pts. |
|
Reimplemented in GEOM. Definition at line 131 of file gel.H. Referenced by operator<<(). |
|
Definition at line 58 of file line3d.H. References _pts. |
|
Reimplemented in Patch. Definition at line 208 of file data_item.H. Referenced by DATA_ITEM::decode(). |
|
|
|
|
|
Definition at line 88 of file line3d.H. References _alpha. |
|
Definition at line 85 of file line3d.H. References _color. |
|
Definition at line 218 of file data_item.H. References DATA_ITEM::_decode_unknown. |
|
Definition at line 90 of file line3d.H. References _do_stipple. |
|
Definition at line 93 of file line3d.H. References _no_depth. |
|
Definition at line 82 of file line3d.H. References _width. |
|
Definition at line 44 of file ref_img_client.H. References RET_STAT_STR. Referenced by BMESH::operator=(). |
|
Definition at line 31 of file data_item.C. References RET_STAT_STR. Referenced by BALLwidget_anchor::BALLwidget_anchor(), CAMwidget_anchor::CAMwidget_anchor(), Patch::cur_tex(), OGLTexture::draw_id_ref(), OGLTexture::draw_id_triangles(), OGLTexture::draw_vis_ref(), VIEW::get_view_animator(), GRIDwidget_anchor::GRIDwidget_anchor(), and toggle_sil_frame(). |
|
Reimplemented from DATA_ITEM. Reimplemented in GEOM. Definition at line 113 of file gel.H. References GEL::_gel_tags. Referenced by GEOM::tags(). |
|
Definition at line 69 of file line3d.H. References _pts, and mlib::Pointlist< L, P, V, S >::tan(). Referenced by normal(). |
|
Definition at line 115 of file ref.H. References REFcounter::_mutex, and REFcounter::_u. |
|
Definition at line 111 of file ref.H. References REFcounter::_mutex, and REFcounter::_u. Referenced by REFlock::~REFlock(). |
|
Reimplemented in GEOM, DotsShader, DotsShader_EX, GLSLHatching, HalftoneShader, HalftoneShaderEx, MSLDShader, BMESH, and Patch. Definition at line 60 of file ref_img_client.H. References RefImageClient::REF_IMG_NONE. Referenced by OGLTexture::draw_id_ref(), and Patch::use_ref_image(). |
|
Definition at line 81 of file line3d.H. References _width. |
|
Definition at line 127 of file line3d.H. Referenced by alpha(), draw(), and set_alpha(). |
|
Definition at line 126 of file line3d.H. Referenced by color(), draw(), and set_color(). |
|
Definition at line 197 of file data_item.H. Referenced by DATA_ITEM::Decode(). |
|
Definition at line 198 of file data_item.H. Referenced by DATA_ITEM::tags(). |
|
Definition at line 128 of file line3d.H. Referenced by draw(), and set_do_stipple(). |
|
Definition at line 138 of file gel.H. Referenced by GEL::tags(). |
|
Definition at line 129 of file line3d.H. Referenced by draw_start(), no_depth(), and set_no_depth(). |
|
Definition at line 124 of file line3d.H. Referenced by clear(), draw_pts(), empty(), length(), loop(), num(), operator[](), point(), pts(), and tangent(). |
|
Definition at line 125 of file line3d.H. Referenced by draw(), draw_vis_ref(), set_width(), and width(). |