Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Графика в С++ (http://forum.oszone.net/showthread.php?t=30471)

mask 18-04-2003 23:23 208782

Как в С++ рисовать. В частности, надо нарисовать эллипсоид?

mar 21-04-2003 09:00 208783

mask а OS, какая, лаконичный ты наш? и заодно каким пакетом (С++) ты пользуешься? :o

mask 22-04-2003 00:15 208784

Система WIN ME. Компилятор TURBO C++ v.3.0

Crew 22-04-2003 01:07 208785

турбо с я только под дос видел, а это под win или как?

mask 23-04-2003 00:11 208786

под дос

Crew 24-04-2003 00:22 208787

Жаль, помочь не могу, в Borland 3.0 если все делать как в примерах, то графическая библиотека не находилась, надо было в опциях самого Borland поставить включать графическую библиотеку, вот таким двойным лечилось объявлением, может в Турбо так же?

AT 24-04-2003 00:45 208788

обычно в каждом C есть графическая библиотечка
наверняка она инклудиться как
#include <graph.h>
или как-нибудь аналогично, но тоже тривиально

и скорее всего её можно найти, поискав "графические" слова (line, fill...) в папке с инклудами (*.h)

и вообще ! там что, хелпы нет?

mask 20-05-2003 00:47 208789

#include <graphics.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>

const w=240, l=100, xc=319, yc=239;

void main(int argc, char *argv[])
{
  int gdriver = DETECT, gmode, errorcode;
  initgraph(&gdriver, &gmode, "");
  float zoom=20,x,y,z,i,j;
  int a,b,c;
  a=atoi(argv[1]);
  b=atoi(argv[2]);
  c=atoi(argv[3]);
  setcolor(11);

  for (i=-w; i<w; i++) {
      x=i/zoom;
      for (j=-l; j<l; j++) {
  y=j/zoom;
  if ((1-(x*x)/(a*a)-(y*y)/(b*b))*c*c>0) {
     z=sqrt((1-(x*x)/(a*a)-(y*y)/(b*b))*c*c);
  putpixel(xc+y*zoom+i,yc-z*zoom-i,14);
     z=-sqrt((1-(x*x)/(a*a)-(y*y)/(b*b))*c*c);
  putpixel(xc+y*zoom+i,yc-z*zoom-i,14);
     }
  }
      }
  line(0,yc,639,yc);
  line(xc,0,xc,479);
  line(xc+240,0,xc-240,479);

  getch();
  closegraph();
  }

netmax 22-05-2003 07:29 208790

mask
А в чем проблема?

mask 27-05-2003 00:57 208791

уже не в чем

B o s s 28-05-2003 18:11 208792

Кстати, у меня тоже есть проблема с Borland C++ 3.1 for DOS.
Беру какой нибудь исходник из examples, запускаю, а компилятор мне говорит:

Undefined symbol _initgraph

или

Undefined symbol _closegraph

или еще етому подобное, хотя таких слов, да еще с знаком подчеркивания в проге нет.

Чего оно хочет?

shurikan 29-05-2003 02:12 208793

B o s s
Символ подчёркивания перед каждым глобальным именем всатвляет сам компилятор... Ну, а хочет он, чтобы ты в начале своего модуля добавил строку:
Код:

#include <graphics.h>
Это если компилятор говорит. А если это говорит линкер, то в проекте надо добавить использование Graphics. Это в меню, кажется, Options->Linker.

B o s s 29-05-2003 22:03 208794

shurikan


Цитата:

Код:#include <graphics.h>
ето есть,
но
Цитата:

Options->Linker.
еще попробую



Добавлено:

shurikan


Цитата:

Код:#include <graphics.h>
ето есть,
но
Цитата:

Options->Linker.
еще попробую


mask 29-05-2003 23:54 208795

Еще может быть он не находит файлы bgi. Надо указать на них путь в функции подключения графики.

Crew 03-06-2003 00:02 208796

Цитата:

Borland 3.0 если все делать как в примерах, то графическая библиотека не находилась, надо было в опциях самого Borland поставить включать графическую библиотеку, вот таким двойным лечилось объявлением,
В опциях пошарьте, я ж написал :(

D1g174LM4n14c 04-06-2003 19:51 208797

Зачем так мучаться? Ведь есть GDI если вы под Виндовхом... А можно (для продвинутых) OpenGL юзать...


Время: 15:51.

Время: 15:51.
© OSzone.net 2001-