GwyGraphCurveModel

GwyGraphCurveModel — Representation of one graph curve

Synopsis




            GwyGraphCurveModel;
            GwyGraphCurveModelClass;
#define     gwy_graph_curve_model_duplicate (gcmodel)
GwyGraphCurveModel* gwy_graph_curve_model_new
                                            (void);
void        gwy_graph_curve_model_set_data  (GwyGraphCurveModel *gcmodel,
                                             const gdouble *xdata,
                                             const gdouble *ydata,
                                             gint n);
void        gwy_graph_curve_model_set_data_from_dataline
                                            (GwyGraphCurveModel *gcmodel,
                                             GwyDataLine *dline,
                                             gint from_index,
                                             gint to_index);
const gdouble* gwy_graph_curve_model_get_xdata
                                            (GwyGraphCurveModel *gcmodel);
const gdouble* gwy_graph_curve_model_get_ydata
                                            (GwyGraphCurveModel *gcmodel);
gint        gwy_graph_curve_model_get_ndata (GwyGraphCurveModel *gcmodel);
gboolean    gwy_graph_curve_model_get_x_range
                                            (GwyGraphCurveModel *gcmodel,
                                             gdouble *x_min,
                                             gdouble *x_max);
gboolean    gwy_graph_curve_model_get_y_range
                                            (GwyGraphCurveModel *gcmodel,
                                             gdouble *y_min,
                                             gdouble *y_max);

Object Hierarchy


  GObject
   +----GwyGraphCurveModel

Implemented Interfaces

GwyGraphCurveModel implements GwySerializable.

Properties


  "color"                GwyRGBA               : Read / Write
  "description"          gchararray            : Read / Write
  "line-style"           GdkLineStyle          : Read / Write
  "line-width"           gint                  : Read / Write
  "mode"                 GwyGraphCurveType     : Read / Write
  "point-size"           gint                  : Read / Write
  "point-type"           GwyGraphPointType     : Read / Write

Signals


"data-changed"
            void        user_function      (GwyGraphCurveModel *gwygraphcurvemodel,
                                            gpointer            user_data)               : Run first

Description

GwyGraphCurveModel represents information about a graph curve necessary to fully reconstruct it.

Details

GwyGraphCurveModel

typedef struct _GwyGraphCurveModel GwyGraphCurveModel;


GwyGraphCurveModelClass

typedef struct {
    GObjectClass parent_class;

    void (*data_changed)(GwyGraphCurveModel *model);

    void (*reserved1)(void);
    void (*reserved2)(void);
    void (*reserved3)(void);
} GwyGraphCurveModelClass;


gwy_graph_curve_model_duplicate()

#define     gwy_graph_curve_model_duplicate(gcmodel)

Convenience macro doing gwy_serializable_duplicate() with all the necessary typecasting.

gcmodel : A graph curve model to duplicate.

gwy_graph_curve_model_new ()

GwyGraphCurveModel* gwy_graph_curve_model_new
                                            (void);

Creates a new graph curve model.

Returns : New empty graph curve model as a GObject.

gwy_graph_curve_model_set_data ()

void        gwy_graph_curve_model_set_data  (GwyGraphCurveModel *gcmodel,
                                             const gdouble *xdata,
                                             const gdouble *ydata,
                                             gint n);

Sets curve model data. Curve model will make a copy of the data, so you are responsible for freeing the original arrays.

gcmodel : A graph curve model.
xdata : x data points (array of size n)
ydata : y data points (array of size n)
n : data array size (number of data points)

gwy_graph_curve_model_set_data_from_dataline ()

void        gwy_graph_curve_model_set_data_from_dataline
                                            (GwyGraphCurveModel *gcmodel,
                                             GwyDataLine *dline,
                                             gint from_index,
                                             gint to_index);

Sets the curve data from GwyDataLine. The range of import can be modified using parameters from_index and to_index that are interpreted directly as data indices within the GwyDataLine. In the case that from_index == to_index, the full GwyDataLine is used.

gcmodel : A graph curve model.
dline : A GwyDataLine
from_index : index where to start
to_index : where to stop

gwy_graph_curve_model_get_xdata ()

const gdouble* gwy_graph_curve_model_get_xdata
                                            (GwyGraphCurveModel *gcmodel);

Gets pointer to x data points.

Data are used within the graph and cannot be freed.

gcmodel : A graph curve model.
Returns : X data points, owned by the curve model.

gwy_graph_curve_model_get_ydata ()

const gdouble* gwy_graph_curve_model_get_ydata
                                            (GwyGraphCurveModel *gcmodel);

Gets pointer to y data points.

Data are used within the graph and cannot be freed.

gcmodel : A graph curve model.
Returns : Y data points, owned by the curve model.

gwy_graph_curve_model_get_ndata ()

gint        gwy_graph_curve_model_get_ndata (GwyGraphCurveModel *gcmodel);

gcmodel : A graph curve model.
Returns : number of data points within the curve data

gwy_graph_curve_model_get_x_range ()

gboolean    gwy_graph_curve_model_get_x_range
                                            (GwyGraphCurveModel *gcmodel,
                                             gdouble *x_min,
                                             gdouble *x_max);

Gets the abscissa range of a graph curve.

The values are cached in the curve model therefore repeated calls to this function (with unchanged data) are cheap.

If there are no data points in the curve, x_min and x_max are untouched and the function returns FALSE.

gcmodel : A graph curve model.
x_min : Location to store minimum abscissa value, or NULL.
x_max : Location to store maximum abscissa value, or NULL.
Returns : TRUE if there are any data points in the curve and x_min, x_max were set.

gwy_graph_curve_model_get_y_range ()

gboolean    gwy_graph_curve_model_get_y_range
                                            (GwyGraphCurveModel *gcmodel,
                                             gdouble *y_min,
                                             gdouble *y_max);

Gets the ordinate range of a graph curve.

The values are cached in the curve model therefore repeated calls to this function (with unchanged data) are cheap.

If there are no data points in the curve, x_min and x_max are untouched and the function returns FALSE.

gcmodel : A graph curve model.
y_min : Location to store minimum ordinate value, or NULL.
y_max : Location to store maximum ordinate value, or NULL.
Returns : TRUE if there are any data points in the curve and x_min, x_max were set.

Property Details

The "color" property

  "color"                GwyRGBA               : Read / Write

Curve color.


The "description" property

  "description"          gchararray            : Read / Write

Curve description. It appears on graph key.

Default value: "curve"


The "line-style" property

  "line-style"           GdkLineStyle          : Read / Write

Curve line style. Curve mode has to include lines for the line to be visible.

Default value: GDK_LINE_SOLID


The "line-width" property

  "line-width"           gint                  : Read / Write

Curve line width.

Allowed values: [0,100]

Default value: 1


The "mode" property

  "mode"                 GwyGraphCurveType     : Read / Write

Curve plotting mode (line, points, ...).

Default value: GWY_GRAPH_CURVE_LINE


The "point-size" property

  "point-size"           gint                  : Read / Write

Curve point symbol size.

Allowed values: [0,100]

Default value: 5


The "point-type" property

  "point-type"           GwyGraphPointType     : Read / Write

Curve point symbol type. Curve mode has toinclude points for the symbols to be visible.

Default value: GWY_GRAPH_POINT_SQUARE

Signal Details

The "data-changed" signal

void        user_function                  (GwyGraphCurveModel *gwygraphcurvemodel,
                                            gpointer            user_data)               : Run first

The ::data-changed signal is emitted whenever curve data is set with a function like gwy_graph_curve_model_set_data().

gwygraphcurvemodel : The GwyGraphCurveModel which received the signal.
user_data : user data set when the signal handler was connected.