[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

4.6 Рисование примитивов

Эти функции рисуют рисуют простые объекты типа линий, точек, сфер, капель, конусов, и т.д.

Команда MGL: clf
Метод класса mglGraph: void Clf ()
Метод класса mglGraph: void Clf (mreal r, mreal g, mreal b)
Функция С: void mgl_clf (HMGL gr)
Функция С: void mgl_clf_rgb (HMGL gr, mreal r, mreal g, mreal b)

Очищает рисунок и заполняет его заданным цветом.

Команда MGL: ball x y ['col'='r.']
Команда MGL: ball x y z ['col'='r.']
Метод класса mglGraph: void Ball (mglPoint p, char col='r')
Метод класса mglGraph: void Mark (mglPoint p, const char *mark)
Функция С: void mgl_mark (HMGL gr, mreal x, mreal y, mreal z, const char *mark)

Рисует маркер (точку по умолчанию) с координатами p={x, y, z} и цветом col.

Команда MGL: errbox x y ex ey ['stl'='']
Команда MGL: errbox x y z ex ey ez ['stl'='']
Метод класса mglGraph: void Error (mglPoint p, mglPoint e, char *stl="")
Функция С: void mgl_error_box (HMGL gr, mreal px, mreal py, mreal pz, mreal ex, mreal ey, mreal ez, char *stl)

Рисует 3d error box в точке p={x, y, z} размером e={ex, ey, ez} и стилем stl. Используйте NAN в компонентах e для уменьшения рисуемых элементов.

Команда MGL: line x1 y1 x2 y2 ['stl'='']
Команда MGL: line x1 y1 z1 x2 y2 z2 ['stl'='']
Метод класса mglGraph: void Line (mglPoint p1, mglPoint p2, char *stl="B", intnum=2)
Функция С: void mgl_line (HMGL gr, mreal x1, mreal y1, mreal z1, mreal x2, mreal y2, mreal z2, char *stl, intnum)

Рисует геодезическую линию (декартовых координатах – прямую) из точки p1 в p2 использую стиль линии stl. Параметр num определяет гладкость линии (число точек на линии). Если num=2, то рисуется прямая даже в криволинейных координатах (см. Криволинейные координаты). Наоборот, для больших значений (например, =100) рисуется геодезическая линия (окружность в полярных координатах, парабола в параболических и т.д.). Линия рисуется даже если часть ее лежит вне диапазона осей координат.

Команда MGL: curve x1 y1 dx1 dy1 x2 y2 dx2 dy2 ['stl'='']
Команда MGL: curve x1 y1 z1 dx1 dy1 dz1 x2 y2 z2 dx2 dy2 dz2 ['stl'='']
Метод класса mglGraph: void Curve (mglPoint p1, mglPoint d1, mglPoint p2, mglPoint d2, const char *stl="B", int num=100)
Функция С: void mgl_curve (HMGL gr, mreal x1, mreal y1, mreal z1, mreal dx1, mreal dy1, mreal dz1, mreal x2, mreal y2, mreal z2, mreal dx2, mreal dy2, mreal dz2, const char *stl, int num)

Рисует кривую Безье из точки p1 в p2 используя стиль линии stl. Касательные в точках пропорциональны d1, d2. Параметр num определяет гладкость линии (число точек на линии). Если num=2, то рисуется прямая даже в криволинейных координатах (см. Криволинейные координаты). Наоборот, для больших значений (например, =100) рисуется геодезическая линия (окружность в полярных координатах, парабола в параболических и т.д.). Кривая рисуется даже если часть ее лежит вне диапазона осей координат.

Команда MGL: face x1 y1 x2 y2 x3 y3 x4 y4 ['stl'='']
Команда MGL: face x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4 ['stl'='']
Метод класса mglGraph: void Face (mglPoint p1, mglPoint p2, mglPoint p3, mglPoint p4, const char *stl="w")
Функция С: void mgl_face (HMGL gr, mreal x1, mreal y1, mreal z1, mreal x2, mreal y2, mreal z2, mreal x3, mreal y3, mreal z3, mreal x4, mreal y4, mreal z4, const char *stl)

Рисует заполненный четырехугольник (грань) с углами в точках p1, p2, p3, p4 и цветом(-ами) stl. При этом цвет может быть один для всей грани, или различным если указаны все 4 цвета. Грань будет нарисована даже если часть ее лежит вне диапазона осей координат.

MGL command: rect x1 y1 x2 y2 ['stl'='']
MGL command: rect x1 y1 z1 x2 y2 z2 ['stl'='']

Рисует закрашенный прямоугольник (грань) с вершинами {x1, y1, z1} и {x2, y2, z2} цветом stl. При этом цвет может быть один для всей грани, или различным для разных вершин если указаны все 4 цвета. Грань будет нарисована даже если часть ее лежит вне диапазона осей координат.

Команда MGL: facex x0 y0 z0 wy wz ['stl'='' d1=0 d2=0]
Команда MGL: facey x0 y0 z0 wx wz ['stl'='' d1=0 d2=0]
Команда MGL: facez x0 y0 z0 wx wy ['stl'='' d1=0 d2=0]
Метод класса mglGraph: void FaceX (mreal x0, mreal y0, mreal z0, mreal wy, mreal wz, const char *stl="w", mreal d1=0, mreal d2=0)
Метод класса mglGraph: void FaceY (mreal x0, mreal y0, mreal z0, mreal wx, mreal wz, const char *stl="w", mreal d1=0, mreal d2=0)
Метод класса mglGraph: void FaceZ (mreal x0, mreal y0, mreal z0, mreal wx, mreal wy, const char *stl="w", mreal d1=0, mreal d2=0)
Функция С: void mgl_facex (HMGL gr, mreal x0, mreal y0, mreal z0, mreal wy, mreal wz, const char *stl, mreal d1, mreal d2)
Функция С: void mgl_facey (HMGL gr, mreal x0, mreal y0, mreal z0, mreal wx, mreal wz, const char *stl, mreal d1, mreal d2)
Функция С: void mgl_facez (HMGL gr, mreal x0, mreal y0, mreal z0, mreal wx, mreal wy, const char *stl, mreal d1, mreal d2)

Рисует закрашенный прямоугольник (грань) перпендикулярно оси [x,y,z] в точке {x0, y0, z0} цветом stl и шириной wx, wy, wz вдоль соответствующего направления. При этом цвет может быть один для всей грани, или различным для разных вершин если указаны все 4 цвета. Параметры d1!=0, d2!=0 задают дополнительный сдвиг последней точки (т.е. рисуют четырехугольник). Грань будет нарисована даже если часть ее лежит вне диапазона осей координат.

Команда MGL: sphere x0 y0 r ['col'='r']
Команда MGL: sphere x0 y0 z0 r ['col'='r']
Метод класса mglGraph: void Sphere (mglPoint p, mreal r, const char *stl="r")
Функция С: void mgl_sphere (HMGL gr, mreal x0, mreal y0, mreal z0, mreal r, const char *stl)

Рисует сферу радиуса r с центром в точке p={x0, y0, z0} цветом stl.

Команда MGL: drop x0 y0 dx dy r ['col'='r' sh=1 asp=1]
Команда MGL: drop x0 y0 z0 dx dy dz r ['col'='r' sh=1 asp=1]
Метод класса mglGraph: void Drop (mglPoint p, mglPoint d, mreal r, const char *col="r", mreal shift=1, mreal ap=1)
Функция С: void mgl_drop (HMGL gr, mreal x0, mreal y0, mreal z0, mreal dx, mreal dy, mreal dz, mreal r, const char *col, mreal shift, mreal ap)

Рисует каплю радиуса r в точке p вытянутую вдоль направления d цветом col. Параметр shift определяет степень вытянутости: ‘0’ – сфера, ‘1’ – классическая капля. Параметр ap определяет относительную ширину капли (аналог "эллиптичности" для сферы).

Команда MGL: cone x1 y1 z1 x2 y2 z2 r1 [r2=-1 'stl'='' edge=off]
Метод класса mglGraph: void Cone (mglPoint p1, mglPoint p2, mreal r1, mreal r2=-1, const char *stl="B", bool edge=false)
Функция С: void mgl_cone (HMGL gr, mreal x1, mreal y1, mreal z1, mreal x2, mreal y2, mreal z2, mreal r1, mreal r2, const char *stl, int draw_edge)

Рисует трубу (или усеченный конус если edge=false) между точками p1, p2 с радиусами на концах r1, r2. Если r2<0, то полагается r2=r1. Цвет конуса задается строкой stl.

Команда MGL: circle x0 y0 r ['col'='r']
Команда MGL: circle x0 y0 z0 r ['col'='r']
Метод класса mglGraph: void Circle (mglPoint p, mreal r, const char *stl="r")

Рисует круг радиуса r с центром в точке p={x0, y0, z0} цветом stl. Если col содержит: ‘#’ то рисуется только граница, ‘@’ то рисуется граница (вторым цветом из col или черными).

Команда MGL: ellipse x1 y1 x2 y2 r ['col'='r']
Команда MGL: ellipse x1 y1 z1 x2 y2 z2 r ['col'='r']
Метод класса mglGraph: void Ellipse (mglPoint p1, mglPoint p2, mreal r, const char *col="r")
Функция С: void mgl_ellipse(HMGL gr, mreal x1, mreal y1, mreal z1, mreal x2, mreal y2, mreal z2, mreal r, const char *col)

Рисует круг радиуса r с фокусами в точках p1, p2 цветом stl. Если col содержит: ‘#’ то рисуется только граница, ‘@’ то рисуется граница (вторым цветом из col или черными).

Команда MGL: rhomb x1 y1 x2 y2 r ['col'='r']
Команда MGL: rhomb x1 y1 z1 x2 y2 z2 r ['col'='r']
Метод класса mglGraph: void Rhomb (mglPoint p1, mglPoint p2, mreal r, const char *col="r")
Функция С: void mgl_rhomb(HMGL gr, mreal x1, mreal y1, mreal z1, mreal x2, mreal y2, mreal z2, mreal r, const char *col)

Рисует ромб ширины r с вершинами в точках p1, p2 цветом stl. Если col содержит: ‘#’ то рисуется только граница, ‘@’ то рисуется граница (вторым цветом из col или черными). Если col содержит 3 цвета, то используется градиентная заливка.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]

This document was generated by Autobuild on September 28, 2013 using texi2html 1.82.