На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (16) « Первая ... 7 8 [9] 10 11 ...  15 16 все  ( Перейти к последнему сообщению )  
> эмуляция BGI графики
    Инициализация самой библиотеки осуществляется, если она подключена, независимо от того, вызывались ее функции...


    *kbhit реализована


    getch работает только в инициализированном графическом режиме из-за цикла обработки сообщений. Можно это обойти, создавая при инициализации окно 1х1 пиксел...


    Включение заголовков теперь выглядит так:

    ExpandedWrap disabled
      #ifndef _BORLANDC_
      #include "../dgml/dgml_init.h"
      #else
      #include <graphics.h>
      #include <conio.h>
      #include <dos.h>
      #endif


    Добавлено
    Цитата barazuk @
    Народу, видать, по-барабану... Ты писАтель тут главный - тебе и решать...

    Решил. Стереть 3 строки никто не обломается, написать тоже... И вообще, лабу можно сдавать вместе с DGML-дефайнами. Кому какое дело до них? А на вопрос, зачем они нужно, отвечать "для отладки в нормальной среде разработки"...


    Кстати, я тут с удивлением обнаружил, что в bc3.1 не определен тип bool. :blink:

    Добавлено
    Цитата angrylion @
    Так что в либе Der Meister'a нельзя пока написать чё-нить вроде:

    while(!kbhit()) //с getch так нифига не выйдет, она возвращает символ, и пока чё-нить на клавиатуре не нажмёшь, цикл не начнёт выполняться
    {
    SleepEx(100,FALSE); //для задержки на 100 мс в windows.h.
    cleardevice();
    setcolor(rand()%15);
    outtextxy(rand()%640,rand()%480,"\052"); //рисуем на случайн.месте звёздочку
    }


    Теперь модно. :) И еще в DGML есть delay() - ожидание в мс и sleep() - в секундах.

    Сейчас залью последнюю версию...

    Добавлено
    Еще хорошая новость: уродский макрос #define getch DGML::_getch удален и больше никогда такого не будет. :D
      http://heavysoft.org/dwn/dgml/DGML_sources330.rar

      В архиве только исходнике и список реализованных функций. Версия промежуточная, нестабильная. Дистрибутива к ней не будет...
        + getarccoords

        Добавлено
        + getfillsettings
        * textheight

        Добавлено
        + textheight
        + textwidth
          В очередной раз переписана getch.
          На 100% стал работать пример closegraph.
          Исправлен баг в getpixel.


          Прикрепляю довольно интересный примерчик к getpixel.
          Прикреплённый файлПрикреплённый файлgetpixel.rar (47.67 Кбайт, скачиваний: 209)
            Оказывается в bc структуры ВСЕГДА передаются по указателю :blink:.

            +moveto
            *outtext
            +setfillstyle

            Добавлено
            Выложен дистрибутив версии 0.3.80
            Вики обновлена (http://www.sources.ru/wiki/doku.php?id=projects:dgml)

            Полный дистрибутив (107 Кб)

            Сборник примеров использования DGML (1,69 Мб)



            P.S. А модеров тут нынче нет? А то я хотел пост к шапке прилепить... :unsure:

            Добавлено
            Сборник примеров - исходник + бинарник BC3.1 + бинарник DGML.

            Примерами снабжены следующие функции:
            ExpandedWrap disabled
              arc.cpp
              bar.cpp
              bar3d.cpp
              circle.cpp
              cleardevice.cpp
              closegraph.cpp
              drawpoly.cpp
              ellipse.cpp
              fillellipse.cpp
              fillpoly.cpp
              floodfill.cpp
              getarccoords.cpp
              getbkcolor.cpp
              getcolor.cpp
              getfillpattern.cpp
              getfillsettings.cpp
              getmaxcolors.cpp
              getmaxx.cpp
              getmaxy.cpp
              getpixel.cpp
              getx.cpp
              gety.cpp
              initgraph.cpp
              line.cpp
              linerel.cpp
              lineto.cpp
              moverel.cpp
              moveto.cpp
              putpixel.cpp
              rectangle.cpp
              setbkcolor.cpp
              setcolor.cpp
              setfillpattern.cpp
              setfillstyle.cpp
              settextjustify.cpp
              sleep.cpp
              textheight.cpp
              textwidth.cpp
              +sound
              +nosound

              DGML обзавелась звуком. Благодаря barazuk'у. Именно его перу принадлежит основная функциональность файлов dgml_speaker.cpp и dgml_speaker.h

              Прикрепляю демонстрационный пример.
              Прикреплённый файлПрикреплённый файлdelay.rar (24.65 Кбайт, скачиваний: 198)
                исходники версии 4.03

                Добавлено
                Цитата
                ║/* Emits a 7-Hz tone for 10 seconds. ■
                ║ ▒
                ║ True story: 7 Hz is the resonant ▒
                ║ frequency of a chicken's skull cavity. ▒
                ║ This was determined empirically in ▒
                ║ Australia, where a new factory ▒
                ║ generating 7-Hz tones was located too ▒
                ║ close to a chicken ranch: When the ▒
                ║ factory started up, all the chickens ▒
                ║ died. ▒
                ║ ▒
                ║ Your PC may not be able to emit a 7-Hz tone. */


                Борландоский пример генерации частоты 7 герц, который, по заявлению разработчиков, убивает цыплят, мой спикер воспроизвести не смог. :D
                Прикреплённый файлПрикреплённый файлDGML403.rar (19.23 Кбайт, скачиваний: 203)
                  Простите за ламерство, а это все дело можно как-нибуть использовать в С#(например в виде подключенной dll-ки), и если да то как?
                    Цитата GazOn @


                    из C# нельзя. Из MC++ можно. Из C# можно использовать либо dll на чистом C (DllImport), либо регистрировать dll на C++ как COM библиотеку.
                      подскажите начинающему, почему у меня не работает DGML??? я скопировал graphics.h и DGML.lib в соответственные папки, а после того, как начинаю компилировать пример из архива "examples_380" выдается ошибка "[Linker Error] Unresolved external '_main' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\C0X32.OBJ" что мне надо сделать??? подскажите пожалуйста бедному студенту! :(
                        susanin
                        Попробуй скачать дистрибутив http://heavysoft.org/dwn/dgml/distr_262.rar

                        Там в папке example\BCB6 лежит файл проекта для Borland Builder'a с примером, уже настроенный для работы с DGML.

                        Скорее всего, в проекте не подключена DGML.lib (у меня билдера нет, точную инструкцию дать не могу...)
                          Цитата De_________ @
                          Попробуй скачать дистрибутив http://heavysoft.org/dwn/dgml/distr_262.rar

                          Там в папке example\BCB6 лежит файл проекта для Borland Builder'a с примером, уже настроенный для работы с DGML.

                          Скорее всего, в проекте не подключена DGML.lib (у меня билдера нет, точную инструкцию дать не могу...)

                          я скачал, но при открытии этого файла выдается такая ошибка "the project's target could not be found in file Test.cpp. The project's target is commonly WinMain or DllEntryPoint." помогите мне пожалуйста настроить DGML!!! я уже не знаю как мне быть!!
                            susanin
                            Попытались мы с Nich'ем скомпилировать под билдером. Выяснилась куча нехороших вещей о БЦБ. Например, в нем объявляются функции random и randomize, которых в стандарте нет.

                            Так что версия для борланда откладывается.

                            Я бы посоветовал вообще перейти на нормальный компилятор :), но все-таки через пару дней, надеюсь, версия для BCB будет собрана. ;)
                              Поставил билдер. Библиотека собирается. Пример тоже компилируется, собирается. Только не работает. :wall: Черный экран и все.

                              А вот со старой пикселы выводятся, но delay, getch и keyhit там не определены :(
                              Прикреплённый файлПрикреплённый файлDGML_403_BCB.rar (192.61 Кбайт, скачиваний: 209)
                                Цитата De_________ @
                                Выяснилась куча нехороших вещей о БЦБ. Например, в нем объявляются функции random и randomize, которых в стандарте нет.
                                Ну наконец-то вы узнаете, что в C/C++ есть понятие "условная компиляция" :D
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (16) « Первая ... 7 8 [9] 10 11 ...  15 16 все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,1502 ]   [ 15 queries used ]   [ Generated: 4.05.24, 17:34 GMT ]