C++ - Кольцевая антенная решетка с более низкими / верхними границами?

Проблема 1: да, вам нужно изменить видимость тех представлений, которые вы не хотите, чтобы они были преобразованы в изображение (самый простой способ).

Проблема 2: для добавления водяного знака вы можете просто нарисовать его на холсте (вы можете использовать canvas.drawBitmap) вместо того, чтобы поместить его в макет.

5
задан vdsf 3 March 2009 в 20:59
поделиться

4 ответа

В общем математическом элементе:

next === current + 1 (mod count)
prev === current - 1 (mod count)

где === является 'конгруэнтным' оператором. Преобразовывая это в оператор модуля, это было бы:

count = upper - lower
next = ((current + 1 - (lower%count) + count) % count) + lower
prev = ((current - 1 - (lower%count) + count) % count) + lower

Было бы ваше дело узнавать верхние и нижние границы для каждого объекта. Вы могли сохранить это в двоичном дереве для быстрого извлечения. Возможно, я не понимаю Вашего вопроса.

(обратите внимание, что это принимает ниже <верхний, и ниже> 0),

6
ответ дан 18 December 2019 в 12:02
поделиться
          +=======+        +=======+        +=======+
          |  Obj  | --->   |  Obj  |  --->  |  Obj  |
buffer    |   1   | <---   |   2   |  <---  |   3   |
          +=======+        +=======+        +=======+  

index       0                  1                2        /* our first run */

index       3                  4                5        /* second run */

and so on ...

Так, Вы видите 3 списка элементов, 1-й объект индексируется 0, 3, 6, и т.д. Точно так же второй объект индексируется 1, 4 (1 + 3), 7 (4 + 3), ...

Общее правило: next <- (next + 1) % size, где size = upper - lower + 1

Используя эту формулу мы добираемся:

  curr |      next  
-------+-----------------
   0   | (0 + 1) % 3 = 1
-------+-----------------
   1   | (1 + 1) % 3 = 2
-------+-----------------
   2   | (2 + 1) % 3 = 0
-------+-----------------

Надежда, которая помогает

5
ответ дан 18 December 2019 в 12:02
поделиться

Я написал эту статью несколько лет назад о круговом итераторе STL.

http://noveltheory.com/Iterators/Iterator_N0.htm

Это будет работать над любым набором STL (векторы и boost:array, и т.д.)

3
ответ дан 18 December 2019 в 12:02
поделиться

Повышение имеет Круговой контейнер, что я полагаю, что можно установить границы на также.

На самом деле Пример на той странице выглядит очень похожим на то, что Вы говорите здесь.

Но так или иначе, Вы могли выполнить математическую часть его легко использование модуля:

Поэтому скажите, что Ваше макс. равнялось 3:

int MAX = 3;
someArray[ 0 % MAX ]; // This would return element 0
someArray[ 1 % MAX ]; // This would return element 1
someArray[ 3 % MAX ]; // This would return element 0
someArray[ 4 % MAX ]; // This would return element 1
1
ответ дан 18 December 2019 в 12:02
поделиться
Другие вопросы по тегам:

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