Генератор шаблонов несвязанных маршрутизаторов - проблема с vars_prompt [duplicate]

Один простой и эффективный способ нарисовать сплошную сторону - использовать отсечение - прямое обрезание, по сути, бесплатное, и гораздо меньше кода для записи, чем пользовательский путь.

Если я хочу прямоугольник 300x300, с верхним левым и правым закругленными на 50 пикселей, вы можете сделать:

canvas.save();
canvas.clipRect(0, 0, 300, 300);
canvas.drawRoundRect(new RectF(0, 0, 300, 350), 50, 50, paint);
canvas.restore();

Этот подход будет работать только для округления на 2 или 3 смежных углах, поэтому он немного менее настраивается, чем подход на основе Path , но использование round rects более эффективно, поскольку drawRoundRect () полностью аппаратно ускорено (т. е. тесселлировано в треугольники), в то время как drawPath () всегда возвращается к рендерингу программного обеспечения (программное обеспечение - рисовать растровое изображение пути и загружать его для кэширования GPU).

Не большая проблема с производительностью для небольшого нечастого рисования, но если вы анимируете пути, стоимость рисования программного обеспечения может увеличить время вашего кадра и увеличить шанс сброса кадров. Маска пути также стоит памяти.

Если вы хотите перейти с помощью подхода на основе Path, я бы рекомендовал использовать GradientDrawable для упрощения строк кода (при условии, что вам не нужно настраивать пользовательские настройки shader, например, для рисования растрового изображения).

mGradient.setBounds(0, 0, 300, 300);
mGradient.setCornerRadii(new int[] {50,50, 50,50, 0,0, 0,0});

С помощью GradientDrawable # setCornerRadii () вы можете установить любой угол в любую округленность и разумно анимировать между состояниями.

1
задан techraf 28 July 2016 в 20:14
поделиться

1 ответ

Это может быть реализовано с помощью модуля pause :

---
- hosts: server01
  gather_facts: True
  tasks:
    - pause:
        prompt: please enter the name for the target [{{ ansible_hostname }}]
      register: prompt

    - debug:
        msg: "{{ prompt.user_input if prompt.user_input else ansible_hostname }}"
0
ответ дан techraf 18 August 2018 в 04:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: