Урок 2 - Простые примитивы

  В прошлом уроке мы рассмотрели инициализацию OpenGL. Этот урок будет посвящён рисованию и раскрашиванию простых примитивов: точка, линия, треугольник и квадрат. В нашем прошлом примере изменим формат пиксела.

После строки

FillChar (pfd, SizeOf (pfd), 0);
Допишем:
pfd.dwFlags  := PFD_DRAW_TO_WINDOW or PFD_SUPPORT_OPENGL or PFD_DOUBLEBUFFER;
Мы сообщили системе, что будет использоваться двойная буферизация. Это необходимо для того чтоб изображение не мерцало.

В процедуре создания Формы напишите:
glEnable(GL_DEPTH_TEST); // включаем проверку разрешения фигур (впереди стоящая закрывает фигуру за ней)  
glDepthFunc(GL_LEQUAL); //тип проверки
Далее в обработчике события Form1 OnResize создадим процедуру перерисовки нашего окна.
glViewport(0, 0, ClientWidth, ClientHeight); //выделяем область куда будет выводиться наш буфер
glMatrixMode ( GL_PROJECTION ); //переходим в матрицу проекции
glLoadIdentity; //Сбрасываем текущую матрицу
glFrustum ( -1 , 1 , -1 , 1 , 1.25 , 100.0 ); //Область видимости
glMatrixMode ( GL_MODELVIEW ); // переходим в модельную матрицу
glLoadIdentity; //Сбрасываем текущую матрицу
gluLookAt(5,5,5,0,0,0,0,0,1); //позиция наблюдателя
InvalidateRect ( Handle,nil,False ); //перерисовка формы
Функция glFrustum имеет 6 параметров, первые 4 из них, это границы отсечения: верхняя, правая, нижняя, левая. Последние 2 параметра – это передняя и задняя граница отсечения.

Функция gluLookAt имеет 9 параметров, первые 3 из них - позиция наблюдателя (x, y, z), следующие 3 параметра – точка наблюдения (x, y, z) и последние 3 параметра – вектор верха.

InvalidateRect ( Handle,nil,False ); перерисовывает форму гораздо быстрее, чем Form1.Repaint.

Для того, чтобы наше окно обновлялось надо вызвать процедуру FormResize до отрисовки примитивов.
FormResize(Sender); //процедура обновления
  Всё, с приготовлением мы закончили, Теперь давайте приступим к рисованию примитивов и начнём мы с точки. Все фигуры рисуются в логических скобках glBegin(param); и glEnd; где param – тип рисуемого примитива.

glBegin() может иметь один из следующих параметров:
  • GL_PONTS - точка
  • GL_LINES - линия
  • GL_TRIANGLES - треугольник
  • GL_QUADS - квадрат
  • GL_POLYGON – многоугольник
Каждая вершина задаётся функцией glVertex3f(x, y ,z) и может иметь вид: glVertex3fv(@массив) , glVertex3i(x, y ,z) с параметрами типа integer.

  Теперь нарисуем точку, в процедуре FormPaint после очистки буфера цвета запишем следующий код:
glPointSize(20); // размер точки

glBegin(GL_POINTS);
glVertex3f(-2,5,1);
glEnd;
Точка

  Вот мы и получили очень большую точку в 20 пикселов :). Теперь давайте изменим цвет точки функцией glColor3f(R,G,B);
Эту функцию следует вызывать перед заданием позиции каждой вершины.

Раскрасим в красный цвет:
glPointSize(20); // размер точки

glBegin(GL_POINTS);
glColor3f(1,0,0);  glVertex3f(-2,5,1);
glEnd;
Красная точка

  Точку мы нарисовали. Теперь нарисуем линию. Делается это точно так же как и точку. Т.к. линия состоит из 2 вершин то функцию glVertex3f(x, y ,z) будем вызывать 2 раза:
glBegin(GL_LINES); //рисуем линию
glColor3f(1,0,0); {раскрасим первую вершину}  glVertex3f(-1,0,1); //позиция первой вершины
glColor3f(0,1,0); {раскрасим вторую вершину}   glVertex3f(-4,5,1); //позиция второй вершины
glEnd;
Допишем этот код и получим:

Линия

OpenGL сам делает плавное перетекание цвета между вершинами. Поучается довольно красиво.

Не хватает квадрата и треугольника. Давайте нарисуем!
glBegin(GL_TRIANGLES); //рисуем треугольник
glColor3f(1,0,0);  glVertex3f(0,5,1); //первая вершина
glColor3f(0,1,0);  glVertex3f(1,4,1); //вторая вершина
glColor3f(0,1,0);  glVertex3f(-1,4,1); //третья вершина
glEnd;

glBegin(GL_QUADS); //рисуем квадрат
glColor3f(1,0,0);  glVertex3i(-1,1,0); //первая вершина
glColor3f(0,1,0);  glVertex3f(1,1,-0); //вторая вершина
glColor3f(0,1,1);  glVertex3f(1,-1,-0); //третья вершина
glColor3f(0,0,1);  glVertex3f(-1,-1,0); //четвёртая вершина
glEnd;
Фигуры

Вроде бы получилось.

  В примере данного урока я сделал небольшое дополнение: при нажатии стрелки вправо вся система координат поворачивается вправо функцией glRotatef(угол, x, y, z) где x, y, z – координаты оси поворота, а при нажатии на стрелку влево, то вся система координат поворачивается влево.

Можете поэкспериментировать и нарисовать что-нибудь другое.

  В следующем уроке мы будем работать с освещением и нарисуем объёмные геометрические фигуры с падающим на них светом.



Добавил(а): Drimer Дата: 2012-12-05
в примере одно ))) а тут другоє))))



Добавил(а): Doggy Дата: 2013-01-11
не пойму зачем FormResize(Sender). Рисунок с ней рябит при перетаскивании формы, а без нее все норм (рисунок сохраняется). И еще - что это за wglMakeCurrent(0,0); - в первом уроке он есть а во втором он тупо мешает (с этой строкой не работает прога)



Добавил(а): Doggy Дата: 2013-01-11
а, и еще - что такое SwapBuffers(Canvas.Handle); в первом уроке его небыло



Добавил(а): Doggy Дата: 2013-01-12
аааааа!!!!! она вертится !!! круто!!!! я еще добавил воторой угол поворота и завязал его на клавиши вверх/вниз. теперь наиграться не могу



Добавил(а): Klesh Дата: 2013-01-12
wglMakeCurrent(0,0); - удаляет созданный контекст воспроизведения. В первом уроке мы просто инициализировали OpenGL ничего не рисуя, поэтому контекст нам был не нужен. В этом уроке используется двойная буферизация, чтобы не было мерцания, сначала сцена отрисовывается в задний буфер, а затем разом выводится в передний, то есть на форму. Эту процедуру выполняет функция SwapBuffers(Canvas.Handle);



Добавил(а): Doggy Дата: 2013-01-12
ясно. спасибо. я правда пока еще плохо понимаю что такое контекст воспроизведения, но будем постепенно разбираться.



Добавил(а): susczanski Дата: 2013-04-04
і, все-таки, для чого FormResize? Чому не можна той код прописувати відразу в FormPaint?



Добавил(а): susczanski Дата: 2013-04-05
Переведу, наверно так понятнее. В Ваших в уроках все основные действия (оброботка клавиатуры, мыши, прорисовка и т.д.) выполняются в процедуре formpaint. Мне же в проэкте надо создать цыкл, в конце которого должна выполняться прорисовка 3-д. Пробовал вызывать с цыкла formpaint, что-то не так. Пробовал всю прорисовку всунуть всам ц жикл но тогда глючит formresize. Подскажите, пожалуйста, что делат?



Добавил(а): Klesh Дата: 2013-04-07
Конечно можно и засунуть код FormResize в FormPaint, это я так сделал чтоб было удобнее и за одно обрабатывалось сжатие/растяжение формы, оно и так обработается но это будет не синхронно . Здесь замкнутый цыкл сначала при создании формы она перерисовывается, выполняется FromPaint, следовательно выполнится FormResize, а там есть функция InvalidateRect ( Handle,nil,False ); которая опять все сотрёт с формы и её придется снова перерисовывается (FormPaint) и так по кругу. Вам надо стереть InvalidateRect и вставить в конец вашего цикла тогда форма перересуется 1 раз.



Добавил(а): Klesh Дата: 2013-04-07
и еще цыкл который вы хотите сделать не должен быть в FormPaint или FornResize, например в обработчике нажатия на кнопку.



Добавил(а): susczanski Дата: 2013-04-08
Супер, спасибо Но возник новый вопрос: в NeHe прочитал, что для координатов полигонов можно использовать нецелые числа, а компилятор говорит ноборот, только целые. В то же время для объемных фигур можно и числа с плавающей точкой. Правда ли это, и почему так?



Добавил(а): susczanski Дата: 2013-04-08
А как сделать так, чтоб вместо формы графика была на Image? Просто заменить Handle на Image1.Canvas.Handle не получаеться...



Добавил(а): Klesh Дата: 2013-04-10
Да можно передавать вещественные числа, у вас скорее всего ошибка в типе переменной которую вы передаёте или или используете функцию которая принимает только целый тип(glVertex3i(x,y,z: integer)). Последняя буква в названии функции говорит о типе передаваемых данных: i - integer, f - Single и все вещественные типы (Double тоже), fv - ссылка(Pointer). Попробуйте glVertex3f(x,y,z: Single).



Добавил(а): Klesh Дата: 2013-04-10
На Image выводить не получится, не знаю почему вывести можно например на Panel или на кнопку. Событие OnPaint есть только у формы, а значит на другие компоненты выводить привычный способом не получится. Нужно создать таймер с интервалом 1 мс и туда прописать процедуру рисования, в нашем случае FormPaint(Sender); и параметр функции получения дескриптора - DC:= GetDC(Handle); заменить на Panel1.Handle, тоже самое сделать и при выводе буферов SwapBuffers(), но параметром будет уже DC, в FormResize закоментировать строчку InvalidateRect ( Handle,nil,False ); и изменить параметры функций: glViewport, gluPerspective на аналогичные Panel. Например glViewport(0, 0, Form1.ClientWidth, Form1.ClientHeight); заменить на glViewport(0, 0, Panel.Width, Panel.Height);. производительность падает в десятки раз, но это незаметно



Добавил(а): почти человек Дата: 2014-04-14
не знаю почему, но у меня выводится только пустая форма, хотя выполнял всё по инструкции.



Добавил(а): kuza2011zaika Дата: 2015-04-19
У меня форма вся пустая. Почему так?



Добавил(а): R1D16ST29 Дата: 2015-08-06
glutSolidCube(1); почему то не знает как оператор, а другие (от opengl) знает



Добавил(а): Nesf Дата: 2017-03-14
Если у вас выводится пустая форма, то у вас включился режим двойной буферизации, поэтому в конце обработчика события OnPaint следует написать команду SwapBuffers;



Добавил(а): dimonsky Дата: 2017-07-03
GetDC(handle) вместо canvas.handle, и убрать вызов FormResize. Тогда получается конфетка.


  1. TwiSQ
    TwiSQ 5 months ago
    Drug information sheet. Drug Class. <a href="https://prednisone4u.top">can i get generic prednisone without dr prescription</a> in the USA. Actual about meds. Read information now.
    [url=http://oceansoftvietnam.com/product/opencart-migration/woocommerce-to-opencart-migration/#comment-1691]Some news about pills.[/url] [url=http://e-jurnal.pnl.ac.id/index.php/polimesin/comment/view/563/637/580921]Everything about medicine.[/url] [url=http://bpo.gov.mn/content/562]Actual trends of medicine.[/url] a706a28
  2. EfhAT
    EfhAT 5 months ago
    Pills information. Long-Term Effects. <a href="https://viagra4u.top">can i purchase generic viagra for sale</a> in US. Everything what you want to know about drugs. Read here.
    [url=http://shop.khunjib.com/product/3516/%E0%B8%88%E0%B8%B1%E0%B9%89%E0%B8%A1%E0%B8%AA%E0%B8%B9%E0%B8%97%E0%B8%82%E0%B8%B2%E0%B8%A2%E0%B8%B2%E0%B8%A7%E0%B8%9C%E0%B9%88%E0%B8%B2%E0%B8%82%E0%B9%89%E0%B8%B2%E0%B8%87%20%E0%B8%AA%E0%B8%B5%E0%B9%80%E0%B8%82%E0%B8%B5%E0%B8%A2%E0%B8%A7.html]Everything what you want to know about drugs.[/url] [url=http://www.yliaow.com/forum.php?mod=viewthread&amp;tid=30231&amp;pid=275003&amp;page=5294&amp;extra=page%3D1#pid275003]All what you want to know about drug.[/url] [url=https://www.divifabriken.se/produkt/logo-collection/#comment-7340]Everything trends of medication.[/url] 05aa706
  3. japancasinox
    japancasinox 5 months ago
    I consider, that you are not right. I suggest it to discuss. Write to me in PM, we will talk.

    -----
    [url=https://japancasino-x.com/]https://japancasino-x.com/[/url] | https://japancasino-x.com/
  4. Dsaf
    Dsaf 5 months ago
    Интернет-развлечения определенно стали нераздельной элементов нашей деятельности собственно под такое, чтобы исполнить ход любой игры более сочным к тому же https://irongamers.ru/ занимательным мы презентует именно для ценителей отличного времяпрепровождения настоящий интернет-маркет проверенных паролей, страниц к тому же планов на распространенных развлечениям. На нашем ресурсе [url=https://irongamers.ru/cyberpunk-2077-vse-romany-i-postelnye-sceny-v-igre.html]секс в cyberpunk 2077[/url] игрового среды юзер сможет подобрать надобную гайд для игры, те что вмещают краткое обрисовку касательно управлению, к тому же реально определить себе гейм аккаунт или шифр сообща с сервисом Xbox, Стим, Epic Games Store, EA play, Юплей к тому же аналогичных сервисов. Функционал презентованной онлайн площадки посодействует для Вас быстро отыскать все такое, необходимое что Вы отыскивали под предназначенную игру, плюс с легкостью совершить транзакцию и продолжать восторгаться новой игрой с применением подсказок также ключей. Не медлите IronGamers.Ru, прямо сейчас дейсвует акция геймс гайдов и страничкой до новым игровым разработкам этого времени года несомненно по очень невысоким прасе!

    Приветствуем игроков на гейм площадке электронных продуктов – игровых аккаунтов и ключей! Созданная торговая https://gamakey.ru точка онлайн типа предлагает геймерам различные инструкции, ключи плюс персональные странички с отличной стоимости из определенных цифровых сервисов, как Твич, Steam, Origin, Xbox, EGS, Uplay PC. Купить выбранные ключи через игровой магазине Gemakey [url=https://gamakey.ru]магазин компьютерных игр steam gamakey.ru[/url] сумеет любой желающий, наша команда продумали легкий функционал специально под того, чтобы сделка в обществе клиентом и торговой платформой действовала предельно удобно также нетрудно. Выбранную формат пользователь сможет выбрать по списка по начальной окне ибо ввести по ленте поиска, плюс рекомендации согласно паролей и рекомендаций можно разделить согласно ценнику, оценки покупателей или возрастанию. Очень известные игры, свежие модификации, оптимальная GamaKey.Ru стоимость и каталог на едином веб ресурсе – игровой диллерской ссылке, переходите, выделяйте затем приобретайте лишь в едином месте!
  5. Schofe
    Schofe 4 months ago
    Я извиняюсь, но, по-моему, Вы не правы. Я уверен. Предлагаю это обсудить. Пишите мне в PM, пообщаемся.


    --------
    [url=https://avenue17.ru/zapchasti-dlja-vyduvnogo-oborudovanija?product_id=375]РАСПРЕДЕЛИТЕЛЬ FESTO MEBH-5/2-D-1-ZSR-FR-C[/url] | https://avenue17.ru/

    Весьма хорошая идея


    --------
    [url=https://novopet.ru/pet-preformi/pet-preforma-alk]https://novopet.ru/pet-preformi/pet-preforma-alk[/url] | https://novopet.ru/
  6. Wfaf
    Wfaf 4 months ago
    Вы не правы. Давайте обсудим это. Пишите мне в PM, поговорим.


    ------
    [url=https://www.flixurbate.com/videos/ypu-try-not-to-cum-1dollar-s-premium-bit-do-letssnapchat/]https://www.flixurbate.com/videos/ypu-try-not-to-cum-1dollar-s-premium-bit-do-letssnapchat/[/url]


    Я считаю, что Вы не правы. Предлагаю это обсудить.


    ------
    [url=https://www.blautube.com/videos/cheating-girlfriend-sneaky-sex-in-front-of-her-boyfriend/]https://www.blautube.com/videos/cheating-girlfriend-sneaky-sex-in-front-of-her-boyfriend/[/url]


    Не могу сейчас поучаствовать в обсуждении - очень занят. Но вернусь - обязательно напишу что я думаю по этому вопросу.


    ------
    [url=https://www.mainstube.com/videos/naked-sexy-dance/]https://www.mainstube.com/videos/naked-sexy-dance/[/url]
  7. yvgjphvbyx
    yvgjphvbyx 4 months ago
    Урок 2 - Простые примитивы - The Delphi
    [url=http://www.g7cpd3n5w06to2xf48ry06d14wd2b652s.org/]uyvgjphvbyx[/url]
    yvgjphvbyx http://www.g7cpd3n5w06to2xf48ry06d14wd2b652s.org/
    <a href="http://www.g7cpd3n5w06to2xf48ry06d14wd2b652s.org/">ayvgjphvbyx</a>
  8. lbsevozmv
    lbsevozmv 4 months ago
    Урок 2 - Простые примитивы - The Delphi
    <a href="http://www.g1ses636u4mby78g81u4vh333p8ldy58s.org/">albsevozmv</a>
    lbsevozmv http://www.g1ses636u4mby78g81u4vh333p8ldy58s.org/
    [url=http://www.g1ses636u4mby78g81u4vh333p8ldy58s.org/]ulbsevozmv[/url]
  9. kimnatka
    kimnatka 4 months ago
    Собственный жилье – ваша цитадель, как раз потому неимоверно имеет значение сперва грамотно облюбовать гартитурное обстановку жилой квартир или же жилья, чтобы потом вам стало вовсе не исключительно хорошо пребывать у квартире, но и абсолютно комфортно https://kimnatka.com/. Состав гарнитуры на нынешнем маркетплейсе из завтрашним часом лишь увеличивается,при этом достаточно подходяще уметь определять доброкачественный элемент в приемлемым стоимость. Веб-студия интерьера Комнатка [url=https://kimnatka.com/mattresses_beds/krovati/dvyspalnye_krovati]https://kimnatka.com/mattresses_beds/krovati/dvyspalnye_krovati[/url] демонстрирует Вас к среду отличной готовой мебели Украины по точно низким деньгам, здесь мы все продумали за вас к конкретных шагов.
    Выбор мебели в электронном – салоне сможет осуществляться несомненно сподручными методами: подбор по комнатках, спроса, дизайну, всякий версия помогает клиенту быстро устроиться по красивой и именной мебелью Kimnatka.Com. На нашем мебельной книге Вы имеет возможность оформить элемент под кухонного помещения, комнаты сна, детей, гостиной, в опенспейс, контору или же в сада в достаточно выгодным ценам в производительной среде прямо сейчас!
  10. 0n0nnet
    0n0nnet 4 months ago
    [url=https://0n0n.net/topic/5995-bankovskie-karty-s-balansom/]кредитные карты купить[/url] https://0n0n.net/
  11. DLib
    DLib 4 months ago
    Установка магистральной проводки работа, тот что предполагает у главный хронологически присутствие высококачественных шнуров обязательной версии. Интернет-маркет электропроводов [url=https://volcable.ru/katalog-produktsii/kabeli-silovyie-s-pvh-izolyatsiey/vbbshvng-ls/]Кабель ВБбШвнг(А)-LS[/url] берет под свою работу превалирующее число работ, каковы скоординированные с покупкой к тому же поставкой кабеля по указанном числе. На развитием большого числа годов презентованная преприятие занимается укомплектованием, реализацией и передачей магистралей для различных вариантов проведения: шнуры под защитных также пожарных оповещанием, производственной автоматики, систем регулирования, зрительные кабели, сборочные, электрические и другие виды проводов. Мы https://volcable.ru/ предоставляет всем клиентам целостное сопровождение у оформлении кабеля, цельные либо розничные оформление, черновой предзаказ, отдельные разъяснения к тому же внушительный ассортимент шнуров. На нашем онлайн-сайте Вы сумеет независимо VolCable.Ru указать желательный проводку из книге затем непременно же совершить товар, мы предоставляем Вам очень низкие цены и транспортировку на необходимый город России также СНГ надежным курьерским филиалом.

    Ремонтные работы у новой апартаментах - зачастую постоянно трудоемкий работу, какой настаивает на целостный SkKit.Ru к тому же профессионального отношение, будь это поверхтностная обработка или готовый проект интерьер. В огромного числа собственников апартаментов починка соотноситься из огромными затратами, главной огорчением также продолжительным промежутком производством. Мастерская фирма для ремонту новостроек также построенных домов КИТ [url=https://skkit.ru/remont-domov/]быстрый ремонт домов[/url] убирает устарелые привычки. КИТ призывает именно для наших инвесторов все виды работ касательно ремонт плюс оснащение новостроек, отдельных зон, зданий, спец построек, жилье в эксплуатации плюс других https://skkit.ru/ строений за разумным ценам плюс 3 годовой гарантийным поручательством касательно реализации. По указанном веб-страничке заказчик имеют возможность заказать черновой, частичный, основательный и иные заказы ремонтных работ к тому же сразу предельно увидеть финансы на онлайн смете. Фирма КИТ предлагает основным клиентам только квалифицированных специалистов отделочного области, имеет необходимые разрешения и лицензии еще и воплощает работы определенно в указанный дату. Пишите анкету затем получите персональный необычный отделку в доступные деньги.
  12. Julierox
    Julierox 4 months ago
    [url=https://durord111.alclip.info/8SbPAE9FKbc-anuel-le-tira-a-%C2%BFtali-goya-tali-le-responde-%E2%80%9Ctu-eres-un-wanna%E2%80%9D-bryant-myers-tira-fu%E2%82%ACrt%C2%A3-puya.html][img]https://i.ytimg.com/vi/8SbPAE9FKbc/hqdefault.jpg[/img][/url]

    ANUEL Le [url=https://durord111.alclip.info/8SbPAE9FKbc-anuel-le-tira-a-%C2%BFtali-goya-tali-le-responde-%E2%80%9Ctu-eres-un-wanna%E2%80%9D-bryant-myers-tira-fu%E2%82%ACrt%C2%A3-puya.html]Tira[/url] a ¿Tali Goya?Tali Le Responde “Tu Eres un Wanna”Bryant Myers Tira Fu€rt£ Puya
  13. xrkjglbvqx
    xrkjglbvqx 3 months ago
    Урок 2 - Простые примитивы - The Delphi
    <a href="http://www.g6jk26umebdj1th7w0092so807x4u125s.org/">axrkjglbvqx</a>
    [url=http://www.g6jk26umebdj1th7w0092so807x4u125s.org/]uxrkjglbvqx[/url]
    xrkjglbvqx http://www.g6jk26umebdj1th7w0092so807x4u125s.org/
  14. ecuvydax
    ecuvydax 3 months ago
    Всю информацию о телевизорах можно найти на вебсайте <a href="https://obzoryvideo.ru/arkhiv">https://obzoryvideo.ru</a>
  15. ofgfvfksn
    ofgfvfksn 3 months ago
    Урок 2 - Простые примитивы - The Delphi
    [url=http://www.g348a894zaev0sfot21a4w09wd033z1ns.org/]uofgfvfksn[/url]
    <a href="http://www.g348a894zaev0sfot21a4w09wd033z1ns.org/">aofgfvfksn</a>
    ofgfvfksn http://www.g348a894zaev0sfot21a4w09wd033z1ns.org/
  16. inetryconydot
    inetryconydot 3 months ago
    [b]AMOXIL[/b] is used to treat many different types of infections caused by bacteria, such as ear infections, bladder infections, pneumonia, gonorrhea, and E. coli or salmonella infection.
    Active Ingredient: [b]Amoxicillin[/b]

    [url=http://cablic.com/search/forum/amoxil.php][b]Order Amoxil[/b][/url]




    Can I Buy Amoxil Online
    [url=http://ambital.kiev.ua/italyanskie-avto/6109-buy-neurontin-online-next-day-delivery.html#post28763]Buy Neurontin Online Next Day Delivery[/url]
    Get Amoxil 250mg Online
    [b]Can I Buy Amoxil Over The Counter[/b]
    Buy Amoxil Online Next Day Delivery
    [url=https://amox.webstarts.com/]Buy Amoxil Online[/url]
    Purchasing Amoxil
    [b]Purchase Amoxil[/b]
    Amoxil To Buy Online
    [url=https://yimei2018.com/forum.php?mod=viewthread&amp;tid=97&amp;pid=217723&amp;page=2329&amp;extra=page%3D1#pid217723]Buy Neurontin[/url]
    Buy Cheap Amoxil 250mg Online
    [b]Buy Amoxil[/b]
    [url=https://www.sosvirus.net/depannages-informatique/viewtopic.php?f=360&amp;t=119740&amp;p=228187#p228187]Neurontin Buy[/url]
    Purchase Amoxil Online
  17. cljxgeygi
    cljxgeygi 3 months ago
    Урок 2 - Простые примитивы - The Delphi
    <a href="http://www.g90f0p94tg3x337s2wf35zffq57dw09ls.org/">acljxgeygi</a>
    cljxgeygi http://www.g90f0p94tg3x337s2wf35zffq57dw09ls.org/
    [url=http://www.g90f0p94tg3x337s2wf35zffq57dw09ls.org/]ucljxgeygi[/url]
  18. hpcysgocsg
    hpcysgocsg 2 months ago
    Урок 2 - Простые примитивы - The Delphi
    [url=http://www.gpd9xf9g8uhk9y053k2449qrx658iq11s.org/]uhpcysgocsg[/url]
    <a href="http://www.gpd9xf9g8uhk9y053k2449qrx658iq11s.org/">ahpcysgocsg</a>
    hpcysgocsg http://www.gpd9xf9g8uhk9y053k2449qrx658iq11s.org/
  19. cjmhdvgqv
    cjmhdvgqv 2 months ago
    Урок 2 - Простые примитивы - The Delphi
    cjmhdvgqv http://www.gj822m0w3z5ypd9r0f2yad1839y131rvs.org/
    <a href="http://www.gj822m0w3z5ypd9r0f2yad1839y131rvs.org/">acjmhdvgqv</a>
    [url=http://www.gj822m0w3z5ypd9r0f2yad1839y131rvs.org/]ucjmhdvgqv[/url]
  20. inetryconydot
    inetryconydot 2 months ago
    [b]AMOXIL[/b] is used to treat many different types of infections caused by bacteria, such as ear infections, bladder infections, pneumonia, gonorrhea, and E. coli or salmonella infection.
    Active Ingredient: [b]Amoxicillin[/b]

    [url=http://fhbroute.com/5.html?group=2021&amp;parameter=Amoxil][b]Order Amoxil Online[/b][/url]


    [b]Buy Amoxil[/b]
    Where To Buy Amoxil 500mg
    Buy Amoxil On Line
    [url=https://antibioticsline.tumblr.com/]Buy Antibiotics Online Next Day Delivery[/url]
    Where To Buy Amoxil 500mg
    [b]Buy Amoxil No Prescription[/b]
    Purchasing Amoxil
    [url=https://buydoxycyclineus.tumblr.com/]Purchase Doxycycline Online[/url]
    Amoxil Buy Online
    Buy Amoxil Without Prescription
    Order Amoxil 500mg Online
    Buy Online Amoxil
    [b]Amoxil Buy[/b]
    [url=https://neurontn.tumblr.com/]Get Neurontn Online No Prescription[/url]
    Where To Buy Amoxil 250mg
    [b]Amoxil Without Prescriptions Buy[/b]
    Order Amoxil No Prescription
    Get Amoxil 250mg Online
    [url=https://azithrom.webstarts.com/]Buy Azithromycin Without Prescription[/url]
    Where Can I Buy Amoxil
    Can I Buy Amoxil Over The Counter
    Buying Amoxil
    [url=https://cpsobsessedforums.com/threads/54599-Buy-cheap-amoxil-online-amoxil-buy-online-no-prescription]Purchase Amoxil Online[/url]
    Amoxil To Buy
    Buy Amoxil On Line
    Purchase Amoxil
    [b]Order Amoxil 500mg Online[/b]
  21. На сайте https://povar.ru/ оценили Ваш рецепт
    На сайте https://povar.ru/ оценили Ваш рецепт a month ago
    <a href="https://videosadovod.ru/">Все для сада, огорода, дачи</a>
  22. exyjuze
    exyjuze 20 days ago
    <a href="https://videogadzhet.ru/category/raznoe">https://videogadzhet.ru/category/raznoe</a>
  23. ejcsrooje
    ejcsrooje 10 days ago
    Урок 2 - Простые примитивы - The Delphi
    ejcsrooje http://www.gyqg3m096u42aq21p6o50tlf79sz586ks.org/
    [url=http://www.gyqg3m096u42aq21p6o50tlf79sz586ks.org/]uejcsrooje[/url]
    <a href="http://www.gyqg3m096u42aq21p6o50tlf79sz586ks.org/">aejcsrooje</a>
  24. qmyoftywvi
    qmyoftywvi 10 days ago
    Урок 2 - Простые примитивы - The Delphi
    [url=http://www.g4x85w748989ajy3ypui4stu57k605gks.org/]uqmyoftywvi[/url]
    <a href="http://www.g4x85w748989ajy3ypui4stu57k605gks.org/">aqmyoftywvi</a>
    qmyoftywvi http://www.g4x85w748989ajy3ypui4stu57k605gks.org/
  25. obobazoq
    obobazoq 6 days ago
    <a href="https://obzoryvideo.ru/sitemap.xml">Обзоры телевизоров</a>
Отменить.