GtkPlot3D

GtkPlot3D

Synopsis

#include <gtkextra.h>

#define             GTK_PLOT3D_FLAGS                    (plot)
#define             GTK_PLOT3D_SET_FLAGS                (plot,
                                                         flag)
#define             GTK_PLOT3D_UNSET_FLAGS              (plot,
                                                         flag)
#define             GTK_PLOT3D_TRANSPARENT              (plot)
enum                GtkPlotPlane;
enum                GtkPlotSide;
GtkWidget *         gtk_plot3d_new                      (GdkDrawable *drawable);
GtkWidget *         gtk_plot3d_new_with_size            (GdkDrawable *drawable,
                                                         gdouble width,
                                                         gdouble height);
void                gtk_plot3d_construct                (GtkPlot3D *plot,
                                                         GdkDrawable *drawable);
void                gtk_plot3d_construct_with_size      (GtkPlot3D *plot,
                                                         GdkDrawable *drawable,
                                                         gdouble width,
                                                         gdouble height);
void                gtk_plot3d_autoscale                (GtkPlot3D *plot);
void                gtk_plot3d_rotate                   (GtkPlot3D *plot,
                                                         gdouble angle_x,
                                                         gdouble angle_y,
                                                         gdouble angle_z);
void                gtk_plot3d_rotate_vector            (GtkPlot3D *plot,
                                                         GtkPlotVector *vector,
                                                         gdouble a1,
                                                         gdouble a2,
                                                         gdouble a3);
void                gtk_plot3d_reset_angles             (GtkPlot3D *plot);
void                gtk_plot3d_rotate_x                 (GtkPlot3D *plot,
                                                         gdouble angle);
void                gtk_plot3d_rotate_y                 (GtkPlot3D *plot,
                                                         gdouble angle);
void                gtk_plot3d_rotate_z                 (GtkPlot3D *plot,
                                                         gdouble angle);
void                gtk_plot3d_get_pixel                (GtkPlot3D *plot,
                                                         gdouble x,
                                                         gdouble y,
                                                         gdouble z,
                                                         gdouble *px,
                                                         gdouble *py,
                                                         gdouble *pz);
void                gtk_plot3d_set_xrange               (GtkPlot3D *plot,
                                                         gdouble min,
                                                         gdouble max);
void                gtk_plot3d_set_yrange               (GtkPlot3D *plot,
                                                         gdouble min,
                                                         gdouble max);
void                gtk_plot3d_set_zrange               (GtkPlot3D *plot,
                                                         gdouble min,
                                                         gdouble max);
void                gtk_plot3d_set_xfactor              (GtkPlot3D *plot,
                                                         gdouble xfactor);
void                gtk_plot3d_set_yfactor              (GtkPlot3D *plot,
                                                         gdouble yfactor);
void                gtk_plot3d_set_zfactor              (GtkPlot3D *plot,
                                                         gdouble zfactor);
gdouble             gtk_plot3d_get_xfactor              (GtkPlot3D *plot);
gdouble             gtk_plot3d_get_yfactor              (GtkPlot3D *plot);
gdouble             gtk_plot3d_get_zfactor              (GtkPlot3D *plot);
void                gtk_plot3d_plane_set_color          (GtkPlot3D *plot,
                                                         GtkPlotPlane plane,
                                                         const GdkColor *color);
void                gtk_plot3d_plane_set_visible        (GtkPlot3D *plot,
                                                         GtkPlotPlane plane,
                                                         gboolean visible);
gboolean            gtk_plot3d_plane_visible            (GtkPlot3D *plot,
                                                         GtkPlotPlane plane);
void                gtk_plot3d_corner_set_visible       (GtkPlot3D *plot,
                                                         gboolean visible);
gboolean            gtk_plot3d_corner_visible           (GtkPlot3D *plot);
void                gtk_plot3d_corner_set_attributes    (GtkPlot3D *plot,
                                                         GtkPlotLineStyle style,
                                                         gfloat width,
                                                         const GdkColor *color);
void                gtk_plot3d_corner_get_attributes    (GtkPlot3D *plot,
                                                         GtkPlotLineStyle *style,
                                                         gfloat *width,
                                                         GdkColor *color);
void                gtk_plot3d_frame_set_attributes     (GtkPlot3D *plot,
                                                         GtkPlotLineStyle style,
                                                         gfloat width,
                                                         const GdkColor *color);
void                gtk_plot3d_frame_get_attributes     (GtkPlot3D *plot,
                                                         GtkPlotLineStyle *style,
                                                         gfloat *width,
                                                         GdkColor *color);
GtkPlotAxis *       gtk_plot3d_get_axis                 (GtkPlot3D *plot,
                                                         GtkPlotOrientation orientation);
GtkPlotAxis *       gtk_plot3d_get_side                 (GtkPlot3D *plot,
                                                         GtkPlotSide side);
void                gtk_plot3d_show_major_ticks         (GtkPlot3D *plot,
                                                         GtkPlotSide side,
                                                         gint ticks_mask);
void                gtk_plot3d_show_minor_ticks         (GtkPlot3D *plot,
                                                         GtkPlotSide side,
                                                         gint ticks_mask);
void                gtk_plot3d_show_labels              (GtkPlot3D *plot,
                                                         GtkPlotSide side,
                                                         gint label_mask);
void                gtk_plot3d_show_title               (GtkPlot3D *plot,
                                                         GtkPlotSide side);
void                gtk_plot3d_hide_title               (GtkPlot3D *plot,
                                                         GtkPlotSide side);
void                gtk_plot3d_set_ticks                (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gdouble major_step,
                                                         gint nminor);
void                gtk_plot3d_set_major_ticks          (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gdouble major_step);
void                gtk_plot3d_set_minor_ticks          (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gint nminor);
void                gtk_plot3d_set_ticks_length         (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gint length);
void                gtk_plot3d_set_ticks_width          (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gfloat width);
void                gtk_plot3d_show_ticks               (GtkPlot3D *plot,
                                                         GtkPlotSide side,
                                                         gint major_mask,
                                                         gint minor_mask);
void                gtk_plot3d_set_titles_offset        (GtkPlot3D *plot,
                                                         gint offset);
gint                gtk_plot3d_get_titles_offset        (GtkPlot3D *plot);
void                gtk_plot3d_set_scale                (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         GtkPlotScale scale);
GtkPlotScale        gtk_plot3d_get_scale                (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis);
void                gtk_plot3d_major_grids_set_visible  (GtkPlot3D *plot,
                                                         gboolean x,
                                                         gboolean y,
                                                         gboolean z);
void                gtk_plot3d_minor_grids_set_visible  (GtkPlot3D *plot,
                                                         gboolean x,
                                                         gboolean y,
                                                         gboolean z);
void                gtk_plot3d_major_grids_visible      (GtkPlot3D *plot,
                                                         gboolean *x,
                                                         gboolean *y,
                                                         gboolean *z);
void                gtk_plot3d_minor_grids_visible      (GtkPlot3D *plot,
                                                         gboolean *x,
                                                         gboolean *y,
                                                         gboolean *z);
void                gtk_plot3d_major_zgrid_set_attributes
                                                        (GtkPlot3D *plot,
                                                         GtkPlotLineStyle style,
                                                         gfloat width,
                                                         const GdkColor *color);
void                gtk_plot3d_major_zgrid_get_attributes
                                                        (GtkPlot3D *plot,
                                                         GtkPlotLineStyle *style,
                                                         gfloat *width,
                                                         GdkColor *color);
void                gtk_plot3d_minor_zgrid_set_attributes
                                                        (GtkPlot3D *plot,
                                                         GtkPlotLineStyle style,
                                                         gfloat width,
                                                         const GdkColor *color);
void                gtk_plot3d_minor_zgrid_get_attributes
                                                        (GtkPlot3D *plot,
                                                         GtkPlotLineStyle *style,
                                                         gfloat *width,
                                                         GdkColor *color);

Description

Details

GTK_PLOT3D_FLAGS()

#define GTK_PLOT3D_FLAGS(plot)         (GTK_PLOT3D(plot)->flags)


GTK_PLOT3D_SET_FLAGS()

#define GTK_PLOT3D_SET_FLAGS(plot,flag) (GTK_PLOT3D_FLAGS(plot) |= (flag))


GTK_PLOT3D_UNSET_FLAGS()

#define GTK_PLOT3D_UNSET_FLAGS(plot,flag) (GTK_PLOT3D_FLAGS(plot) &= ~(flag))


GTK_PLOT3D_TRANSPARENT()

#define GTK_PLOT3D_TRANSPARENT(plot) (GTK_PLOT3D_FLAGS(plot) & GTK_PLOT3D_TRANSPARENT)


enum GtkPlotPlane

typedef enum {
  GTK_PLOT_PLANE_XY = 0,
  GTK_PLOT_PLANE_YX = 0,
  GTK_PLOT_PLANE_XZ = 1,
  GTK_PLOT_PLANE_ZX = 1,
  GTK_PLOT_PLANE_YZ = 2,
  GTK_PLOT_PLANE_ZY = 2,
} GtkPlotPlane;


enum GtkPlotSide

typedef enum {
  GTK_PLOT_SIDE_XY = 1 << 0 ,
  GTK_PLOT_SIDE_XZ = 1 << 1 ,
  GTK_PLOT_SIDE_YX = 1 << 2 ,
  GTK_PLOT_SIDE_YZ = 1 << 3 ,
  GTK_PLOT_SIDE_ZX = 1 << 4 ,
  GTK_PLOT_SIDE_ZY = 1 << 5 ,
} GtkPlotSide;


gtk_plot3d_new ()

GtkWidget *         gtk_plot3d_new                      (GdkDrawable *drawable);


gtk_plot3d_new_with_size ()

GtkWidget *         gtk_plot3d_new_with_size            (GdkDrawable *drawable,
                                                         gdouble width,
                                                         gdouble height);


gtk_plot3d_construct ()

void                gtk_plot3d_construct                (GtkPlot3D *plot,
                                                         GdkDrawable *drawable);


gtk_plot3d_construct_with_size ()

void                gtk_plot3d_construct_with_size      (GtkPlot3D *plot,
                                                         GdkDrawable *drawable,
                                                         gdouble width,
                                                         gdouble height);


gtk_plot3d_autoscale ()

void                gtk_plot3d_autoscale                (GtkPlot3D *plot);


gtk_plot3d_rotate ()

void                gtk_plot3d_rotate                   (GtkPlot3D *plot,
                                                         gdouble angle_x,
                                                         gdouble angle_y,
                                                         gdouble angle_z);


gtk_plot3d_rotate_vector ()

void                gtk_plot3d_rotate_vector            (GtkPlot3D *plot,
                                                         GtkPlotVector *vector,
                                                         gdouble a1,
                                                         gdouble a2,
                                                         gdouble a3);


gtk_plot3d_reset_angles ()

void                gtk_plot3d_reset_angles             (GtkPlot3D *plot);


gtk_plot3d_rotate_x ()

void                gtk_plot3d_rotate_x                 (GtkPlot3D *plot,
                                                         gdouble angle);


gtk_plot3d_rotate_y ()

void                gtk_plot3d_rotate_y                 (GtkPlot3D *plot,
                                                         gdouble angle);


gtk_plot3d_rotate_z ()

void                gtk_plot3d_rotate_z                 (GtkPlot3D *plot,
                                                         gdouble angle);


gtk_plot3d_get_pixel ()

void                gtk_plot3d_get_pixel                (GtkPlot3D *plot,
                                                         gdouble x,
                                                         gdouble y,
                                                         gdouble z,
                                                         gdouble *px,
                                                         gdouble *py,
                                                         gdouble *pz);


gtk_plot3d_set_xrange ()

void                gtk_plot3d_set_xrange               (GtkPlot3D *plot,
                                                         gdouble min,
                                                         gdouble max);


gtk_plot3d_set_yrange ()

void                gtk_plot3d_set_yrange               (GtkPlot3D *plot,
                                                         gdouble min,
                                                         gdouble max);


gtk_plot3d_set_zrange ()

void                gtk_plot3d_set_zrange               (GtkPlot3D *plot,
                                                         gdouble min,
                                                         gdouble max);


gtk_plot3d_set_xfactor ()

void                gtk_plot3d_set_xfactor              (GtkPlot3D *plot,
                                                         gdouble xfactor);


gtk_plot3d_set_yfactor ()

void                gtk_plot3d_set_yfactor              (GtkPlot3D *plot,
                                                         gdouble yfactor);


gtk_plot3d_set_zfactor ()

void                gtk_plot3d_set_zfactor              (GtkPlot3D *plot,
                                                         gdouble zfactor);


gtk_plot3d_get_xfactor ()

gdouble             gtk_plot3d_get_xfactor              (GtkPlot3D *plot);


gtk_plot3d_get_yfactor ()

gdouble             gtk_plot3d_get_yfactor              (GtkPlot3D *plot);


gtk_plot3d_get_zfactor ()

gdouble             gtk_plot3d_get_zfactor              (GtkPlot3D *plot);


gtk_plot3d_plane_set_color ()

void                gtk_plot3d_plane_set_color          (GtkPlot3D *plot,
                                                         GtkPlotPlane plane,
                                                         const GdkColor *color);


gtk_plot3d_plane_set_visible ()

void                gtk_plot3d_plane_set_visible        (GtkPlot3D *plot,
                                                         GtkPlotPlane plane,
                                                         gboolean visible);


gtk_plot3d_plane_visible ()

gboolean            gtk_plot3d_plane_visible            (GtkPlot3D *plot,
                                                         GtkPlotPlane plane);


gtk_plot3d_corner_set_visible ()

void                gtk_plot3d_corner_set_visible       (GtkPlot3D *plot,
                                                         gboolean visible);


gtk_plot3d_corner_visible ()

gboolean            gtk_plot3d_corner_visible           (GtkPlot3D *plot);


gtk_plot3d_corner_set_attributes ()

void                gtk_plot3d_corner_set_attributes    (GtkPlot3D *plot,
                                                         GtkPlotLineStyle style,
                                                         gfloat width,
                                                         const GdkColor *color);


gtk_plot3d_corner_get_attributes ()

void                gtk_plot3d_corner_get_attributes    (GtkPlot3D *plot,
                                                         GtkPlotLineStyle *style,
                                                         gfloat *width,
                                                         GdkColor *color);


gtk_plot3d_frame_set_attributes ()

void                gtk_plot3d_frame_set_attributes     (GtkPlot3D *plot,
                                                         GtkPlotLineStyle style,
                                                         gfloat width,
                                                         const GdkColor *color);


gtk_plot3d_frame_get_attributes ()

void                gtk_plot3d_frame_get_attributes     (GtkPlot3D *plot,
                                                         GtkPlotLineStyle *style,
                                                         gfloat *width,
                                                         GdkColor *color);


gtk_plot3d_get_axis ()

GtkPlotAxis *       gtk_plot3d_get_axis                 (GtkPlot3D *plot,
                                                         GtkPlotOrientation orientation);


gtk_plot3d_get_side ()

GtkPlotAxis *       gtk_plot3d_get_side                 (GtkPlot3D *plot,
                                                         GtkPlotSide side);


gtk_plot3d_show_major_ticks ()

void                gtk_plot3d_show_major_ticks         (GtkPlot3D *plot,
                                                         GtkPlotSide side,
                                                         gint ticks_mask);


gtk_plot3d_show_minor_ticks ()

void                gtk_plot3d_show_minor_ticks         (GtkPlot3D *plot,
                                                         GtkPlotSide side,
                                                         gint ticks_mask);


gtk_plot3d_show_labels ()

void                gtk_plot3d_show_labels              (GtkPlot3D *plot,
                                                         GtkPlotSide side,
                                                         gint label_mask);


gtk_plot3d_show_title ()

void                gtk_plot3d_show_title               (GtkPlot3D *plot,
                                                         GtkPlotSide side);


gtk_plot3d_hide_title ()

void                gtk_plot3d_hide_title               (GtkPlot3D *plot,
                                                         GtkPlotSide side);


gtk_plot3d_set_ticks ()

void                gtk_plot3d_set_ticks                (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gdouble major_step,
                                                         gint nminor);


gtk_plot3d_set_major_ticks ()

void                gtk_plot3d_set_major_ticks          (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gdouble major_step);


gtk_plot3d_set_minor_ticks ()

void                gtk_plot3d_set_minor_ticks          (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gint nminor);


gtk_plot3d_set_ticks_length ()

void                gtk_plot3d_set_ticks_length         (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gint length);


gtk_plot3d_set_ticks_width ()

void                gtk_plot3d_set_ticks_width          (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         gfloat width);


gtk_plot3d_show_ticks ()

void                gtk_plot3d_show_ticks               (GtkPlot3D *plot,
                                                         GtkPlotSide side,
                                                         gint major_mask,
                                                         gint minor_mask);


gtk_plot3d_set_titles_offset ()

void                gtk_plot3d_set_titles_offset        (GtkPlot3D *plot,
                                                         gint offset);


gtk_plot3d_get_titles_offset ()

gint                gtk_plot3d_get_titles_offset        (GtkPlot3D *plot);


gtk_plot3d_set_scale ()

void                gtk_plot3d_set_scale                (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis,
                                                         GtkPlotScale scale);


gtk_plot3d_get_scale ()

GtkPlotScale        gtk_plot3d_get_scale                (GtkPlot3D *plot,
                                                         GtkPlotOrientation axis);


gtk_plot3d_major_grids_set_visible ()

void                gtk_plot3d_major_grids_set_visible  (GtkPlot3D *plot,
                                                         gboolean x,
                                                         gboolean y,
                                                         gboolean z);


gtk_plot3d_minor_grids_set_visible ()

void                gtk_plot3d_minor_grids_set_visible  (GtkPlot3D *plot,
                                                         gboolean x,
                                                         gboolean y,
                                                         gboolean z);


gtk_plot3d_major_grids_visible ()

void                gtk_plot3d_major_grids_visible      (GtkPlot3D *plot,
                                                         gboolean *x,
                                                         gboolean *y,
                                                         gboolean *z);


gtk_plot3d_minor_grids_visible ()

void                gtk_plot3d_minor_grids_visible      (GtkPlot3D *plot,
                                                         gboolean *x,
                                                         gboolean *y,
                                                         gboolean *z);


gtk_plot3d_major_zgrid_set_attributes ()

void                gtk_plot3d_major_zgrid_set_attributes
                                                        (GtkPlot3D *plot,
                                                         GtkPlotLineStyle style,
                                                         gfloat width,
                                                         const GdkColor *color);


gtk_plot3d_major_zgrid_get_attributes ()

void                gtk_plot3d_major_zgrid_get_attributes
                                                        (GtkPlot3D *plot,
                                                         GtkPlotLineStyle *style,
                                                         gfloat *width,
                                                         GdkColor *color);


gtk_plot3d_minor_zgrid_set_attributes ()

void                gtk_plot3d_minor_zgrid_set_attributes
                                                        (GtkPlot3D *plot,
                                                         GtkPlotLineStyle style,
                                                         gfloat width,
                                                         const GdkColor *color);


gtk_plot3d_minor_zgrid_get_attributes ()

void                gtk_plot3d_minor_zgrid_get_attributes
                                                        (GtkPlot3D *plot,
                                                         GtkPlotLineStyle *style,
                                                         gfloat *width,
                                                         GdkColor *color);