Graphisoft GDL - 如何在 GDL 对象中获取布局名称和编号
Graphisoft GDL - How to get layout name and number inside GDL object
我想在我放置在布局上的 gdl 对象中显示布局名称和编号。
如何将布局名称和编号添加到我的 GDL 脚本中?
您可以通过多种方式在 GDL 脚本中获取布局名称。
一个常用的解决方案是使用自动文本标签 <LAYOUTNAME>
或 <LAYOUTID>
作为字符串。在 gdl 对象编译后,此标签将被布局名称或布局 ID 替换。
xPos = 0;
yPos = 0;
TEXT2 xPos, yPos, '<LAYOUTNAME>'
或
TEXT2 xPos, yPos, '<LAYOUTID>'
可以找到所有自动文本标签 here in the documentation。
注意:注意<LAYOUTID>
和<LAYOUTNUMBER>
是两个不同的东西!
此解决方案的问题是您不能使用例如函数中的值与值进行比较。所以这永远不会评估为真:
'<LAYOUTNAME>' = 'my layout name'
如果您想做类似的事情,可以使用 the GDL REQUEST
options function
的替代方法
n = request ("HomeDB_info", "", n, LayoutId, LayoutName, n)
这些值将存储在变量 LayoutId
和 LayoutName
中
这也有记载here and mentioned here on the ArchiCAD-TALK forum
可以评估此值并直接在您的代码中使用它:
IF LayoutName = 'my layout name' THEN
! layout name is 'my layout name'
ELSE
! layout name is something else
ENDIF
我想在我放置在布局上的 gdl 对象中显示布局名称和编号。
如何将布局名称和编号添加到我的 GDL 脚本中?
您可以通过多种方式在 GDL 脚本中获取布局名称。
一个常用的解决方案是使用自动文本标签 <LAYOUTNAME>
或 <LAYOUTID>
作为字符串。在 gdl 对象编译后,此标签将被布局名称或布局 ID 替换。
xPos = 0;
yPos = 0;
TEXT2 xPos, yPos, '<LAYOUTNAME>'
或
TEXT2 xPos, yPos, '<LAYOUTID>'
可以找到所有自动文本标签 here in the documentation。
注意:注意<LAYOUTID>
和<LAYOUTNUMBER>
是两个不同的东西!
此解决方案的问题是您不能使用例如函数中的值与值进行比较。所以这永远不会评估为真:
'<LAYOUTNAME>' = 'my layout name'
如果您想做类似的事情,可以使用 the GDL REQUEST
options function
n = request ("HomeDB_info", "", n, LayoutId, LayoutName, n)
这些值将存储在变量 LayoutId
和 LayoutName
这也有记载here and mentioned here on the ArchiCAD-TALK forum
可以评估此值并直接在您的代码中使用它:
IF LayoutName = 'my layout name' THEN
! layout name is 'my layout name'
ELSE
! layout name is something else
ENDIF