如何根据同类型的另一个组件设置一个组件的视觉尺寸?

How to set the visual size of one component based on another component in the same type?

我正在使用 Dymola。假设我的模型中有两个组件,我想对共享相同类型的组件使用相同的视觉尺寸。

那么如何根据另一个组件设置一个组件的视觉尺寸呢? 我不打算使用注释代码,因为当有很多组件时会很麻烦吗?

我认为使用注释是唯一的出路。这是确定组件的位置和大小的地方。我想到的唯一方法是使用参数将这些位置设置为(部分)如下所示。

model pos_params
  parameter Real pos_x1 = -10;

  Modelica.Blocks.Sources.Constant const annotation (Placement(transformation(extent={{pos_x1,-10},{10,10}})));
end pos_params;

要获得结果,您需要在多个组件中添加一些额外的参数。

不过,在 Dymola 中执行此操作会使模型位置的大小图形操作变得麻烦,因为图标将设置为零大小。

没有办法绕过注释,因为它们定义了组件的图形表示。但是您可以使用 Annotation window.

轻松地将相关的 extent 值从一个组件复制粘贴到另一个组件