![]() |
![]() |
![]() |
Goffice Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
enum GogAxisPolarUnit; enum GogAxisElemType; GogAxisTick; GogAxisMap; GogAxisMap* gog_axis_map_new (GogAxis *axis
,double offset
,double length
); double gog_axis_map (GogAxisMap *map
,double value
); double gog_axis_map_to_view (GogAxisMap *map
,double value
); double gog_axis_map_derivative_to_view (GogAxisMap *map
,double value
); double gog_axis_map_from_view (GogAxisMap *map
,double value
); gboolean gog_axis_map_finite (GogAxisMap *map
,double value
); double gog_axis_map_get_baseline (GogAxisMap *map
); void gog_axis_map_get_extents (GogAxisMap *map
,double *start
,double *stop
); void gog_axis_map_get_bounds (GogAxisMap *map
,double *minimum
,double *maximum
); void gog_axis_map_free (GogAxisMap *map
); gboolean gog_axis_map_is_valid (GogAxisMap *map
); gboolean gog_axis_map_is_inverted (GogAxisMap *map
); gboolean gog_axis_map_is_discrete (GogAxisMap *map
); GogAxisType gog_axis_get_atype (GogAxis const *axis
); gboolean gog_axis_is_center_on_ticks (GogAxis const *axis
); gboolean gog_axis_is_discrete (GogAxis const *axis
); gboolean gog_axis_is_inverted (GogAxis const *axis
); gboolean gog_axis_get_bounds (GogAxis const *axis
,double *minima
,double *maxima
); void gog_axis_set_bounds (GogAxis *axis
,double minimum
,double maximum
); void gog_axis_set_extents (GogAxis *axis
,double start
,double stop
); GOFormat * gog_axis_get_format (GogAxis const *axis
); GOFormat * gog_axis_get_effective_format (GogAxis const *axis
); gboolean gog_axis_set_format (GogAxis *axis
,GOFormat *fmt
); const GODateConventions * gog_axis_get_date_conv (GogAxis const *axis
); unsigned gog_axis_get_ticks (GogAxis *axis
,GogAxisTick **ticks
); GOData * gog_axis_get_labels (GogAxis const *axis
,GogPlot **plot_that_labeled_axis
); double gog_axis_get_entry (GogAxis const *axis
,GogAxisElemType i
,gboolean *user_defined
); void gog_axis_add_contributor (GogAxis *axis
,GogObject *contrib
); void gog_axis_del_contributor (GogAxis *axis
,GogObject *contrib
); GSList const * gog_axis_contributors (GogAxis *axis
); void gog_axis_clear_contributors (GogAxis *axis
); void gog_axis_bound_changed (GogAxis *axis
,GogObject *contrib
); GogGridLine * gog_axis_get_grid_line (GogAxis *axis
,gboolean major
); void gog_axis_set_polar_unit (GogAxis *axis
,GogAxisPolarUnit unit
); GogAxisPolarUnit gog_axis_get_polar_unit (GogAxis *axis
); double gog_axis_get_polar_perimeter (GogAxis *axis
); double gog_axis_get_circular_rotation (GogAxis *axis
);
An axis of a GogPlot. The axis handles things like the bounds, ticks, and tick value formats. When used in plots with X/Y/Z axes, it can optionally have one GogLabel objects in the role "Label".
typedef enum { GOG_AXIS_POLAR_UNIT_DEGREES, GOG_AXIS_POLAR_UNIT_RADIANS, GOG_AXIS_POLAR_UNIT_GRADS, GOG_AXIS_POLAR_UNIT_MAX } GogAxisPolarUnit;
typedef enum { GOG_AXIS_ELEM_MIN = 0, GOG_AXIS_ELEM_MAX, GOG_AXIS_ELEM_MAJOR_TICK, GOG_AXIS_ELEM_MINOR_TICK, GOG_AXIS_ELEM_CROSS_POINT, GOG_AXIS_ELEM_MAX_ENTRY } GogAxisElemType;
GogAxisMap* gog_axis_map_new (GogAxis *axis
,double offset
,double length
);
Creates a GogAxisMap for data mapping to plot window. offset and length are optional parameters to be used with gog_axis_map_to_view in order to translates data coordinates into canvas space.
|
a GogAxis |
|
start of plot area. |
|
length of plot area. |
Returns : |
a newly allocated GogAxisMap. |
double gog_axis_map (GogAxisMap *map
,double value
);
Converts value
to plot coordinates. A value in [0,1.0] range means a data
within axis bounds.
|
a GogAxisMap |
|
value to map to plot space. |
Returns : |
mapped value. |
double gog_axis_map_to_view (GogAxisMap *map
,double value
);
Converts value from data space to canvas space, using offset and length parameters given to gog_axis_map_new.
|
a GogAxisMap |
|
value to map to canvas space |
Returns : |
a value in canvas coordinates |
double gog_axis_map_derivative_to_view (GogAxisMap *map
,double value
);
|
a GogAxisMap |
|
value to map to canvas space |
Returns : |
the derivative of the mapping expression at value. |
double gog_axis_map_from_view (GogAxisMap *map
,double value
);
Converts value from canvas space to data space.
|
a GogAxisMap |
|
value to unmap from canvas space. |
Returns : |
value in data coordinates |
gboolean gog_axis_map_finite (GogAxisMap *map
,double value
);
Tests whether value
is valid for the given map
.
|
a GogAxisMap |
|
value to test |
Returns : |
TRUE if value means something
|
double gog_axis_map_get_baseline (GogAxisMap *map
);
|
a GogAxisMap |
Returns : |
the baseline for map , in view coordinates,
clipped to offset and offset+length, where offset and length
are the parameters of gog_axis_map_new.
|
void gog_axis_map_get_extents (GogAxisMap *map
,double *start
,double *stop
);
Gets start and stop for the given axis map in data coordinates. If axis is not inverted, start = minimum and stop = maximum. If axis is invalid, it'll return arbitrary bounds.
Any of start
and stop
may be NULL.
|
a GogAxisMap |
|
location to store start for this axis |
|
location to store stop for this axis |
void gog_axis_map_get_bounds (GogAxisMap *map
,double *minimum
,double *maximum
);
Gets bounds for the given axis map in data coordinates. If axis is invalid, it'll return arbitrary bounds.
Any of minimum
and maximum
may be NULL.
|
a GogAxisMap |
|
location to store minimum for this axis |
|
location to store maximum for this axis |
void gog_axis_map_free (GogAxisMap *map
);
Frees GogAxisMap object.
|
a GogAxisMap |
gboolean gog_axis_map_is_valid (GogAxisMap *map
);
Tests if map
was correctly initialized, i.e. if bounds are
valid.
|
a GogAxisMap |
Returns : |
TRUE if map is valid
|
gboolean gog_axis_map_is_inverted (GogAxisMap *map
);
|
a GogAxisMap |
Returns : |
TRUE is the axis is inverted;
|
gboolean gog_axis_map_is_discrete (GogAxisMap *map
);
|
a GogAxisMap |
Returns : |
TRUE is the axis is discrete;
|
gboolean gog_axis_is_center_on_ticks (GogAxis const *axis
);
|
GogAxis |
Returns : |
TRUE if labels are centered on ticks when axis is discrete
|
gboolean gog_axis_is_discrete (GogAxis const *axis
);
|
GogAxis |
Returns : |
TRUE if axis enumerates a set of discrete items, rather than a
continuous value
|
gboolean gog_axis_is_inverted (GogAxis const *axis
);
|
GogAxis |
Returns : |
TRUE if axis is inverted.
|
gboolean gog_axis_get_bounds (GogAxis const *axis
,double *minima
,double *maxima
);
|
GogAxis |
|
non-NULL storage for result |
|
non-NULL storage for result |
Returns : |
TRUE if the bounds stored in minima and maxima are sane
|
void gog_axis_set_bounds (GogAxis *axis
,double minimum
,double maximum
);
Sets axis bounds. If minimum or maximum are not finite values, corresponding bound remains unchanged.
|
GogAxis |
|
axis low bound |
|
axis high bound |
void gog_axis_set_extents (GogAxis *axis
,double start
,double stop
);
Set axis exents. It's a convenience function that sets axis bounds taking into account invert flag.
|
GogAxis |
|
axis start bound |
|
axis stop bound |
GOFormat * gog_axis_get_format (GogAxis const *axis
);
|
GogAxis |
Returns : |
the format assigned to axis but does not add a reference.
|
GOFormat * gog_axis_get_effective_format (GogAxis const *axis
);
|
|
Returns : |
gboolean gog_axis_set_format (GogAxis *axis
,GOFormat *fmt
);
Absorbs a reference to fmt
, and accepts NULL.
|
GogAxis |
|
GOFormat |
Returns : |
TRUE if things changed |
const GODateConventions * gog_axis_get_date_conv (GogAxis const *axis
);
|
|
Returns : |
unsigned gog_axis_get_ticks (GogAxis *axis
,GogAxisTick **ticks
);
An accessor to axis->ticks
.
|
GogAxis |
|
an array of GogAxisTick |
Returns : |
number of ticks |
GOData * gog_axis_get_labels (GogAxis const *axis
,GogPlot **plot_that_labeled_axis
);
|
a GogAxis |
|
a GogPlot |
Returns : |
the possibly NULL GOData used as a label for this axis along with the plot that it was associated with |
double gog_axis_get_entry (GogAxis const *axis
,GogAxisElemType i
,gboolean *user_defined
);
|
GogAxis |
|
an optionally NULL pointr to gboolean |
Returns : |
the value of axis element i and sets user_defined or
NaN on error
|
void gog_axis_add_contributor (GogAxis *axis
,GogObject *contrib
);
Register contrib
as taking part in the negotiation of axis
's bounds.
|
GogAxis |
|
GogObject (can we relax this to use an interface ?) |
void gog_axis_del_contributor (GogAxis *axis
,GogObject *contrib
);
contrib
no longer takes part in the negotiation of axis
's bounds.
|
GogAxis |
|
GogObject (can we relax this to use an interface ?) |
void gog_axis_bound_changed (GogAxis *axis
,GogObject *contrib
);
|
GogAxis |
|
GogObject |
GogGridLine * gog_axis_get_grid_line (GogAxis *axis
,gboolean major
);
|
|
|
|
Returns : |
void gog_axis_set_polar_unit (GogAxis *axis
,GogAxisPolarUnit unit
);
Sets unit of a circular axis. See GogAxisPolarUnit for valid values.
|
a GogAxis |
|
GogAxisPolarUnit |
GogAxisPolarUnit gog_axis_get_polar_unit (GogAxis *axis
);
|
a GogAxis |
Returns : |
unit of axis if it's a circular axis of a polar
axis set, -1 otherwise.
|
double gog_axis_get_polar_perimeter (GogAxis *axis
);
|
|
Returns : |