#include <body.H>
Inheritance diagram for BODY:


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 | |
| BODY () | |
| virtual | ~BODY () |
| virtual CTAGlist & | tags () const |
| virtual BODYptr | copy (int y=1) const =0 |
| virtual double | nearest (mlib::CWtransf &, mlib::CWpt &, double) |
| virtual int | intersect (RAYhit &r, mlib::CWtransf &xf, mlib::Wpt &near, mlib::Wvec &n, double &d, double &d2d, mlib::XYpt &uvc) const =0 |
| int | intersect (RAYhit &r, mlib::CWtransf &xf) const |
| int | intersect (RAYhit &r) const |
| virtual void | transform (mlib::CWtransf &xform, CMOD &)=0 |
| virtual BODY * | subtract (BODYptr &subtractor)=0 |
| virtual BODY * | intersect (BODYptr &intersector)=0 |
| virtual BODY * | combine (BODYptr &unionor)=0 |
| virtual mlib::CEDGElist & | body_edges ()=0 |
| virtual mlib::CWpt_list & | vertices ()=0 |
| virtual void | set_vertices (mlib::CWpt_list &)=0 |
| virtual void | triangulate (mlib::Wpt_list &verts, FACElist &faces) |
| virtual void | changed ()=0 |
| virtual void | set_geom (GEOM *) |
| virtual int | uv_able () const |
| METHS: Texture stuff. | |
| virtual int | can_set_uv () const |
| virtual void | set_texcoords (mlib::CXYpt_list &) |
| virtual mlib::CXYpt_list & | get_texcoords () |
| virtual BODYptr | body_copy (int y=1) |
| virtual CBBOX & | get_bb ()=0 |
| bool | bb_valid () const |
| virtual DATA_ITEM * | dup () const =0 |
| DEFINE_RTTI_METHODS2 ("BODY", DATA_ITEM, CDATA_ITEM *) | |
| 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 (CVIEWptr &)=0 |
| 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_vis_ref () |
| virtual int | draw_ref_img (ref_img_t t) |
| virtual int | draw_final (CVIEWptr &) |
Static Public Member Functions | |
| static BODYptr | cube () |
| METHS: Static factory methods. | |
| static BODYptr | cone () |
| static BODYptr | cylinder () |
| static BODYptr | sphere () |
| static BODYptr | torus (double radius) |
| static BODYptr | trunc_cone (double radius) |
| static BODYptr | revolve (mlib::CWpt_list &profile, BODYptr &ob) |
| static BODYptr | extrusion (mlib::CWpt_list &profile, BODYptr &ob) |
| static BODYptr | extrusion (mlib::CWpt_list &profile, mlib::CWpt_list &path, BODYptr &ob) |
| static BODYptr | trunc_pyr (CMVEC2 &taper, CMVEC2 &shear) |
| static int | set_factory (BODY *b) |
| static str_ptr | base_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 () |
| static STAT_STR_RET | static_name () |
Protected Member Functions | |
| virtual BODYptr | create_cube () |
| virtual BODYptr | create_cone () |
| virtual BODYptr | create_cylinder () |
| virtual BODYptr | create_sphere () |
| virtual BODYptr | create_torus (double) |
| virtual BODYptr | create_trunc_cone (double) |
| virtual BODYptr | create_revolve (mlib::CWpt_list &, BODYptr &) |
| virtual BODYptr | create_extrusion (mlib::CWpt_list &, BODYptr &) |
| virtual BODYptr | create_extrusion (mlib::CWpt_list &, mlib::CWpt_list &, BODYptr &) |
| virtual BODYptr | create_trunc_pyr (CMVEC2 &, CMVEC2 &) |
Protected Attributes | |
| int | _tris |
| BBOX | _bb |
| mlib::EDGElist | _edges |
| int | _copy |
| TAGlist | _DEFINERtags |
Static Protected Attributes | |
| static BODY * | _factory = 0 |
| static str_ptr | _base_name = BMESH::static_name() |
| static TAGlist | _body_tags |
Static Private Attributes | |
| static mlib::CXYpt_list | _dummy |
Definition at line 30 of file body.H.
|
|
Definition at line 25 of file ref_img_client.H. |
|
|
|
|
|
|
|
||||||||||||||||
|
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 141 of file body.H. References _base_name. |
|
|
Definition at line 137 of file body.H. References _bb, and BBOX::valid(). |
|
|
Definition at line 133 of file body.H. References copy(). |
|
|
Implemented in BMESH. |
|
|
|
|
|
|
|
|
|
|
|
|
Definition at line 116 of file body.H. References _factory, and create_cone(). |
|
|
Implemented in BMESH. Referenced by body_copy(). |
|
|
Definition at line 41 of file body.H. Referenced by cone(). |
|
|
Definition at line 40 of file body.H. Referenced by cube(). |
|
|
Definition at line 42 of file body.H. Referenced by cylinder(). |
|
||||||||||||||||
|
|
|
||||||||||||
|
Definition at line 50 of file body.H. Referenced by extrusion(). |
|
||||||||||||
|
Definition at line 47 of file body.H. Referenced by revolve(). |
|
|
Definition at line 43 of file body.H. Referenced by sphere(). |
|
|
Definition at line 45 of file body.H. Referenced by torus(). |
|
|
Definition at line 46 of file body.H. Referenced by trunc_cone(). |
|
||||||||||||
|
Definition at line 57 of file body.H. Referenced by trunc_pyr(). |
|
|
METHS: Static factory methods.
Definition at line 115 of file body.H. References _factory, and create_cube(). |
|
|
Definition at line 117 of file body.H. References _factory, and create_cylinder(). |
|
||||||||||||
|
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 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(). |
|
|
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(). |
|
|
|
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 in GELset, GEOM, LINE3D, OGLTexture, ControlFrameTexture, ControlLineTexture, SilFrameTexture, SilsTexture, WireframeTexture, ZcrossFrameTexture, ZcrossTexture, CAMwidget_anchor, CAMwidget_anchor, BMESH, Patch, BALLwidget_anchor, and GRIDwidget_anchor. Definition at line 68 of file ref_img_client.H. Referenced by Patch::draw_vis_ref(). |
|
|
Implements DATA_ITEM. |
|
||||||||||||||||
|
Definition at line 128 of file body.H. References _factory, and create_extrusion(). |
|
||||||||||||
|
Definition at line 126 of file body.H. References _factory, and create_extrusion(). |
|
|
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. |
|
|
|
|
|
Definition at line 112 of file body.H. References _dummy. |
|
|
|
|
|
Definition at line 84 of file body.H. References intersect(). |
|
||||||||||||
|
Definition at line 77 of file body.H. References intersect(). |
|
||||||||||||||||||||||||||||||||
|
Referenced by intersect(). |
|
|
Definition at line 214 of file data_item.H. References IS. Referenced by BMESH::operator=(). |
|
|
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 59 of file ref.H. References REFcounter::_mutex, REFcounter::_u, and REF_ME. |
|
|
Reimplemented in Patch. Definition at line 208 of file data_item.H. Referenced by DATA_ITEM::decode(). |
|
||||||||||||
|
Definition at line 124 of file body.H. References _factory, and create_revolve(). |
|
|
Definition at line 218 of file data_item.H. References DATA_ITEM::_decode_unknown. |
|
|
Definition at line 134 of file body.H. References _factory. |
|
|
|
|
|
|
|
|
|
|
|
Definition at line 118 of file body.H. References _factory, and create_sphere(). |
|
|
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 BMESH, and LMESH. Definition at line 67 of file body.H. References _body_tags. Referenced by BMESH::tags(). |
|
|
Definition at line 120 of file body.H. References _factory, and create_torus(). |
|
||||||||||||
|
|
|
||||||||||||
|
Reimplemented in BMESH. Definition at line 101 of file body.H. References ARRAY< T >::clear(), and mlib::Pointlist< L, P, V, S >::clear(). Referenced by BMESH::operator=(). |
|
|
Definition at line 122 of file body.H. References _factory, and create_trunc_cone(). |
|
||||||||||||
|
Definition at line 131 of file body.H. References _factory, and create_trunc_pyr(). |
|
|
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(). |
|
|
METHS: Texture stuff.
|
|
|
Implemented in BMESH. |
|
|
Definition at line 61 of file body.H. Referenced by base_name(). |
|
|
Definition at line 37 of file body.H. Referenced by BMESH::_merge(), bb_valid(), BMESH::changed(), and BMESH::get_bb(). |
|
|
Definition at line 62 of file body.H. Referenced by tags(). |
|
|
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 34 of file body.H. Referenced by get_texcoords(). |
|
|
Reimplemented in BMESH. Definition at line 38 of file body.H. Referenced by BMESH::_merge(), BMESH::body_edges(), and BMESH::changed(). |
|
|
Definition at line 60 of file body.H. Referenced by cone(), cube(), cylinder(), extrusion(), revolve(), set_factory(), sphere(), torus(), trunc_cone(), and trunc_pyr(). |
|
|
|
1.4.4