1. C++ / Говнокод #27249

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    void setAreaPreScale(double scale)
    {
      if(scale == 1)
        setFrameSize(initialFrameSize.first, initialFrameSize.second);
      else
      {
        double widthPart = (1 - initialFrameSize.first) * (1 - scale);
        double heightPart = (1 - initialFrameSize.second) * (1 - scale);
        setFrameSize(initialFrameSize.first + widthPart, initialFrameSize.second + heightPart);
      }
    }

    требуется сделать отложенное масштабирование картинки, сначала рисуется (и скейлится методом setAreaPreScale) рамка с областью, в которую будет замасштабировано, затем отдельной кнопкой будет масштабироваться. в методе происходит рассчёт размера в пикселях рамки прескейла по параметру scale (отношение будущего масштаба к текущему). initialFrameSize на самом деле maxFrameSize, но авторский код сохранён

    Запостил: gladijos, 11 Февраля 2021

    Комментарии (5) RSS

    • Проверка бесполезная
      Ответить
      • Давай, отбросив все предрассудки, встретимся и уединившись в небольшой однокомнатке, займёмся программированием на делфи...
        Ответить
        • За бутылочкой шампанского, при свечах и задёрнутых шторах?
          Ответить
    • Как все заморочено
      Ответить
    • Кручу-верчу, скорей кончить хочу.
      https://bigslide.ru/images/5/4158/831/img9.jpg
      Ответить

    Добавить комментарий