Graphisoft GDL - 如何在GDL对象中获取布局名称和编号

时间:2016-05-18 16:16:58

标签: gdl archicad graphisoft

我想在我放置在布局上的gdl对象中显示布局名称和编号。

如何在我的GDL脚本中获取布局名称和编号?

1 个答案:

答案 0 :(得分:1)

您可以在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)

这些值将存储在变量LayoutIdLayoutName

这也记录了here并提到了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