Эти функции рисуют рисуют простые объекты типа линий, точек, сфер, капель, конусов, и т.д.
x y
['col'='r.']
¶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.
x y ex ey
['stl'='']
¶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 для уменьшения рисуемых элементов.
x1 y1 x2 y2
['stl'='']
¶x1 y1 z1 x2 y2 z2
['stl'='']
¶mglGraph
: void
Line (mglPoint
p1, mglPoint
p2, char *
stl="B"
, int
num=2
)
¶void
mgl_line (HMGL
gr, mreal
x1, mreal
y1, mreal
z1, mreal
x2, mreal
y2, mreal
z2, char *
stl, int
num)
¶Рисует геодезическую линию (декартовых координатах – прямую) из точки p1 в p2 использую стиль линии stl. Параметр num определяет гладкость линии (число точек на линии). Если num=2
, то рисуется прямая даже в криволинейных координатах (см. Криволинейные координаты). Наоборот, для больших значений (например, =100
) рисуется геодезическая линия (окружность в полярных координатах, парабола в параболических и т.д.). Линия рисуется даже если часть ее лежит вне диапазона осей координат.
x1 y1 dx1 dy1 x2 y2 dx2 dy2
['stl'='']
¶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
) рисуется геодезическая линия (окружность в полярных координатах, парабола в параболических и т.д.). Кривая рисуется даже если часть ее лежит вне диапазона осей координат.
x1 y1 x2 y2 x3 y3 x4 y4
['stl'='']
¶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 цвета. Грань будет нарисована даже если часть ее лежит вне диапазона осей координат. Параметр stl может также содержать параметры маски (см. Цветовая схема).
x1 y1 x2 y2
['stl'='']
¶x1 y1 z1 x2 y2 z2
['stl'='']
¶Рисует закрашенный прямоугольник (грань) с вершинами {x1, y1, z1} и {x2, y2, z2} цветом stl. При этом цвет может быть один для всей грани, или различным для разных вершин если указаны все 4 цвета. Грань будет нарисована даже если часть ее лежит вне диапазона осей координат. Параметр stl может также содержать параметры маски (см. Цветовая схема).
x0 y0 z0 wy wz
['stl'='' d1=0 d2=0
]
¶x0 y0 z0 wx wz
['stl'='' d1=0 d2=0
]
¶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 цвета. Параметр stl может также содержать параметры маски (см. Цветовая схема). Параметры d1!=0, d2!=0 задают дополнительный сдвиг последней точки (т.е. рисуют четырехугольник). Грань будет нарисована даже если часть ее лежит вне диапазона осей координат.
x0 y0 r
['col'='r']
¶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.
x0 y0 dx dy r
['col'='r' sh=1 asp=1
]
¶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 определяет относительную ширину капли (аналог "эллиптичности" для сферы).
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. Параметр stl может содержать:
x0 y0 r
['col'='r']
¶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 или черными). Параметр col может также содержать параметры маски (см. Цветовая схема).
x1 y1 x2 y2 r
['col'='r']
¶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 или черными). Параметр col может также содержать параметры маски (см. Цветовая схема).
x1 y1 x2 y2 r
['col'='r']
¶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 цвета, то используется градиентная заливка. Параметр col может также содержать параметры маски (см. Цветовая схема).
x0 y0 x1 y1 a
['col'='r']
¶x0 y0 z0 x1 y1 a
['col'='r']
¶x0 y0 z0 xa ya za x1 y1 z1 a
['col'='r']
¶mglGraph
: void
Arc (mglPoint
p0, mglPoint
p1, mreal
a, const char *
col="r"
)
¶mglGraph
: void
Arc (mglPoint
p0, mglPoint
pa, mglPoint
p1, mreal
a, const char *
col="r"
)
¶void
mgl_arc (HMGL
gr, mreal
x0, mreal
y0, mreal
x1, mreal
y1, mreal
a, const char *
col)
¶void
mgl_arc_ext (HMGL
gr, mreal
x0, mreal
y0, mreal
z0, mreal
xa, mreal
ya, mreal
za, mreal
x1, mreal
y1, mreal
z1, mreal
a, const char *
col)
¶Рисует дугу вокруг оси pa (по умолчанию вокруг оси z pa={0,0,1}) с центром в p0, начиная с точки p1. Параметр a задает угол дуги в градусах. Строка col задает цвет дуги и тип стрелок на краях.
x0 y0 x1 y1 num
['col'='r']
¶x0 y0 z0 x1 y1 z1 num
['col'='r']
¶mglGraph
: void
Polygon (mglPoint
p0, mglPoint
p1, int
num, const char *
col="r"
)
¶void
mgl_polygon (HMGL
gr, mreal
x0, mreal
y0, mreal
z0, mreal
x1, mreal
y1, mreal
z1, int
num, const char *
col)
¶Рисует правильный num-угольник с центром в p0 с первой вершиной в p1 цветом col. Если col содержит: ‘#’ то рисуется только граница, ‘@’ то рисуется граница (вторым цветом из col или черными). Параметр col может также содержать параметры маски (см. Цветовая схема).
'fname' [smooth=off]
¶mglGraph
: void
Logo (const char *
fname, bool
smooth=false
, const char *
opt=""
)
¶mglGraph
: void
Logo (long
w, long
h, const unsigned char *
rgba, bool
smooth=false
, const char *
opt=""
)
¶void
mgl_logo (HMGL
gr, long
w, long
h, const unsigned char *
rgba, bool
smooth, const char *
opt)
¶void
mgl_logo_file (HMGL
gr, const char *
fname, bool
smooth, const char *
opt)
¶Draw bitmap (logo) along whole axis range, which can be changed by Опции команд. Bitmap can be loaded from file or specified as RGBA values for pixels. Parameter smooth set to draw bitmap without or with color interpolation.
x y
'id' ['fnt'='' size=-1
]
¶x y z
'id' ['fnt'='' size=-1
]
¶mglGraph
: void
Symbol (mglPoint
p, char
id, const char *
fnt=""
, mreal
size=-1
)
¶void
mgl_symbol (HMGL
gr, mreal
x, mreal
y, mreal
z, char
id, const char *
fnt, mreal
size)
¶Рисует определенный пользователем символ с именем id в точке p стилем fnt. Размер задается параметром size (по умолчанию -1
). Строка fnt может содержать цвет (до разделителя ‘:’); стили ‘a’ или ‘A’ для вывода в абсолютной позиции ({x, y} полагаются в диапазоне [0,1]) относительно рисунка (для ‘A’) или subplot/inplot (для ‘a’); и стиль ‘w’ для рисования только контура символа.
x y dx dy
'id' ['fnt'=':L' size=-1
]
¶x y z dx dy dz
'id' ['fnt'=':L' size=-1
]
¶mglGraph
: void
Symbol (mglPoint
p, mglPoint
d, char
id, const char *
fnt=""
, mreal
size=-1
)
¶void
mgl_symbol_dir (HMGL
gr, mreal
x, mreal
y, mreal
z, mreal
dx, mreal
dy, mreal
dz, const char *
text, const char *
fnt, mreal
size)
¶Аналогично предыдущему, но символ рисуется в повернутым в направлении d.
'id' xdat ydat
¶mglGraph
: void
DefineSymbol (char
id, const mglDataA &
xdat, const mglDataA &
ydat)
¶void
mgl_define_symbol (HMGL
gr, HCDT
xdat, HCDT
ydat)
¶Добавляет определенный пользователем символ с именем id и границей {xdat, ydat}. Значения NAN
задают разрыв (скачок) граничной кривой.