JQuery 'это' ключевое слово и основные фильтры селектора

Как мне сказать, «какой» у меня пиксель?

Вы не пиксель. Вы фрагмент . Есть причина, по которой OpenGL называет их «Фрагментные шейдеры»; это потому, что они не являются пикселями еще . Действительно, они не только не могут стать пикселями (с помощью discard или тестов глубины или чего-либо еще), благодаря мультисэмплингу, несколько фрагментов могут объединяться, образуя один пиксель.

Если вы хотите сказать, где находится ваш фрагментный шейдер в пространстве окна, используйте gl_FragCoord . Позиции фрагментов являются значениями с плавающей точкой, а не целыми числами, поэтому вам нужно тестировать с диапазоном, а не с одним значением «100, 100».

Во-вторых, как мне получить значения из соседнего пикселя?

Если вы говорите о соседнем пикселе кадрового буфера, вы не . Фрагментные шейдеры не могут произвольно считывать данные из буфера кадров, как в своей собственной позиции, так и в соседней.

Если вы говорите о доступе к соседнему текселю из того, к которому вы обращались, то это просто вопрос смещения координаты текстуры, которую вы передаете texture2D. Вы должны получить размер текстуры (так как вы не используете GLSL 1.30 или выше, вы должны передать это вручную), инвертировать размер и либо добавить, либо вычесть эти размеры из компонента S и T координаты текстуры .

5
задан TStamper 8 June 2009 в 18:43
поделиться

3 ответа

Для поиска элементов в этом:

$(':visible, any-selector', this)
$(this).find(':visible, any-selector')

, если вы хотите получить истинный или ложный результат:

if($(this).is(':visible, any-selector')){
    alert('this is visible, or matches "any-selector"');
    }
else{
    alert('this is hidden, or doesn\'t match "any-selector"');
    }
6
ответ дан 13 December 2019 в 22:14
поделиться

Для этого предназначен метод filter ():

$(this).filter(":contains(foo)");
$(this).filter(":visible")

Согласно документам:

Удаляет все элементы из набора совпадающих элементов, которые не соответствуют указанному выражению (ям) .

3
ответ дан 13 December 2019 в 22:14
поделиться

используйте этот синтаксис: jQuery (выражение, [контекст])

$(":contains(foo)", this)
$(":visible", this)
$("any-selector", this)
1
ответ дан 13 December 2019 в 22:14
поделиться
Другие вопросы по тегам:

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