plot
::Text2d
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
позволяет вращать текст на экране.
Текст текстового объекта может быть анимирован, если он передается как процедура, которая возвращает текстовую строку во время времени выполнения. См. Пример 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 (параметр анимации) и возвращает строку.
|
|
Положение текста. Координаты |
|
Параметр анимации, заданный как |