RotateHQ Performance Issue

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • RotateHQ Performance Issue

    Hi,

    I am working on a animated menu and have 5 bitmaps on screen that have circular path and scale in/out during animation.

    I am trying to do it with memdevs.
    In a 1 ms period I invalidate that screen and using functions below

    GUI_MEMDEV_Rotate(); //for scaling in/out bitmaps
    GUI_MEMDEV_WriteAt(); //writing to screen
    But if I use GUI_MEMDEV_Rotate(); quality of scaled bitmaps are not good.If I try GUI_MEMDEV_RotateHQ(); quality is good but bitmap draws become deadly slow.
    Is there any performance recommandation for that issue?

    Also If I try to use GUI_MEMDEV_COpytoLCD(); instead of write function(with invalidate) ,all my screen flickers.Without invalidate I could not see any bitmas on screen.

    All recommendations will be appreciated.
  • Hello batgun,

    This is why both functions exist. GUI_MEMDEV_RotateHQ() performs perfect rotation of the Memory Device, but takes a lot of CPU load for that job. GUI_MEMDEV_Rotate() works much faster, but quality degrades. Usually GUI_MEMDEV_Rotate() should be used for (fast) animations to let them appear smooth. However quality is hard to recognize at a certain speed. For slow animations or static objects, it is recommended to use GUI_MEMDEV_RotateHQ().

    Best regards,
    Adrian