![]() | ![]() | ![]() | Gwyddion Library Reference Manual | ![]() |
---|
GwySIUnit — SI unit representation
typedef GwySIValueFormat; struct GwySIUnit; GObject* gwy_si_unit_new (const gchar *unit_string); void gwy_si_unit_set_unit_string (GwySIUnit *siunit, gchar *unit_string); gchar* gwy_si_unit_get_unit_string (GwySIUnit *siunit); GwySIValueFormat* gwy_si_unit_get_format (GwySIUnit *siunit, gdouble value, GwySIValueFormat *format); GwySIValueFormat* gwy_si_unit_get_format_with_resolution (GwySIUnit *siunit, gdouble maximum, gdouble resolution, GwySIValueFormat *format); GwySIValueFormat* gwy_si_unit_get_format_with_digits (GwySIUnit *siunit, gdouble maximum, gint sdigits, GwySIValueFormat *format); void gwy_si_unit_value_format_free (GwySIValueFormat *format);
GObject +----GwySIUnit
GwySIUnit implements GwySerializable.
This object is used for representing SI unit (or any other unit). It is also responsible for prefixes selection.
typedef struct { gdouble magnitude; gint precision; gchar *units; } GwySIValueFormat;
GObject* gwy_si_unit_new (const gchar *unit_string);
Unit string represents unit with no prefixes (e. g. "m", "N", "A", etc.)
unit_string: | unit string |
Returns : | a new GwySiUnit with a given string |
void gwy_si_unit_set_unit_string (GwySIUnit *siunit, gchar *unit_string);
Sets string that represents unit. It is the unit with no prefixes (e. g. "m", "N", "A", etc.)
siunit: | GwySiUnit |
unit_string: | unit string to be set |
gchar* gwy_si_unit_get_unit_string (GwySIUnit *siunit);
siunit: | GwySiUnit |
Returns : | string that represents unit (with no prefixes) |
GwySIValueFormat* gwy_si_unit_get_format (GwySIUnit *siunit, gdouble value, GwySIValueFormat *format);
Finds reasonable representation for a number. This means that number value should be written as value / number->magnitude [number->units].
siunit: | GwySiUnit |
value: | input value |
format: | returned number representation parameters |
Returns : | The value format. If format was NULL, a newly allocated format is returned, otherwise (modified) format itself is returned. |
GwySIValueFormat* gwy_si_unit_get_format_with_resolution (GwySIUnit *siunit, gdouble maximum, gdouble resolution, GwySIValueFormat *format);
Finds a good format for representing a range of values with given resolution.
The values should be then printed as value/format->magnitude [format->units] with format->precision decimal places.
siunit: | A SI unit. |
maximum: | The maximum value to be represented. |
resolution: | The smallest step (approximately) that should make a visible difference in the representation. |
format: | A value format to set-up, may be NULL, a new value format is allocated then. |
Returns : | The value format. If format was NULL, a newly allocated format is returned, otherwise (modified) format itself is returned. |
GwySIValueFormat* gwy_si_unit_get_format_with_digits (GwySIUnit *siunit, gdouble maximum, gint sdigits, GwySIValueFormat *format);
Finds a good format for representing a values with given number of significant digits.
The values should be then printed as value/format->magnitude [format->units] with format->precision decimal places.
siunit: | A SI unit. |
maximum: | The maximum value to be represented. |
sdigits: | The number of significant digits the value should have. |
format: | A value format to set-up, may be NULL, a new value format is allocated then. |
Returns : | The value format. If format was NULL, a newly allocated format is returned, otherwise (modified) format itself is returned. |
void gwy_si_unit_value_format_free (GwySIValueFormat *format);
Frees a value format structure.
format: | A value format to free. |
<< gwymath | gwyutils >> |