23 #if ! defined (octave_gl_render_h)
24 #define octave_gl_render_h 1
26 #include "octave-config.h"
45 virtual void draw (
const Matrix& hlist,
bool toplevel =
false)
47 int len = hlist.
numel ();
49 for (
int i = len-1;
i >= 0;
i--)
58 virtual void set_viewport (
int w,
int h);
61 virtual void finish (
void);
77 virtual void init_gl_context (
bool enhanced,
const Matrix& backgroundColor);
80 virtual void set_color (
const Matrix&
c);
81 virtual void set_polygon_offset (
bool on,
float offset = 0.0
f);
82 virtual void set_linewidth (
float w);
83 virtual void set_linestyle (
const std::string&
s,
bool stipple =
false,
84 double linewidth = 0.5);
85 virtual void set_clipbox (
double x1,
double x2,
double y1,
double y2,
86 double z1,
double z2);
87 virtual void set_clipping (
bool on);
95 virtual void end_marker (
void);
96 virtual void draw_marker (
double x,
double y,
double z,
99 virtual void text_to_pixels (
const std::string& txt,
102 int halign = 0,
int valign = 0,
103 double rotation = 0.0);
105 virtual void text_to_strlist (
const std::string& txt,
106 std::list<text_renderer::string>& lst,
108 int halign = 0,
int valign = 0,
109 double rotation = 0.0);
112 double x,
double y,
double z,
113 int halign,
int valign,
double rotation = 0.0);
115 virtual void draw_pixels (
int w,
int h,
const float *data);
116 virtual void draw_pixels (
int w,
int h,
const uint8_t *data);
117 virtual void draw_pixels (
int w,
int h,
const uint16_t *data);
119 virtual void render_grid (
const double linewidth,
121 const Matrix& gridcolor,
const double gridalpha,
122 const Matrix& ticks,
double lim1,
double lim2,
123 double p1,
double p1N,
double p2,
double p2N,
124 int xyz,
bool is_3D);
126 virtual void render_tickmarks (
const Matrix& ticks,
double lim1,
double lim2,
127 double p1,
double p1N,
double p2,
double p2N,
128 double dx,
double dy,
double dz,
129 int xyz,
bool doubleside);
131 virtual void render_ticktexts (
const Matrix& ticks,
133 double lim1,
double lim2,
134 double p1,
double p2,
135 int xyz,
int ha,
int va,
136 int& wmax,
int& hmax);
156 return ((x <
xmin ? 1 : 0)
157 | (x >
xmax ? 1 : 0) << 1
158 | (y < ymin ? 1 : 0) << 2
159 | (y > ymax ? 1 : 0) << 3
160 | (z < zmin ? 1 : 0) << 4
161 | (z > zmax ? 1 : 0) << 5
165 void set_normal (
int bfl_mode,
const NDArray& n,
int j,
int i);
180 std::list<graphics_object>& obj_list);
Octave interface to the compression and uncompression libraries.
virtual graphics_xform get_transform(void) const
octave_int< T > xmax(const octave_int< T > &x, const octave_int< T > &y)
octave_idx_type numel(void) const
Number of elements in the array.
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE const F77_DBLE * f
virtual void draw(const Matrix &hlist, bool toplevel=false)
octave_uint8 clip_code(double x, double y, double z) const
text_renderer txt_renderer
nd deftypefn *octave_map m
std::complex< double > w(std::complex< double > z, double relerr=0)
the sparsity preserving column transformation such that that defines the pivoting threshold can be given in which case it defines the c
octave_int< T > xmin(const octave_int< T > &x, const octave_int< T > &y)
static bool is_nan_or_inf(const octave_value &val)
bool is_nan_or_inf(double x, double y, double z) const
unsigned int current_light
=val(i)}if ode{val(i)}occurs in table i
virtual ~opengl_renderer(void)
the element is set to zero In other the statement xample y
static graphics_object get_object(double val)
virtual void set_interpreter(const caseless_str &interp)
If this string is the system will ring the terminal sometimes it is useful to be able to print the original representation of the string
void xform(ColumnVector &v, const Matrix &m)
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE * x