Modelica 可重用模板
我不想每次都创建文本框来显示块的名称,而是想为块创建一个可重用的模板。下面是我创建的Modelica 可重用模板,modelica,openmodelica,Modelica,Openmodelica,我不想每次都创建文本框来显示块的名称,而是想为块创建一个可重用的模板。下面是我创建的 partial block BlockTemplate annotation(Icon(coordinateSystem(extent = {{-100,-100},{100,100}}, preserveAspectRatio = true, initialScale = 0.1, grid = {2,2}), graphics = {Text(origin = {-0.366361,-0.51471},
partial block BlockTemplate
annotation(Icon(coordinateSystem(extent = {{-100,-100},{100,100}}, preserveAspectRatio = true, initialScale = 0.1, grid = {2,2}), graphics = {Text(origin = {-0.366361,-0.51471}, lineColor = {0,0,255}, extent = {{-150,150},{150,110}}, textString = "%name"),Text(origin = {0,-260}, lineColor = {0,0,255}, extent = {{-150,150},{150,110}}, textString = "%name")}));
end BlockTemplate;
然后我使用
extends BlockTemplate
结果是我在块的顶部显示了%name,但我无法编辑它
应该怎么做才能编辑它
提前感谢,,
MSK我想你不能像这样使用文本注释。您需要创建块的实例
block A
annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},
{100,100}}), graphics={Text(
extent={{-52,50},{62,-20}},
lineColor={0,0,255},
textString="%name")}));
end A;
上面是用于定义具有%name的文本批注的块
block B
A a annotation (Placement(transformation(extent={{-40,20},{-20,40}})));
end B;
块B包含块a的一个组件,该组件将自动显示该组件的名称以代替%name。好的,然后您可以这样做 块A
block A
annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100}, {100,100}}), graphics={Text(extent={{-52,50},{62,-20}}, lineColor={0,0,255}, textString="%name")}));
end A;
块B
block B
extends A;
end B;
块C
block C
B abc annotation (Placement(transformation(extent={{-60,20},{-40,40}})));
end C;
这不符合目的,阿德尔。以你的答案为例,我想要的是块A有一个模板,可以帮助命名B。因此,当我将B拖放到另一个模型C上时,我想要A在C的图表视图中显示B的名称。按照你所说的,将在B的图表视图中显示A的名称