график::2D текст
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
plot::Text2d(text, [x, y], <a = amin .. amax>, options)
plot::Text2d чертит текст в данном положении (x, y) (“точка привязки”). Атрибуты VerticalAlignment и HorizontalAlignment определяют выравнивание текста w.r.t. его привязка.
Размер, цвет текста, типом шрифта и т.д. управляет атрибут TextFont.
Текст может состоять из нескольких строк. Символ новой строки в MuPAD® представляет в виде строки ist \n. Например: "first line\nsecond line".
Атрибут TextRotation позволяет вращать текст на экране.
Текст текстового объекта может быть анимирован, если он передается как процедура, которая возвращает текстовую строку во время времени выполнения. Cf. Пример 5.
| Атрибут | Цель | Значение по умолчанию |
|---|---|---|
AffectViewingBox | влияние объектов на ViewingBox сцены | TRUE |
Frames | количество кадров в анимации | 50 |
HorizontalAlignment | выравнивание по горизонтали текстовых объектов w.r.t. их координаты | Left |
Legend | делает запись легенды | |
LegendText | короткий объяснительный текст для легенды | |
LegendEntry | добавить этот объект в легенду? | FALSE |
Name | имя объекта графика (для браузера и легенды) | |
ParameterEnd | закончите значение параметра анимации | |
ParameterName | имя параметра анимации | |
ParameterBegin | начальное значение параметра анимации | |
ParameterRange | область значений параметра анимации | |
Position | положения камер, световых сигналов и текстовых объектов | |
PositionX | x-положения камер, световых сигналов и текстовых объектов | |
PositionY | y-положения камер, световых сигналов и текстовых объектов | |
Text | текст текстового объекта | |
TextFont | шрифт текстовых объектов | [" sans-serif ", 11] |
TextRotation | вращение 2D текста | 0 |
TimeEnd | время окончания анимации | 10.0 |
TimeBegin | время начала анимации | 0.0 |
TimeRange | оперативный промежуток анимации | 0.0 .. 10.0 |
Title | объектный заголовок | |
TitleFont | шрифт объектных заголовков | [" sans-serif ", 11] |
TitlePosition | положение объектных заголовков | |
TitleAlignment | выравнивание по горизонтали заголовков w.r.t. их координаты | Center |
TitlePositionX | положение объектных заголовков, x компонент | |
TitlePositionY | положение объектных заголовков, y компонент | |
VerticalAlignment | выравнивание по вертикали текстовых объектов w.r.t. их координаты | BaseLine |
Visible | видимость | TRUE |
VisibleAfter | объект, видимый после этой временной стоимости | |
VisibleBefore | объект, видимый до этой временной стоимости | |
VisibleFromTo | объект, видимый в это время, располагается | |
VisibleAfterEnd | объект, видимый после его законченного времени анимации? | TRUE |
VisibleBeforeBegin | объект, видимый перед его временем анимации, запускается? | TRUE |
Мы чертим текстовую строку 'Hello World!' в точке привязки (1, 2), который обозначается красной точкой:
plot(plot::Rectangle(0..2, 0..4),
plot::Point2d([1, 2]),
plot::Text2d("Hello world!", [1, 2],
HorizontalAlignment = Center),
Axes = Frame, TextFont = [24],
PointColor = RGB::Red, PointSize = 3*unit::mm)
Мы анимируем точки привязки следующих текстов и демонстрируем различные возможности выравнивания:
plot(plot::Circle2d(1),
plot::Point2d([sin(a), cos(a)], a = 0..2*PI),
plot::Point2d([cos(a), -sin(a)], a = 0..2*PI),
plot::Point2d([-sin(a), -cos(a)], a = 0..2*PI),
plot::Point2d([-cos(a), sin(a)], a = 0..2*PI),
PointColor = RGB::Red, PointSize = 3*unit::mm,
plot::Text2d("Hello (1)", [sin(a), cos(a)], a = 0..2*PI),
plot::Text2d("Hello (2)", [cos(a), -sin(a)], a = 0..2*PI,
HorizontalAlignment = Left,
VerticalAlignment = BaseLine),
plot::Text2d("Hello (3)", [-sin(a), -cos(a)], a = 0..2*PI,
HorizontalAlignment = Center,
VerticalAlignment = Top),
plot::Text2d("Hello (4)", [-cos(a), sin(a)], a = 0..2*PI,
HorizontalAlignment = Right,
VerticalAlignment = Bottom),
TextFont = [Italic, 24], Axes = Frame)
Текст может состоять из нескольких строк. Символом новой строки в строках MuPAD является \n:
plot(plot::Text2d("A text can\nhave several\nlines",
[sin(a), cos(a)], a = 0..2*PI),
Axes = Frame, TextFont = [20])
Атрибут TextRotation позволяет вращать 2D текст на экране:
plot(plot::Circle2d(sqrt(2)),
plot::Text2d("Hello (1)", [ 1, 1],
HorizontalAlignment = Left,
TextRotation = PI/4),
plot::Text2d("Hello (2)", [ 1,-1],
HorizontalAlignment = Left,
TextRotation = -PI/4),
plot::Text2d("Hello (3)", [-1,-1],
HorizontalAlignment = Right,
TextRotation = PI/4),
plot::Text2d("Hello (4)", [-1, 1],
HorizontalAlignment = Right,
TextRotation = -PI/4),
HorizontalAlignment = Left, TextFont = [20])
Текст текстового объекта может быть анимирован, если текстовая строка предоставлена процедурой. Мы используем stringlib::formatf, чтобы отформатировать параметр анимации, который передается процедуре как число с плавающей запятой для каждого кадра анимации:
plot(plot::Rectangle(-1..1, -1..1),
plot::Text2d(a -> stringlib::formatf(a, 2, 5)." sec",
[0, 0], a = 0..20),
TextFont = [60],
HorizontalAlignment = Center, VerticalAlignment = Center,
Axes = Frame, Frames = 201, TimeRange = 0..20)
|
Текст: строка. Также процедура, которая принимает входной параметр того a (параметр анимации) и возвращает строку.
|
|
Положение текста. Координаты |
|
Параметр анимации, заданный как |