# lv_scale.h (/api/widgets/scale/lv_scale_h)



<RelatedHeaders name="lv_scale_private.h" isPrivate="false" />

<ApiSummary functions="36" enums="2" macros="6" variables="1" />

Functions [#functions]

<ApiTabs items="[&#x22;Setters (22)&#x22;,&#x22;Getters (8)&#x22;,&#x22;Other (6)&#x22;]">
  <ApiTab value="Setters (22)">
    <ApiMember kind="function" name="lv_scale_set_mode" file="widgets/scale/lv_scale.h" line="107" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L107">
      lv_scale_set_mode [#lv_scale_set_mode]

      Set scale mode. See lv\_scale\_mode\_t.

      ```c title=" " lineNumbers=1
      void lv_scale_set_mode(lv_obj_t *obj, lv_scale_mode_t mode)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name   | Type                                             | Description             |
      | ------ | ------------------------------------------------ | ----------------------- |
      | `obj`  | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |
      | `mode` | <ApiLink name="lv_scale_mode_t" />               | the new scale mode      |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_total_tick_count" file="widgets/scale/lv_scale.h" line="114" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L114">
      lv_scale_set_total_tick_count [#lv_scale_set_total_tick_count]

      Set scale total tick count (including minor and major ticks).

      ```c title=" " lineNumbers=1
      void lv_scale_set_total_tick_count(lv_obj_t *obj, uint32_t total_tick_count)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name               | Type                                             | Description             |
      | ------------------ | ------------------------------------------------ | ----------------------- |
      | `obj`              | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |
      | `total_tick_count` | <ApiLink name="uint32_t" />                      | New total tick count    |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_major_tick_every" file="widgets/scale/lv_scale.h" line="121" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L121">
      lv_scale_set_major_tick_every [#lv_scale_set_major_tick_every]

      Sets how often major ticks are drawn.

      ```c title=" " lineNumbers=1
      void lv_scale_set_major_tick_every(lv_obj_t *obj, uint32_t major_tick_every)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name               | Type                                             | Description                          |
      | ------------------ | ------------------------------------------------ | ------------------------------------ |
      | `obj`              | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget              |
      | `major_tick_every` | <ApiLink name="uint32_t" />                      | the new count for major tick drawing |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_label_show" file="widgets/scale/lv_scale.h" line="128" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L128">
      lv_scale_set_label_show [#lv_scale_set_label_show]

      Sets label visibility.

      ```c title=" " lineNumbers=1
      void lv_scale_set_label_show(lv_obj_t *obj, bool show_label)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name         | Type                                             | Description                     |
      | ------------ | ------------------------------------------------ | ------------------------------- |
      | `obj`        | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget         |
      | `show_label` | <ApiLink name="bool" />                          | true/false to enable tick label |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_range" file="widgets/scale/lv_scale.h" line="136" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L136">
      lv_scale_set_range [#lv_scale_set_range]

      Set minimum and maximum values on Scale.

      ```c title=" " lineNumbers=1
      void lv_scale_set_range(lv_obj_t *obj, int32_t min, int32_t max)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |
      | `min` | <ApiLink name="int32_t" />                       | minimum value of Scale  |
      | `max` | <ApiLink name="int32_t" />                       | maximum value of Scale  |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_min_value" file="widgets/scale/lv_scale.h" line="143" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L143">
      lv_scale_set_min_value [#lv_scale_set_min_value]

      Set minimum values on Scale.

      ```c title=" " lineNumbers=1
      void lv_scale_set_min_value(lv_obj_t *obj, int32_t min)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |
      | `min` | <ApiLink name="int32_t" />                       | minimum value of Scale  |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_max_value" file="widgets/scale/lv_scale.h" line="150" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L150">
      lv_scale_set_max_value [#lv_scale_set_max_value]

      Set maximum values on Scale.

      ```c title=" " lineNumbers=1
      void lv_scale_set_max_value(lv_obj_t *obj, int32_t max)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |
      | `max` | <ApiLink name="int32_t" />                       |                         |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_angle_range" file="widgets/scale/lv_scale.h" line="158" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L158">
      lv_scale_set_angle_range [#lv_scale_set_angle_range]

      Set angle between the low end and the high end of the Scale. (Applies only to round Scales.)

      ```c title=" " lineNumbers=1
      void lv_scale_set_angle_range(lv_obj_t *obj, uint32_t angle_range)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name          | Type                                             | Description             |
      | ------------- | ------------------------------------------------ | ----------------------- |
      | `obj`         | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |
      | `angle_range` | <ApiLink name="uint32_t" />                      |                         |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_rotation" file="widgets/scale/lv_scale.h" line="180" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L180">
      lv_scale_set_rotation [#lv_scale_set_rotation]

      Set angular offset from the 3-o'clock position of the low end of the Scale. (Applies only to round Scales.)

      ```c title=" " lineNumbers=1
      void lv_scale_set_rotation(lv_obj_t *obj, int32_t rotation)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name       | Type                                             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
      | ---------- | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
      | `obj`      | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
      | `rotation` | <ApiLink name="int32_t" />                       | clockwise angular offset (in degrees) from the 3-o'clock position of the low end of the scale; negative and >360 values are first normalized to range \[0..360]. Examples:<br />- 0 = 3 o'clock (right side)<br />- 30 = 4 o'clock<br />- 60 = 5 o'clock<br />- 90 = 6 o'clock<br />- 135 = midway between 7 and 8 o'clock (default)<br />- 180 = 9 o'clock<br />- 270 = 12 o'clock<br />- 300 = 1 o'clock<br />- 330 = 2 o'clock<br />- -30 = 2 o'clock<br />- 390 = 4 o'clock |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_line_needle_value" file="widgets/scale/lv_scale.h" line="193" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L193">
      lv_scale_set_line_needle_value [#lv_scale_set_line_needle_value]

      Point line needle to specified value.

      ```c title=" " lineNumbers=1
      void lv_scale_set_line_needle_value(lv_obj_t *obj, lv_obj_t *needle_line, int32_t needle_length, int32_t value)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name            | Type                                             | Description                                                                                                                                                              |
      | --------------- | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
      | `obj`           | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget                                                                                                                                                  |
      | `needle_line`   | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | needle\_line of the Scale. The line points will be allocated and managed by the Scale unless the line point array was previously set using `lv_line_set_points_mutable`. |
      | `needle_length` | <ApiLink name="int32_t" />                       | length of the needle<br />- needle\_length>0: needle\_length=needle\_length;<br />- needle\_length\<0: needle\_length=radius-\|needle\_length\|;                         |
      | `value`         | <ApiLink name="int32_t" />                       | Scale value needle will point to                                                                                                                                         |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_image_needle_value" file="widgets/scale/lv_scale.h" line="203" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L203">
      lv_scale_set_image_needle_value [#lv_scale_set_image_needle_value]

      Point image needle to specified value; image must point to the right. E.g. -O---—>

      ```c title=" " lineNumbers=1
      void lv_scale_set_image_needle_value(lv_obj_t *obj, lv_obj_t *needle_img, int32_t value)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name         | Type                                             | Description                      |
      | ------------ | ------------------------------------------------ | -------------------------------- |
      | `obj`        | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget          |
      | `needle_img` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to needle's Image        |
      | `value`      | <ApiLink name="int32_t" />                       | Scale value needle will point to |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_text_src" file="widgets/scale/lv_scale.h" line="211" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L211">
      lv_scale_set_text_src [#lv_scale_set_text_src]

      Set custom text source for major ticks labels.

      ```c title=" " lineNumbers=1
      void lv_scale_set_text_src(lv_obj_t *obj, const char *txt_src[])
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                             | Description                                                                                               |
      | --------- | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------- |
      | `obj`     | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget                                                                                   |
      | `txt_src` | `const char *`                                   | pointer to an array of strings which will be display at major ticks; last element must be a NULL pointer. |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_post_draw" file="widgets/scale/lv_scale.h" line="218" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L218">
      lv_scale_set_post_draw [#lv_scale_set_post_draw]

      Draw Scale after all its children are drawn.

      ```c title=" " lineNumbers=1
      void lv_scale_set_post_draw(lv_obj_t *obj, bool en)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |
      | `en`  | <ApiLink name="bool" />                          | true: enable post draw  |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_draw_ticks_on_top" file="widgets/scale/lv_scale.h" line="225" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L225">
      lv_scale_set_draw_ticks_on_top [#lv_scale_set_draw_ticks_on_top]

      Draw Scale ticks on top of all other parts.

      ```c title=" " lineNumbers=1
      void lv_scale_set_draw_ticks_on_top(lv_obj_t *obj, bool en)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description                                 |
      | ----- | ------------------------------------------------ | ------------------------------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget                     |
      | `en`  | <ApiLink name="bool" />                          | true: enable draw ticks on top of all parts |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_section_set_range" file="widgets/scale/lv_scale.h" line="242" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L242">
      lv_scale_section_set_range [#lv_scale_section_set_range]

      DEPRECATED, use lv\_scale\_set\_section\_range instead. Set range for specified Scale Section

      ```c title=" " lineNumbers=1
      void lv_scale_section_set_range(lv_scale_section_t *section, int32_t min, int32_t max)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                                                 | Description        |
      | --------- | -------------------------------------------------------------------- | ------------------ |
      | `section` | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to Section |
      | `min`     | <ApiLink name="int32_t" />                                           |                    |
      | `max`     | <ApiLink name="int32_t" />                                           |                    |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_section_range" file="widgets/scale/lv_scale.h" line="251" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L251">
      lv_scale_set_section_range [#lv_scale_set_section_range]

      Set the range of a scale section

      ```c title=" " lineNumbers=1
      void lv_scale_set_section_range(lv_obj_t *scale, lv_scale_section_t *section, int32_t min, int32_t max)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                                                 | Description        |
      | --------- | -------------------------------------------------------------------- | ------------------ |
      | `scale`   | <ApiLink name="lv_obj_t" display="lv_obj_t *" />                     | pointer to scale   |
      | `section` | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to section |
      | `min`     | <ApiLink name="int32_t" />                                           |                    |
      | `max`     | <ApiLink name="int32_t" />                                           |                    |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_section_min_value" file="widgets/scale/lv_scale.h" line="259" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L259">
      lv_scale_set_section_min_value [#lv_scale_set_section_min_value]

      Set the minimum value of a scale section

      ```c title=" " lineNumbers=1
      void lv_scale_set_section_min_value(lv_obj_t *scale, lv_scale_section_t *section, int32_t min)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                                                 | Description                     |
      | --------- | -------------------------------------------------------------------- | ------------------------------- |
      | `scale`   | <ApiLink name="lv_obj_t" display="lv_obj_t *" />                     | pointer to scale                |
      | `section` | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to section              |
      | `min`     | <ApiLink name="int32_t" />                                           | the section's new minimum value |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_section_max_value" file="widgets/scale/lv_scale.h" line="267" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L267">
      lv_scale_set_section_max_value [#lv_scale_set_section_max_value]

      Set the maximum value of a scale section

      ```c title=" " lineNumbers=1
      void lv_scale_set_section_max_value(lv_obj_t *scale, lv_scale_section_t *section, int32_t max)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                                                 | Description                     |
      | --------- | -------------------------------------------------------------------- | ------------------------------- |
      | `scale`   | <ApiLink name="lv_obj_t" display="lv_obj_t *" />                     | pointer to scale                |
      | `section` | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to section              |
      | `max`     | <ApiLink name="int32_t" />                                           | the section's new maximum value |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_section_set_style" file="widgets/scale/lv_scale.h" line="276" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L276">
      lv_scale_section_set_style [#lv_scale_section_set_style]

      DEPRECATED, use lv\_scale\_set\_section\_style\_main/indicator/items instead. Set style for specified part of Section.

      ```c title=" " lineNumbers=1
      void lv_scale_section_set_style(lv_scale_section_t *section, lv_part_t part, lv_style_t *section_part_style)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name                 | Type                                                                 | Description                                                             |
      | -------------------- | -------------------------------------------------------------------- | ----------------------------------------------------------------------- |
      | `section`            | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to Section                                                      |
      | `part`               | <ApiLink name="lv_part_t" />                                         | the part of the Scale the style will apply to, e.g. LV\_PART\_INDICATOR |
      | `section_part_style` | <ApiLink name="lv_style_t" display="lv_style_t *" />                 | pointer to style to apply                                               |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_section_style_main" file="widgets/scale/lv_scale.h" line="284" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L284">
      lv_scale_set_section_style_main [#lv_scale_set_section_style_main]

      Set the style of the line on a section.

      ```c title=" " lineNumbers=1
      void lv_scale_set_section_style_main(lv_obj_t *scale, lv_scale_section_t *section, const lv_style_t *style)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                                                 | Description        |
      | --------- | -------------------------------------------------------------------- | ------------------ |
      | `scale`   | <ApiLink name="lv_obj_t" display="lv_obj_t *" />                     | pointer to scale   |
      | `section` | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to section |
      | `style`   | <ApiLink name="lv_style_t" display="const lv_style_t *" />           | point to a style   |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_section_style_indicator" file="widgets/scale/lv_scale.h" line="292" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L292">
      lv_scale_set_section_style_indicator [#lv_scale_set_section_style_indicator]

      Set the style of the major ticks and label on a section.

      ```c title=" " lineNumbers=1
      void lv_scale_set_section_style_indicator(lv_obj_t *scale, lv_scale_section_t *section, const lv_style_t *style)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                                                 | Description        |
      | --------- | -------------------------------------------------------------------- | ------------------ |
      | `scale`   | <ApiLink name="lv_obj_t" display="lv_obj_t *" />                     | pointer to scale   |
      | `section` | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to section |
      | `style`   | <ApiLink name="lv_style_t" display="const lv_style_t *" />           | point to a style   |
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_set_section_style_items" file="widgets/scale/lv_scale.h" line="300" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L300">
      lv_scale_set_section_style_items [#lv_scale_set_section_style_items]

      Set the style of the minor ticks on a section.

      ```c title=" " lineNumbers=1
      void lv_scale_set_section_style_items(lv_obj_t *scale, lv_scale_section_t *section, const lv_style_t *style)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                                                 | Description        |
      | --------- | -------------------------------------------------------------------- | ------------------ |
      | `scale`   | <ApiLink name="lv_obj_t" display="lv_obj_t *" />                     | pointer to scale   |
      | `section` | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to section |
      | `style`   | <ApiLink name="lv_style_t" display="const lv_style_t *" />           | point to a style   |
    </ApiMember>
  </ApiTab>

  <ApiTab value="Getters (8)">
    <ApiMember kind="function" name="lv_scale_get_mode" file="widgets/scale/lv_scale.h" line="311" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L311">
      lv_scale_get_mode [#lv_scale_get_mode]

      Get scale mode. See lv\_scale\_mode\_t

      ```c title=" " lineNumbers=1
      lv_scale_mode_t lv_scale_get_mode(lv_obj_t *obj)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |

      **Returns:** <ApiLink name="lv_scale_mode_t" /> — Scale mode
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_get_total_tick_count" file="widgets/scale/lv_scale.h" line="318" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L318">
      lv_scale_get_total_tick_count [#lv_scale_get_total_tick_count]

      Get scale total tick count (including minor and major ticks)

      ```c title=" " lineNumbers=1
      int32_t lv_scale_get_total_tick_count(lv_obj_t *obj)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |

      **Returns:** <ApiLink name="int32_t" /> — Scale total tick count
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_get_major_tick_every" file="widgets/scale/lv_scale.h" line="325" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L325">
      lv_scale_get_major_tick_every [#lv_scale_get_major_tick_every]

      Get how often the major tick will be drawn

      ```c title=" " lineNumbers=1
      int32_t lv_scale_get_major_tick_every(lv_obj_t *obj)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |

      **Returns:** <ApiLink name="int32_t" /> — Scale major tick every count
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_get_rotation" file="widgets/scale/lv_scale.h" line="332" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L332">
      lv_scale_get_rotation [#lv_scale_get_rotation]

      Get angular location of low end of Scale.

      ```c title=" " lineNumbers=1
      int32_t lv_scale_get_rotation(lv_obj_t *obj)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |

      **Returns:** <ApiLink name="int32_t" /> — Scale low end angular location
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_get_label_show" file="widgets/scale/lv_scale.h" line="339" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L339">
      lv_scale_get_label_show [#lv_scale_get_label_show]

      Gets label visibility

      ```c title=" " lineNumbers=1
      bool lv_scale_get_label_show(lv_obj_t *obj)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |

      **Returns:** <ApiLink name="bool" /> — true if tick label is enabled, false otherwise
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_get_angle_range" file="widgets/scale/lv_scale.h" line="346" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L346">
      lv_scale_get_angle_range [#lv_scale_get_angle_range]

      Get Scale's range in degrees

      ```c title=" " lineNumbers=1
      uint32_t lv_scale_get_angle_range(lv_obj_t *obj)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |

      **Returns:** <ApiLink name="uint32_t" /> — Scale's angle\_range
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_get_range_min_value" file="widgets/scale/lv_scale.h" line="353" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L353">
      lv_scale_get_range_min_value [#lv_scale_get_range_min_value]

      Get minimum value for Scale

      ```c title=" " lineNumbers=1
      int32_t lv_scale_get_range_min_value(lv_obj_t *obj)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |

      **Returns:** <ApiLink name="int32_t" /> — Scale's minimum value
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_get_range_max_value" file="widgets/scale/lv_scale.h" line="360" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L360">
      lv_scale_get_range_max_value [#lv_scale_get_range_max_value]

      Get maximum value for Scale

      ```c title=" " lineNumbers=1
      int32_t lv_scale_get_range_max_value(lv_obj_t *obj)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |

      **Returns:** <ApiLink name="int32_t" /> — Scale's maximum value
    </ApiMember>
  </ApiTab>

  <ApiTab value="Other (6)">
    <ApiMember kind="function" name="lv_scale_create" file="widgets/scale/lv_scale.h" line="92" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L92">
      lv_scale_create [#lv_scale_create]

      Create an scale object

      ```c title=" " lineNumbers=1
      lv_obj_t * lv_scale_create(lv_obj_t *parent)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name     | Type                                             | Description                                                  |
      | -------- | ------------------------------------------------ | ------------------------------------------------------------ |
      | `parent` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to an object, it will be the parent of the new scale |

      **Returns:** <ApiLink name="lv_obj_t" display="lv_obj_t *" /> — pointer to created Scale Widget
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_add_section" file="widgets/scale/lv_scale.h" line="233" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L233">
      lv_scale_add_section [#lv_scale_add_section]

      Add a Section to specified Scale. Section will not be drawn until a valid range is set for it using <ApiLink name="lv_scale_set_section_range" display="lv_scale_set_section_range()" />.

      ```c title=" " lineNumbers=1
      lv_scale_section_t * lv_scale_add_section(lv_obj_t *obj)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                             | Description             |
      | ----- | ------------------------------------------------ | ----------------------- |
      | `obj` | <ApiLink name="lv_obj_t" display="lv_obj_t *" /> | pointer to Scale Widget |

      **Returns:** <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> — pointer to new Section
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_bind_section_min_value" file="widgets/scale/lv_scale.h" line="375" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L375">
      lv_scale_bind_section_min_value [#lv_scale_bind_section_min_value]

      Bind an integer subject to a scales section minimum value

      ```c title=" " lineNumbers=1
      lv_observer_t * lv_scale_bind_section_min_value(lv_obj_t *obj, lv_scale_section_t *section, lv_subject_t *subject)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                                                 | Description                |
      | --------- | -------------------------------------------------------------------- | -------------------------- |
      | `obj`     | <ApiLink name="lv_obj_t" display="lv_obj_t *" />                     | pointer to a Scale         |
      | `section` | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to a Scale section |
      | `subject` | <ApiLink name="lv_subject_t" display="lv_subject_t *" />             | pointer to a Subject       |

      **Returns:** <ApiLink name="lv_observer_t" display="lv_observer_t *" /> — pointer to newly-created Observer
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_bind_section_max_value" file="widgets/scale/lv_scale.h" line="384" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L384">
      lv_scale_bind_section_max_value [#lv_scale_bind_section_max_value]

      Bind an integer subject to a scales section maximum value

      ```c title=" " lineNumbers=1
      lv_observer_t * lv_scale_bind_section_max_value(lv_obj_t *obj, lv_scale_section_t *section, lv_subject_t *subject)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name      | Type                                                                 | Description                |
      | --------- | -------------------------------------------------------------------- | -------------------------- |
      | `obj`     | <ApiLink name="lv_obj_t" display="lv_obj_t *" />                     | pointer to an Scale        |
      | `section` | <ApiLink name="lv_scale_section_t" display="lv_scale_section_t *" /> | pointer to a Scale section |
      | `subject` | <ApiLink name="lv_subject_t" display="lv_subject_t *" />             | pointer to a Subject       |

      **Returns:** <ApiLink name="lv_observer_t" display="lv_observer_t *" /> — pointer to newly-created Observer
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_bind_line_needle_value" file="widgets/scale/lv_scale.h" line="394" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L394">
      lv_scale_bind_line_needle_value [#lv_scale_bind_line_needle_value]

      Bind an integer subject to a scale's line needle value

      ```c title=" " lineNumbers=1
      lv_observer_t * lv_scale_bind_line_needle_value(lv_obj_t *obj, lv_obj_t *needle_line, int32_t needle_length, lv_subject_t *subject)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name            | Type                                                     | Description              |
      | --------------- | -------------------------------------------------------- | ------------------------ |
      | `obj`           | <ApiLink name="lv_obj_t" display="lv_obj_t *" />         | pointer to a Scale       |
      | `needle_line`   | <ApiLink name="lv_obj_t" display="lv_obj_t *" />         | pointer to a line needle |
      | `needle_length` | <ApiLink name="int32_t" />                               | length of the needle     |
      | `subject`       | <ApiLink name="lv_subject_t" display="lv_subject_t *" /> | pointer to a Subject     |

      **Returns:** <ApiLink name="lv_observer_t" display="lv_observer_t *" /> — pointer to newly-created Observer
    </ApiMember>

    <ApiMember kind="function" name="lv_scale_bind_image_needle_value" file="widgets/scale/lv_scale.h" line="404" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L404">
      lv_scale_bind_image_needle_value [#lv_scale_bind_image_needle_value]

      Bind an integer subject to a scale's image needle value

      ```c title=" " lineNumbers=1
      lv_observer_t * lv_scale_bind_image_needle_value(lv_obj_t *obj, lv_obj_t *needle_img, lv_subject_t *subject)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name         | Type                                                     | Description                |
      | ------------ | -------------------------------------------------------- | -------------------------- |
      | `obj`        | <ApiLink name="lv_obj_t" display="lv_obj_t *" />         | pointer to a Scale         |
      | `needle_img` | <ApiLink name="lv_obj_t" display="lv_obj_t *" />         | pointer to an image needle |
      | `subject`    | <ApiLink name="lv_subject_t" display="lv_subject_t *" /> | pointer to a Subject       |

      **Returns:** <ApiLink name="lv_observer_t" display="lv_observer_t *" /> — pointer to newly-created Observer
    </ApiMember>
  </ApiTab>
</ApiTabs>

Enums [#enums]

<ApiMember kind="enum" name="lv_scale_mode_t" file="widgets/scale/lv_scale.h" line="48" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L48">
  lv_scale_mode_t [#lv_scale_mode_t]

  Scale mode

  | Name                              | Value   |
  | --------------------------------- | ------- |
  | `LV_SCALE_MODE_HORIZONTAL_TOP`    | `0x00U` |
  | `LV_SCALE_MODE_HORIZONTAL_BOTTOM` | `0x01U` |
  | `LV_SCALE_MODE_VERTICAL_LEFT`     | `0x02U` |
  | `LV_SCALE_MODE_VERTICAL_RIGHT`    | `0x04U` |
  | `LV_SCALE_MODE_ROUND_INNER`       | `0x08U` |
  | `LV_SCALE_MODE_ROUND_OUTER`       | `0x10U` |
  | `LV_SCALE_MODE_LAST`              |         |
</ApiMember>

<TypeUsedBy name="lv_scale_mode_t" count="1">
  * `lv_scale_set_mode` — param `mode`
</TypeUsedBy>

<ApiMember kind="enum" name="_lv_property_scale_id_t" file="widgets/scale/lv_scale.h" line="70" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L70">
  \_lv_property_scale_id_t [#_lv_property_scale_id_t]

  | Name                                 | Value                                                           |
  | ------------------------------------ | --------------------------------------------------------------- |
  | `LV_PROPERTY_SCALE_MODE`             | `(LV_PROPERTY_SCALE_START + ((int) 0 )) \| ((  1   ) <<  28 )`  |
  | `LV_PROPERTY_SCALE_TOTAL_TICK_COUNT` | `(LV_PROPERTY_SCALE_START + ((int) 1 )) \| ((  1   ) <<  28 )`  |
  | `LV_PROPERTY_SCALE_MAJOR_TICK_EVERY` | `(LV_PROPERTY_SCALE_START + ((int) 2 )) \| ((  1   ) <<  28 )`  |
  | `LV_PROPERTY_SCALE_LABEL_SHOW`       | `(LV_PROPERTY_SCALE_START + ((int) 3 )) \| ((  11   ) <<  28 )` |
  | `LV_PROPERTY_SCALE_ANGLE_RANGE`      | `(LV_PROPERTY_SCALE_START + ((int) 4 )) \| ((  1   ) <<  28 )`  |
  | `LV_PROPERTY_SCALE_ROTATION`         | `(LV_PROPERTY_SCALE_START + ((int) 5 )) \| ((  1   ) <<  28 )`  |
  | `LV_PROPERTY_SCALE_RANGE_MIN_VALUE`  | `(LV_PROPERTY_SCALE_START + ((int) 6 )) \| ((  1   ) <<  28 )`  |
  | `LV_PROPERTY_SCALE_RANGE_MAX_VALUE`  | `(LV_PROPERTY_SCALE_START + ((int) 7 )) \| ((  1   ) <<  28 )`  |
  | `LV_PROPERTY_SCALE_END`              |                                                                 |
</ApiMember>

Macros [#macros]

<ApiMember kind="macro" name="LV_SCALE_TOTAL_TICK_COUNT_DEFAULT" file="widgets/scale/lv_scale.h" line="30" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L30">
  LV_SCALE_TOTAL_TICK_COUNT_DEFAULT [#lv_scale_total_tick_count_default]

  ```c title=" " lineNumbers=1
  #define LV_SCALE_TOTAL_TICK_COUNT_DEFAULT (11U)
  ```

  Default value of total minor ticks.
</ApiMember>

<ApiMember kind="macro" name="LV_SCALE_MAJOR_TICK_EVERY_DEFAULT" file="widgets/scale/lv_scale.h" line="34" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L34">
  LV_SCALE_MAJOR_TICK_EVERY_DEFAULT [#lv_scale_major_tick_every_default]

  ```c title=" " lineNumbers=1
  #define LV_SCALE_MAJOR_TICK_EVERY_DEFAULT (5U)
  ```

  Default value of major tick every nth ticks.
</ApiMember>

<ApiMember kind="macro" name="LV_SCALE_LABEL_ENABLED_DEFAULT" file="widgets/scale/lv_scale.h" line="38" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L38">
  LV_SCALE_LABEL_ENABLED_DEFAULT [#lv_scale_label_enabled_default]

  ```c title=" " lineNumbers=1
  #define LV_SCALE_LABEL_ENABLED_DEFAULT (1U)
  ```

  Default value of scale label enabled.
</ApiMember>

<ApiMember kind="macro" name="LV_SCALE_LABEL_ROTATE_MATCH_TICKS" file="widgets/scale/lv_scale.h" line="58" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L58">
  LV_SCALE_LABEL_ROTATE_MATCH_TICKS [#lv_scale_label_rotate_match_ticks]

  ```c title=" " lineNumbers=1
  #define LV_SCALE_LABEL_ROTATE_MATCH_TICKS 0x100000
  ```
</ApiMember>

<ApiMember kind="macro" name="LV_SCALE_LABEL_ROTATE_KEEP_UPRIGHT" file="widgets/scale/lv_scale.h" line="61" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L61">
  LV_SCALE_LABEL_ROTATE_KEEP_UPRIGHT [#lv_scale_label_rotate_keep_upright]

  ```c title=" " lineNumbers=1
  #define LV_SCALE_LABEL_ROTATE_KEEP_UPRIGHT 0x80000
  ```
</ApiMember>

<ApiMember kind="macro" name="LV_SCALE_ROTATION_ANGLE_MASK" file="widgets/scale/lv_scale.h" line="64" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L64">
  LV_SCALE_ROTATION_ANGLE_MASK [#lv_scale_rotation_angle_mask]

  ```c title=" " lineNumbers=1
  #define LV_SCALE_ROTATION_ANGLE_MASK 0x7FFFF
  ```
</ApiMember>

Variables [#variables]

<ApiMember kind="variable" name="lv_scale_class" file="widgets/scale/lv_scale.h" line="67" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/widgets/scale/lv_scale.h#L67">
  lv_scale_class [#lv_scale_class]

  ```c title=" " lineNumbers=1
  const lv_obj_class_t lv_scale_class
  ```
</ApiMember>

Dependencies [#dependencies]

<FileIncludes includes="[&#x22;lv_conf_internal.h&#x22;, &#x22;lv_obj.h&#x22;, &#x22;lv_line.h&#x22;, &#x22;lv_image.h&#x22;, &#x22;lv_observer.h&#x22;]" includedBy="[&#x22;lv_scale_private.h&#x22;]" transitiveIncludes="[&#x22;lv_anim.h&#x22;, &#x22;lv_area.h&#x22;, &#x22;lv_array.h&#x22;, &#x22;lv_assert.h&#x22;, &#x22;lv_bidi.h&#x22;, &#x22;lv_color.h&#x22;, &#x22;lv_color_op.h&#x22;, &#x22;lv_conf_kconfig.h&#x22;, &#x22;lv_display.h&#x22;, &#x22;lv_draw.h&#x22;, &#x22;lv_draw_arc.h&#x22;, &#x22;lv_draw_blur.h&#x22;, &#x22;lv_draw_buf.h&#x22;, &#x22;lv_draw_image.h&#x22;, &#x22;lv_draw_label.h&#x22;, &#x22;lv_draw_line.h&#x22;, &#x22;lv_draw_rect.h&#x22;, &#x22;lv_draw_triangle.h&#x22;, &#x22;lv_event.h&#x22;, &#x22;lv_ext_data.h&#x22;, &#x22;lv_flex.h&#x22;, &#x22;lv_font.h&#x22;, &#x22;lv_fs.h&#x22;, &#x22;lv_grad.h&#x22;, &#x22;lv_grid.h&#x22;, &#x22;lv_group.h&#x22;, &#x22;lv_image_decoder.h&#x22;, &#x22;lv_image_dsc.h&#x22;, &#x22;lv_indev.h&#x22;, &#x22;lv_layout.h&#x22;, &#x22;lv_ll.h&#x22;, &#x22;lv_log.h&#x22;, &#x22;lv_math.h&#x22;, &#x22;lv_matrix.h&#x22;, &#x22;lv_mem.h&#x22;, &#x22;lv_obj_class.h&#x22;, &#x22;lv_obj_draw.h&#x22;, &#x22;lv_obj_event.h&#x22;, &#x22;lv_obj_pos.h&#x22;, &#x22;lv_obj_property.h&#x22;, &#x22;lv_obj_property_names.h&#x22;, &#x22;lv_obj_scroll.h&#x22;, &#x22;lv_obj_style.h&#x22;, &#x22;lv_obj_style_gen.h&#x22;, &#x22;lv_obj_tree.h&#x22;, &#x22;lv_palette.h&#x22;, &#x22;lv_profiler.h&#x22;, &#x22;lv_profiler_builtin.h&#x22;, &#x22;lv_sprintf.h&#x22;, &#x22;lv_string.h&#x22;, &#x22;lv_style.h&#x22;, &#x22;lv_style_gen.h&#x22;, &#x22;lv_style_properties.h&#x22;, &#x22;lv_symbol_def.h&#x22;, &#x22;lv_text.h&#x22;, &#x22;lv_tick.h&#x22;, &#x22;lv_timer.h&#x22;, &#x22;lv_types.h&#x22;]" />
