#include "gl-render.h"
Classes | |
class | patch_tessellator |
Public Member Functions | |
opengl_renderer (const opengl_renderer &)=delete | |
opengl_renderer (opengl_functions &glfcns) | |
virtual | ~opengl_renderer (void)=default |
virtual void | draw (const graphics_object &go, bool toplevel=true) |
void | draw (const Matrix &hlist, bool toplevel=false) |
virtual void | draw_zoom_box (int width, int height, int x1, int y1, int x2, int y2, const Matrix &overlaycolor, double overlayalpha, const Matrix &bordercolor, double borderalpha, double borderwidth) |
virtual void | finish (void) |
opengl_functions & | get_opengl_functions (void) const |
virtual uint8NDArray | get_pixels (int width, int height) |
virtual graphics_xform | get_transform (void) const |
virtual Matrix | get_viewport_scaled (void) const |
opengl_renderer & | operator= (const opengl_renderer &)=delete |
virtual void | set_device_pixel_ratio (double dpr) |
virtual void | set_viewport (int w, int h) |
Protected Member Functions | |
virtual void | draw_axes (const axes::properties &props) |
virtual void | draw_figure (const figure::properties &props) |
virtual void | draw_hggroup (const hggroup::properties &props) |
virtual void | draw_image (const image::properties &props) |
virtual void | draw_light (const light::properties &props) |
virtual void | draw_line (const line::properties &props) |
virtual void | draw_marker (double x, double y, double z, const Matrix &lc, const Matrix &fc) |
virtual void | draw_patch (const patch::properties &props) |
virtual void | draw_surface (const surface::properties &props) |
virtual void | draw_text (const text::properties &props) |
virtual void | draw_text_background (const text::properties &props, bool do_rotate=false) |
virtual void | draw_uibuttongroup (const uibuttongroup::properties &props, const graphics_object &go) |
virtual void | draw_uipanel (const uipanel::properties &props, const graphics_object &go) |
virtual void | draw_zoom_rect (int x1, int y1, int x2, int y2) |
virtual void | end_marker (void) |
virtual void | init_gl_context (bool enhanced, const Matrix &backgroundColor) |
virtual void | init_marker (const std::string &m, double size, float width) |
virtual void | render_grid (const double linewidth, const std::string &gridstyle, const Matrix &gridcolor, const double gridalpha, const Matrix &ticks, double lim1, double lim2, double p1, double p1N, double p2, double p2N, int xyz, bool is_3D) |
virtual Matrix | render_text (const std::string &txt, double x, double y, double z, int halign, int valign, double rotation=0.0) |
virtual void | render_tickmarks (const Matrix &ticks, double lim1, double lim2, double p1, double p1N, double p2, double p2N, double dx, double dy, double dz, int xyz, bool doubleside) |
virtual void | render_ticktexts (const Matrix &ticks, const string_vector &ticklabels, double lim1, double lim2, double p1, double p2, int xyz, int ha, int va, int &wmax, int &hmax) |
virtual void | set_clipbox (double x1, double x2, double y1, double y2, double z1, double z2) |
virtual void | set_clipping (bool on) |
virtual void | set_color (const Matrix &c) |
virtual void | set_font (const base_properties &props) |
virtual void | set_interpreter (const caseless_str &interp) |
virtual void | set_linecap (const std::string &) |
virtual void | set_linejoin (const std::string &) |
virtual void | set_linestyle (const std::string &s, bool stipple=false, double linewidth=0.5) |
virtual void | set_linewidth (float w) |
virtual void | set_polygon_offset (bool on, float offset=0.0f) |
virtual void | set_selecting (bool on) |
virtual void | setup_opengl_transformation (const axes::properties &props) |
virtual void | text_to_pixels (const std::string &txt, uint8NDArray &pixels, Matrix &bbox, int halign=0, int valign=0, double rotation=0.0) |
virtual void | text_to_strlist (const std::string &txt, std::list< text_renderer::string > &lst, Matrix &bbox, int halign=0, int valign=0, double rotation=0.0) |
Protected Attributes | |
double | m_devpixratio |
opengl_functions & | m_glfcns |
graphics_xform | xform |
double | xmax |
double | xmin |
double | ymax |
double | ymin |
double | zmax |
double | zmin |
Private Member Functions | |
uint8_t | clip_code (double x, double y, double z) const |
void | draw_all_lights (const base_properties &props, std::list< graphics_object > &obj_list) |
void | draw_axes_boxes (const axes::properties &props) |
void | draw_axes_children (const axes::properties &props) |
void | draw_axes_grids (const axes::properties &props) |
void | draw_axes_planes (const axes::properties &props) |
void | draw_axes_x_grid (const axes::properties &props) |
void | draw_axes_y_grid (const axes::properties &props) |
void | draw_axes_z_grid (const axes::properties &props) |
std::string | get_string (unsigned int id) const |
void | init_maxlights (void) |
bool | is_nan_or_inf (double x, double y, double z) const |
unsigned int | make_marker_list (const std::string &m, double size, bool filled) const |
double | points_to_pixels (const double val) const |
void | set_normal (int bfl_mode, const NDArray &n, int j, int i) |
Private Attributes | |
ColumnVector | camera_dir |
ColumnVector | camera_pos |
unsigned int | filled_marker_id |
caseless_str | interpreter |
unsigned int | m_current_light |
unsigned int | m_max_lights |
bool | m_printing |
unsigned int | marker_id |
bool | selecting |
graphics_toolkit | toolkit |
text_renderer | txt_renderer |
ColumnVector | view_vector |
double | xZ1 |
double | xZ2 |
Definition at line 38 of file gl-render.h.
octave::opengl_renderer::opengl_renderer | ( | opengl_functions & | glfcns | ) |
Definition at line 688 of file gl-render.cc.
References err_disabled_feature(), and error().
|
delete |
|
virtualdefault |
|
inlineprivate |
Definition at line 173 of file gl-render.h.
References octave::is_nan_or_inf(), x, xmax(), and xmin().
Referenced by draw_line(), draw_patch(), draw_surface(), and draw_text().
|
virtual |
Reimplemented in octave::opengl_selector.
Definition at line 717 of file gl-render.cc.
References draw_axes(), draw_figure(), draw_hggroup(), draw_image(), draw_light(), draw_line(), draw_patch(), draw_surface(), draw_text(), draw_uibuttongroup(), draw_uipanel(), graphics_object::get_properties(), base_properties::get_toolkit(), octave::opengl_functions::glGetError(), base_properties::graphics_object_name(), graphics_object::isa(), m_glfcns, toolkit, graphics_object::valid_object(), and warning().
Referenced by QtHandles::GLCanvas::do_getPixels(), QtHandles::GLCanvas::draw(), octave::opengl_selector::draw(), draw(), draw_all_lights(), draw_axes_children(), draw_figure(), draw_hggroup(), draw_uibuttongroup(), and draw_uipanel().
void octave::opengl_renderer::draw | ( | const Matrix & | hlist, |
bool | toplevel = false |
||
) |
Definition at line 3957 of file gl-render.cc.
References octave::__get_gh_manager__(), draw(), gh_manager::get_object(), len, and Array< T >::numel().
|
private |
Definition at line 2153 of file gl-render.cc.
References octave::__get_gh_manager__(), draw(), base_properties::get_all_children(), gh_manager::get_object(), graphics_object::get_properties(), graphics_object::isa(), m_current_light, m_max_lights, Array< T >::numel(), panic_impossible, selecting, and set_clipping().
Referenced by draw_axes_children().
|
protectedvirtual |
Definition at line 2292 of file gl-render.cc.
References draw_axes_boxes(), draw_axes_children(), draw_axes_grids(), draw_axes_planes(), axes::properties::get_is2D(), axes::properties::get_x_max(), axes::properties::get_x_min(), axes::properties::get_y_max(), axes::properties::get_y_min(), axes::properties::get_z_max(), axes::properties::get_z_min(), octave::opengl_functions::glDisable(), octave::opengl_functions::glEnable(), m_glfcns, max(), panic_impossible, selecting, set_clipbox(), setup_opengl_transformation(), and warning().
Referenced by draw().
|
private |
Definition at line 1377 of file gl-render.cc.
References axes::properties::get_is2D(), axes::properties::get_layer2Dtop(), axes::properties::get_xPlane(), axes::properties::get_xPlaneN(), axes::properties::get_xpTick(), axes::properties::get_xpTickN(), axes::properties::get_xySym(), axes::properties::get_yPlane(), axes::properties::get_yPlaneN(), axes::properties::get_ypTick(), axes::properties::get_ypTickN(), axes::properties::get_zPlane(), axes::properties::get_zPlaneN(), axes::properties::get_zpTick(), axes::properties::get_zpTickN(), octave::opengl_functions::glBegin(), octave::opengl_functions::glEnd(), octave::opengl_functions::glVertex3d(), base_properties::has_property(), Array< T >::isempty(), m_glfcns, panic_impossible, set_color(), set_linecap(), and set_linestyle().
Referenced by draw_axes().
|
private |
Definition at line 2201 of file gl-render.cc.
References draw(), draw_all_lights(), graphics_object::get(), axes::properties::get_num_lights(), graphics_object::get_properties(), octave::opengl_functions::glDisable(), octave::opengl_functions::glLightfv(), init_maxlights(), graphics_object::isa(), m_current_light, m_glfcns, m_max_lights, panic_impossible, set_clipping(), octave_value::string_value(), view_vector, and warning_with_id().
Referenced by draw_axes().
|
private |
Definition at line 2118 of file gl-render.cc.
References draw_axes_x_grid(), draw_axes_y_grid(), draw_axes_z_grid(), octave::opengl_functions::glDisable(), octave::opengl_functions::glEnable(), octave::opengl_functions::glGetBooleanv(), m_glfcns, panic_impossible, set_font(), set_interpreter(), set_linecap(), and set_linewidth().
Referenced by draw_axes().
|
private |
Definition at line 1317 of file gl-render.cc.
References axes::properties::get_is2D(), axes::properties::get_xPlane(), axes::properties::get_xPlaneN(), axes::properties::get_yPlane(), axes::properties::get_yPlaneN(), axes::properties::get_zPlane(), axes::properties::get_zPlaneN(), octave::opengl_functions::glBegin(), octave::opengl_functions::glEnd(), octave::opengl_functions::glVertex3d(), Array< T >::isempty(), m_glfcns, panic_impossible, set_color(), and set_polygon_offset().
Referenced by draw_axes().
|
private |
Definition at line 1537 of file gl-render.cc.
References octave::__get_gh_manager__(), AXE_ANY_DIR, AXE_DEPTH_DIR, AXE_HORZ_DIR, AXE_VERT_DIR, axes::properties::get_fy(), axes::properties::get_fz(), axes::properties::get_is2D(), axes::properties::get_layer2Dtop(), axes::properties::get_nearhoriz(), gh_manager::get_object(), axes::properties::get_x2Dtop(), axes::properties::get_x_max(), axes::properties::get_x_min(), axes::properties::get_xstate(), axes::properties::get_xticklen(), axes::properties::get_xtickoffset(), axes::properties::get_xyzSym(), axes::properties::get_y_max(), axes::properties::get_y_min(), axes::properties::get_yPlane(), axes::properties::get_yPlaneN(), axes::properties::get_ypTick(), axes::properties::get_ypTickN(), axes::properties::get_zPlane(), axes::properties::get_zPlaneN(), axes::properties::get_zpTick(), axes::properties::get_zpTickN(), axes::properties::get_zstate(), octave::opengl_functions::glBegin(), octave::opengl_functions::glEnd(), octave::opengl_functions::glVertex3d(), Array< T >::isempty(), octave::math::isinf(), m_glfcns, octave::math::max(), octave::math::min(), string_vector::numel(), panic_impossible, render_grid(), render_tickmarks(), render_ticktexts(), selecting, graphics_object::set(), set_color(), octave::math::signum(), xform, and graphics_xform::xscale().
Referenced by draw_axes_grids().
|
private |
Definition at line 1734 of file gl-render.cc.
References octave::__get_gh_manager__(), AXE_ANY_DIR, AXE_DEPTH_DIR, AXE_HORZ_DIR, AXE_VERT_DIR, axes::properties::get_fx(), axes::properties::get_fz(), axes::properties::get_is2D(), axes::properties::get_layer2Dtop(), axes::properties::get_nearhoriz(), gh_manager::get_object(), axes::properties::get_x_max(), axes::properties::get_x_min(), axes::properties::get_xPlane(), axes::properties::get_xPlaneN(), axes::properties::get_xpTick(), axes::properties::get_xpTickN(), axes::properties::get_xyzSym(), axes::properties::get_y2Dright(), axes::properties::get_y_max(), axes::properties::get_y_min(), axes::properties::get_ystate(), axes::properties::get_yticklen(), axes::properties::get_ytickoffset(), axes::properties::get_zPlane(), axes::properties::get_zPlaneN(), axes::properties::get_zpTick(), axes::properties::get_zpTickN(), axes::properties::get_zstate(), octave::opengl_functions::glBegin(), octave::opengl_functions::glEnd(), octave::opengl_functions::glVertex3d(), base_properties::has_property(), Array< T >::isempty(), octave::math::isinf(), m_glfcns, octave::math::max(), octave::math::min(), string_vector::numel(), panic_impossible, render_grid(), render_tickmarks(), render_ticktexts(), selecting, graphics_object::set(), set_color(), octave::math::signum(), xform, and graphics_xform::yscale().
Referenced by draw_axes_grids().
|
private |
Definition at line 1932 of file gl-render.cc.
References octave::__get_gh_manager__(), AXE_ANY_DIR, AXE_DEPTH_DIR, AXE_VERT_DIR, axes::properties::get_fx(), axes::properties::get_fy(), gh_manager::get_object(), axes::properties::get_xPlane(), axes::properties::get_xPlaneN(), axes::properties::get_xySym(), axes::properties::get_yPlane(), axes::properties::get_yPlaneN(), axes::properties::get_z_max(), axes::properties::get_z_min(), axes::properties::get_zSign(), axes::properties::get_zstate(), axes::properties::get_zticklen(), axes::properties::get_ztickoffset(), Array< T >::isempty(), octave::math::isinf(), string_vector::numel(), render_grid(), render_tickmarks(), render_ticktexts(), selecting, graphics_object::set(), set_color(), octave::math::signum(), xform, and graphics_xform::zscale().
Referenced by draw_axes_grids().
|
protectedvirtual |
Definition at line 777 of file gl-render.cc.
References draw(), base_properties::get_all_children(), get_string(), init_gl_context(), and m_printing.
Referenced by draw().
|
protectedvirtual |
Definition at line 3735 of file gl-render.cc.
References draw(), and base_properties::get_children().
Referenced by draw().
|
protectedvirtual |
Reimplemented in octave::opengl_selector.
Definition at line 3888 of file gl-render.cc.
References octave::opengl_texture::create(), octave_value::dims(), image::properties::get_color_data(), octave::opengl_functions::glBegin(), octave::opengl_functions::glColor4d(), octave::opengl_functions::glDisable(), octave::opengl_functions::glEnable(), octave::opengl_functions::glEnd(), octave::opengl_functions::glVertex3d(), octave::opengl_texture::is_valid(), m_glfcns, dim_vector::ndims(), panic_impossible, octave::opengl_texture::tex_coord(), Faddeeva::w(), warning(), and x.
Referenced by draw().
|
protectedvirtual |
Definition at line 3698 of file gl-render.cc.
References octave::opengl_functions::glEnable(), octave::opengl_functions::glLightfv(), m_current_light, m_glfcns, and panic_impossible.
Referenced by draw().
|
protectedvirtual |
Definition at line 2364 of file gl-render.cc.
References clip_code(), draw_marker(), end_marker(), octave::opengl_functions::glBegin(), octave::opengl_functions::glEnd(), octave::opengl_functions::glVertex2d(), octave::opengl_functions::glVertex3d(), init_marker(), m_glfcns, max(), min(), n, Array< T >::numel(), panic_impossible, selecting, set_clipping(), set_color(), set_linecap(), set_linejoin(), set_linestyle(), set_linewidth(), x, xform, graphics_xform::xscale(), graphics_xform::yscale(), zmax, zmin, and graphics_xform::zscale().
Referenced by draw().
|
protectedvirtual |
Definition at line 4302 of file gl-render.cc.
References Array< T >::data(), filled_marker_id, octave::opengl_functions::glCallList(), octave::opengl_functions::glColor3dv(), octave::opengl_functions::glEdgeFlag(), octave::opengl_functions::glLoadIdentity(), octave::opengl_functions::glPolygonMode(), octave::opengl_functions::glTranslated(), m_glfcns, marker_id, Array< T >::numel(), panic_impossible, set_polygon_offset(), graphics_xform::transform(), x, and xform.
Referenced by draw_line(), draw_patch(), and draw_surface().
|
protectedvirtual |
Definition at line 3159 of file gl-render.cc.
References octave::opengl_tessellator::add_vertex(), octave::vertex_data::vertex_data_rep::ambient, octave::opengl_tessellator::begin_contour(), octave::opengl_tessellator::begin_polygon(), clip_code(), octave::vertex_data::vertex_data_rep::color, Array< T >::columns(), octave::vertex_data::vertex_data_rep::coords, patch::properties::coplanar_last_idx, Array< T >::data(), octave::vertex_data::vertex_data_rep::diffuse, draw_marker(), octave::opengl_tessellator::end_contour(), end_marker(), octave::opengl_tessellator::end_polygon(), octave::f(), octave::FLAT, Array< T >::fortran_vec(), patch::properties::get_color_data(), patch::properties::get_do_lighting(), octave::opengl_functions::glBegin(), octave::opengl_functions::glColor3dv(), octave::opengl_functions::glColor4d(), octave::opengl_functions::glDisable(), octave::opengl_functions::glEnable(), octave::opengl_functions::glEnd(), octave::opengl_functions::glMaterialf(), octave::opengl_functions::glMaterialfv(), octave::opengl_functions::glShadeModel(), octave::opengl_functions::glVertex3d(), octave::GOURAUD, patch::properties::has_bad_data(), init_marker(), octave::INTERP, is_nan_or_inf(), Array< T >::isempty(), octave::math::isnan(), LIGHT_MODE, m, m_glfcns, octave_value::matrix_value(), Array< T >::numel(), panic_impossible, Matrix::resize(), Array< T >::rows(), graphics_xform::scale(), selecting, set_linecap(), set_linejoin(), set_linestyle(), set_linewidth(), octave::vertex_data::vertex_data_rep::specular, octave::vertex_data::vertex_data_rep::specular_color_refl, octave::UNIFORM, view_vector, warning(), and xform.
Referenced by draw().
|
protectedvirtual |
Definition at line 2510 of file gl-render.cc.
References octave_value::array_value(), clip_code(), Array< T >::columns(), octave::opengl_texture::create(), Array< T >::data(), Array< T >::dims(), draw_marker(), end_marker(), octave::FLAT, surface::properties::get_color_data(), surface::properties::get_do_lighting(), octave::opengl_functions::glBegin(), octave::opengl_functions::glColor3dv(), octave::opengl_functions::glColor3fv(), octave::opengl_functions::glColor4d(), octave::opengl_functions::glColor4fv(), octave::opengl_functions::glDisable(), octave::opengl_functions::glEnable(), octave::opengl_functions::glEnd(), octave::opengl_functions::glMaterialf(), octave::opengl_functions::glMaterialfv(), octave::opengl_functions::glShadeModel(), octave::opengl_functions::glVertex3d(), octave::GOURAUD, init_marker(), octave::INTERP, is_nan_or_inf(), Array< T >::isempty(), octave::math::isfinite(), LIGHT_MODE, m_glfcns, min(), panic_impossible, Array< T >::rows(), selecting, set_linecap(), set_linejoin(), set_linestyle(), set_linewidth(), set_normal(), set_polygon_offset(), octave::opengl_texture::tex_coord(), octave::TEXTURE, octave::UNIFORM, x, xform, graphics_xform::xscale(), graphics_xform::yscale(), and graphics_xform::zscale().
Referenced by draw().
|
protectedvirtual |
Reimplemented in octave::opengl_selector.
Definition at line 3741 of file gl-render.cc.
References clip_code(), draw_text_background(), octave::opengl_functions::glBitmap(), octave::opengl_functions::glDisable(), octave::opengl_functions::glDrawPixels(), octave::opengl_functions::glEnable(), octave::opengl_functions::glIsEnabled(), octave::opengl_functions::glRasterPos3d(), m_glfcns, Array< T >::numel(), panic_impossible, graphics_xform::scale(), set_clipping(), set_font(), and xform.
Referenced by draw().
|
protectedvirtual |
Definition at line 3788 of file gl-render.cc.
References get_transform(), get_viewport_scaled(), octave::opengl_functions::glBegin(), octave::opengl_functions::glColor3f(), octave::opengl_functions::glEnd(), octave::opengl_functions::glIsEnabled(), octave::opengl_functions::glLoadIdentity(), octave::opengl_functions::glMatrixMode(), octave::opengl_functions::glOrtho(), octave::opengl_functions::glPopMatrix(), octave::opengl_functions::glPushMatrix(), octave::opengl_functions::glRotated(), octave::opengl_functions::glTranslated(), octave::opengl_functions::glVertex2d(), Array< T >::isempty(), m, m_devpixratio, m_glfcns, panic_impossible, points_to_pixels(), set_linestyle(), set_linewidth(), set_polygon_offset(), graphics_xform::transform(), xZ1, and xZ2.
Referenced by draw_text().
|
protectedvirtual |
Definition at line 817 of file gl-render.cc.
References draw(), base_properties::get_all_children(), graphics_object::get_ancestor(), graphics_object::get_properties(), and init_gl_context().
Referenced by draw().
|
protectedvirtual |
Definition at line 799 of file gl-render.cc.
References draw(), base_properties::get_all_children(), graphics_object::get_ancestor(), graphics_object::get_properties(), and init_gl_context().
Referenced by draw().
|
virtual |
Definition at line 1153 of file gl-render.cc.
References draw_zoom_rect(), octave::opengl_functions::glBegin(), octave::opengl_functions::glColor4f(), octave::opengl_functions::glDisable(), octave::opengl_functions::glEnd(), octave::opengl_functions::glLineWidth(), octave::opengl_functions::glLoadIdentity(), octave::opengl_functions::glMatrixMode(), octave::opengl_functions::glOrtho(), octave::opengl_functions::glPopAttrib(), octave::opengl_functions::glPopMatrix(), octave::opengl_functions::glPushAttrib(), octave::opengl_functions::glPushMatrix(), m_glfcns, and panic_impossible.
Referenced by QtHandles::GLCanvas::drawZoomBox().
|
protectedvirtual |
Definition at line 1127 of file gl-render.cc.
References octave::opengl_functions::glVertex2d(), m_glfcns, and panic_impossible.
Referenced by draw_zoom_box().
|
protectedvirtual |
Definition at line 4278 of file gl-render.cc.
References filled_marker_id, octave::opengl_functions::glDeleteLists(), octave::opengl_functions::glMatrixMode(), octave::opengl_functions::glPopMatrix(), m_glfcns, marker_id, panic_impossible, and set_linewidth().
Referenced by draw_line(), draw_patch(), and draw_surface().
|
virtual |
Definition at line 1255 of file gl-render.cc.
References octave::opengl_functions::glFinish(), m_glfcns, and panic_impossible.
|
inline |
Definition at line 54 of file gl-render.h.
|
virtual |
Definition at line 1218 of file gl-render.cc.
References idx_vector::colon, Array< T >::fortran_vec(), octave::opengl_functions::glPixelStorei(), octave::opengl_functions::glReadPixels(), m_glfcns, idx_vector::make_range(), panic_impossible, and MArray< T >::permute().
Referenced by QtHandles::GLCanvas::do_getPixels().
|
private |
Definition at line 4374 of file gl-render.cc.
References octave::opengl_functions::glGetString(), m_glfcns, and panic_impossible.
Referenced by draw_figure().
|
inlinevirtual |
Definition at line 66 of file gl-render.h.
References xform().
Referenced by draw_text_background(), and octave::opengl_selector::fake_text().
|
virtual |
Definition at line 3993 of file gl-render.cc.
References octave::opengl_functions::glGetIntegerv(), m_devpixratio, m_glfcns, panic_impossible, and retval.
Referenced by octave::opengl_selector::apply_pick_matrix(), draw_text_background(), init_marker(), and setup_opengl_transformation().
|
protectedvirtual |
Definition at line 835 of file gl-render.cc.
References octave::opengl_functions::glAlphaFunc(), octave::opengl_functions::glBlendFunc(), octave::opengl_functions::glClear(), octave::opengl_functions::glClearColor(), octave::opengl_functions::glDepthFunc(), octave::opengl_functions::glDisable(), octave::opengl_functions::glEnable(), octave::opengl_functions::glGetError(), octave::opengl_functions::glGetIntegerv(), octave::opengl_functions::glHint(), m_glfcns, Array< T >::numel(), panic_impossible, and warning().
Referenced by draw_figure(), draw_uibuttongroup(), and draw_uipanel().
|
protectedvirtual |
Reimplemented in octave::opengl_selector.
Definition at line 4245 of file gl-render.cc.
References filled_marker_id, get_viewport_scaled(), octave::opengl_functions::glLoadIdentity(), octave::opengl_functions::glMatrixMode(), octave::opengl_functions::glOrtho(), octave::opengl_functions::glPushMatrix(), m, m_glfcns, make_marker_list(), marker_id, panic_impossible, set_clipping(), set_linewidth(), xZ1, and xZ2.
Referenced by draw_line(), draw_patch(), draw_surface(), and octave::opengl_selector::init_marker().
|
private |
Definition at line 4351 of file gl-render.cc.
References octave::opengl_functions::glGetIntegerv(), m_glfcns, m_max_lights, and panic_impossible.
Referenced by draw_axes_children().
|
inlineprivate |
Definition at line 165 of file gl-render.h.
References octave::math::isinf(), octave::math::isnan(), and x.
Referenced by draw_patch(), and draw_surface().
|
private |
Definition at line 4454 of file gl-render.cc.
References octave::opengl_functions::glBegin(), octave::opengl_functions::glEnd(), octave::opengl_functions::glEndList(), octave::opengl_functions::glGenLists(), octave::opengl_functions::glNewList(), octave::opengl_functions::glVertex2d(), m_glfcns, max(), panic_impossible, points_to_pixels(), r, and warning().
Referenced by init_marker().
|
delete |
|
private |
Definition at line 4436 of file gl-render.cc.
References octave::__get_gh_manager__(), octave_value::double_value(), graphics_object::get(), gh_manager::get_object(), m_printing, and retval.
Referenced by draw_text_background(), make_marker_list(), set_linestyle(), and set_linewidth().
|
protectedvirtual |
Definition at line 905 of file gl-render.cc.
References octave::opengl_functions::glBegin(), octave::opengl_functions::glColor3dv(), octave::opengl_functions::glColor4d(), octave::opengl_functions::glEnd(), octave::opengl_functions::glVertex3d(), m_glfcns, Array< T >::numel(), panic_impossible, set_linestyle(), octave::X_AXIS, octave::Y_AXIS, and octave::Z_AXIS.
Referenced by draw_axes_x_grid(), draw_axes_y_grid(), and draw_axes_z_grid().
|
protectedvirtual |
Reimplemented in octave::opengl_selector.
Definition at line 4657 of file gl-render.cc.
References Array< T >::data(), octave::opengl_functions::glBitmap(), octave::opengl_functions::glDisable(), octave::opengl_functions::glDrawPixels(), octave::opengl_functions::glEnable(), octave::opengl_functions::glIsEnabled(), octave::opengl_functions::glRasterPos3d(), m_glfcns, octave::text_renderer::ok(), panic_impossible, text_to_pixels(), txt_renderer, and x.
Referenced by render_ticktexts().
|
protectedvirtual |
Definition at line 981 of file gl-render.cc.
References octave::opengl_functions::glBegin(), octave::opengl_functions::glEnd(), octave::opengl_functions::glVertex3d(), m_glfcns, Array< T >::numel(), panic_impossible, octave::X_AXIS, octave::Y_AXIS, and octave::Z_AXIS.
Referenced by draw_axes_x_grid(), draw_axes_y_grid(), and draw_axes_z_grid().
|
protectedvirtual |
Definition at line 1057 of file gl-render.cc.
References max(), Array< T >::numel(), string_vector::numel(), panic_impossible, render_text(), octave::X_AXIS, octave::Y_AXIS, and octave::Z_AXIS.
Referenced by draw_axes_x_grid(), draw_axes_y_grid(), and draw_axes_z_grid().
|
protectedvirtual |
Definition at line 4166 of file gl-render.cc.
References Array< T >::data(), octave::opengl_functions::glClipPlane(), m_glfcns, panic_impossible, xmax, xmin, ymax, ymin, zmax, and zmin.
Referenced by draw_axes().
|
protectedvirtual |
Definition at line 4216 of file gl-render.cc.
References octave::opengl_functions::glDisable(), octave::opengl_functions::glEnable(), octave::opengl_functions::glIsEnabled(), m_glfcns, and panic_impossible.
Referenced by draw_all_lights(), draw_axes_children(), draw_line(), draw_text(), and init_marker().
|
protectedvirtual |
Definition at line 4022 of file gl-render.cc.
References Array< T >::data(), octave::opengl_functions::glColor3dv(), Array< T >::isempty(), m_glfcns, panic_impossible, octave::text_renderer::set_color(), and txt_renderer.
Referenced by draw_axes_boxes(), draw_axes_planes(), draw_axes_x_grid(), draw_axes_y_grid(), draw_axes_z_grid(), and draw_line().
|
inlinevirtual |
Definition at line 64 of file gl-render.h.
Referenced by QtHandles::GLCanvas::do_getPixels(), and QtHandles::GLCanvas::draw().
|
protectedvirtual |
Definition at line 4044 of file gl-render.cc.
References octave_value::double_value(), base_properties::get(), m_devpixratio, octave::text_renderer::set_anti_aliasing(), octave::text_renderer::set_font(), octave_value::string_value(), and txt_renderer.
Referenced by draw_axes_grids(), and draw_text().
|
inlineprotectedvirtual |
Definition at line 102 of file gl-render.h.
Referenced by draw_axes_grids().
|
inlineprotectedvirtual |
Definition at line 109 of file gl-render.h.
Referenced by draw_axes_boxes(), draw_axes_grids(), draw_line(), draw_patch(), and draw_surface().
|
inlineprotectedvirtual |
Definition at line 110 of file gl-render.h.
Referenced by draw_line(), draw_patch(), and draw_surface().
|
protectedvirtual |
Definition at line 4105 of file gl-render.cc.
References octave::opengl_functions::glDisable(), octave::opengl_functions::glEnable(), octave::opengl_functions::glLineStipple(), m_devpixratio, m_glfcns, panic_impossible, points_to_pixels(), and octave::math::round().
Referenced by draw_axes_boxes(), draw_line(), draw_patch(), draw_surface(), draw_text_background(), and render_grid().
|
protectedvirtual |
Definition at line 4086 of file gl-render.cc.
References octave::opengl_functions::glLineWidth(), m_devpixratio, m_glfcns, panic_impossible, points_to_pixels(), and Faddeeva::w().
Referenced by draw_axes_grids(), draw_line(), draw_patch(), draw_surface(), draw_text_background(), end_marker(), and init_marker().
|
private |
Definition at line 4402 of file gl-render.cc.
References d, octave::opengl_functions::glNormal3d(), m_glfcns, n, panic_impossible, view_vector, and x.
Referenced by draw_surface().
|
protectedvirtual |
Definition at line 4056 of file gl-render.cc.
References octave::opengl_functions::glDisable(), octave::opengl_functions::glEnable(), octave::opengl_functions::glPolygonOffset(), m_glfcns, and panic_impossible.
Referenced by draw_axes_planes(), draw_marker(), draw_surface(), and draw_text_background().
|
inlineprotectedvirtual |
Definition at line 112 of file gl-render.h.
Referenced by octave::opengl_selector::draw().
|
virtual |
Definition at line 3973 of file gl-render.cc.
References octave::opengl_functions::glViewport(), m_glfcns, panic_impossible, and Faddeeva::w().
Referenced by QtHandles::GLCanvas::do_getPixels(), QtHandles::GLCanvas::draw(), and QtHandles::GLCanvas::selectFromAxes().
|
protectedvirtual |
Reimplemented in octave::opengl_selector.
Definition at line 1272 of file gl-render.cc.
References Array< T >::data(), axes::properties::get_opengl_matrix_1(), axes::properties::get_opengl_matrix_2(), axes::properties::get_transform(), axes::properties::get_transform_zlim(), get_viewport_scaled(), octave::opengl_functions::glClear(), octave::opengl_functions::glLoadIdentity(), octave::opengl_functions::glMatrixMode(), octave::opengl_functions::glMultMatrixd(), octave::opengl_functions::glOrtho(), octave::opengl_functions::glScaled(), m_glfcns, max(), min(), panic_impossible, xform, xZ1, and xZ2.
Referenced by draw_axes(), and octave::opengl_selector::setup_opengl_transformation().
|
protectedvirtual |
Definition at line 4637 of file gl-render.cc.
References octave::text_renderer::text_to_pixels(), and txt_renderer.
Referenced by octave::opengl_selector::render_text(), and render_text().
|
protectedvirtual |
Definition at line 4647 of file gl-render.cc.
References octave::text_renderer::text_to_strlist(), and txt_renderer.
|
private |
Definition at line 231 of file gl-render.h.
|
private |
Definition at line 231 of file gl-render.h.
|
private |
Definition at line 228 of file gl-render.h.
Referenced by draw_marker(), end_marker(), and init_marker().
|
private |
Definition at line 234 of file gl-render.h.
|
private |
Definition at line 239 of file gl-render.h.
Referenced by draw_all_lights(), draw_axes_children(), and draw_light().
|
protected |
Definition at line 214 of file gl-render.h.
Referenced by draw_text_background(), get_viewport_scaled(), set_font(), set_linestyle(), and set_linewidth().
|
protected |
Definition at line 206 of file gl-render.h.
Referenced by octave::opengl_selector::apply_pick_matrix(), octave::opengl_selector::draw(), draw(), draw_axes(), draw_axes_boxes(), draw_axes_children(), draw_axes_grids(), draw_axes_planes(), draw_axes_x_grid(), draw_axes_y_grid(), octave::opengl_selector::draw_image(), draw_image(), draw_light(), draw_line(), draw_marker(), draw_patch(), draw_surface(), draw_text(), draw_text_background(), draw_zoom_box(), draw_zoom_rect(), end_marker(), octave::opengl_selector::fake_text(), finish(), get_pixels(), get_string(), get_viewport_scaled(), init_gl_context(), init_marker(), init_maxlights(), make_marker_list(), render_grid(), render_text(), render_tickmarks(), octave::opengl_selector::select(), set_clipbox(), set_clipping(), set_color(), set_linestyle(), set_linewidth(), set_normal(), set_polygon_offset(), set_viewport(), and setup_opengl_transformation().
|
private |
Definition at line 240 of file gl-render.h.
Referenced by draw_all_lights(), draw_axes_children(), and init_maxlights().
|
private |
Definition at line 246 of file gl-render.h.
Referenced by draw_figure(), and points_to_pixels().
|
private |
Definition at line 228 of file gl-render.h.
Referenced by draw_marker(), end_marker(), and init_marker().
|
private |
Definition at line 243 of file gl-render.h.
Referenced by draw_all_lights(), draw_axes(), draw_axes_x_grid(), draw_axes_y_grid(), draw_axes_z_grid(), draw_line(), draw_patch(), and draw_surface().
|
private |
Definition at line 222 of file gl-render.h.
Referenced by draw().
|
private |
Definition at line 236 of file gl-render.h.
Referenced by render_text(), set_color(), set_font(), text_to_pixels(), and text_to_strlist().
|
private |
Definition at line 231 of file gl-render.h.
Referenced by draw_axes_children(), draw_patch(), and set_normal().
|
protected |
Definition at line 217 of file gl-render.h.
Referenced by draw_axes_x_grid(), draw_axes_y_grid(), draw_axes_z_grid(), draw_line(), draw_marker(), draw_patch(), draw_surface(), draw_text(), and setup_opengl_transformation().
|
protected |
Definition at line 209 of file gl-render.h.
Referenced by set_clipbox().
|
protected |
Definition at line 209 of file gl-render.h.
Referenced by set_clipbox().
|
private |
Definition at line 225 of file gl-render.h.
Referenced by draw_text_background(), init_marker(), and setup_opengl_transformation().
|
private |
Definition at line 225 of file gl-render.h.
Referenced by draw_text_background(), init_marker(), and setup_opengl_transformation().
|
protected |
Definition at line 210 of file gl-render.h.
Referenced by set_clipbox().
|
protected |
Definition at line 210 of file gl-render.h.
Referenced by set_clipbox().
|
protected |
Definition at line 211 of file gl-render.h.
Referenced by draw_line(), and set_clipbox().
|
protected |
Definition at line 211 of file gl-render.h.
Referenced by draw_line(), and set_clipbox().