我可以通过向它发送消息来调整 pd 子补丁的父级图形尺寸吗(动态补丁)

Can I adjust the graph-on-parent dimensions of a pd subpatch by sending messages to it (dynamic patching)

我目前正在构建一个抽象,它根据抽象的参数动态地创建它的部分。有一个主要元素和几个将附加到该主要元素的另一种类型的元素(与参数指定的一样多)。所有这些都需要在主机补丁中可见。我知道这本身就可以正常工作,但我需要能够根据应创建的不同元素数量来动态扩展父框架上的图形。

我看过这里:https://puredata.info/docs/tutorials/TipsAndTricks#undocumented-pd-internal-messages 但众所周知,这是没有记录的,我想知道这些消息中有哪些是有效的并且是合适的...也许是 mycnv?

您正在寻找发送给子补丁

donecanvasdialog消息
donecanvasdialog  <xunit>  <yunits>  <gopmode>  <xfrom>  <yfrom>  <xto>  <yto>  <width>  <height>  <xoffset>  <yoffset> 1

通常您会保留大多数元素的默认值,只更改 widthheight:

donecanvasdialog  0  0  1  0  -1  1  1     100  100 1

要自己找出这些东西,你总是可以运行 Pd在debug模式下拦截Pd <-> Pd-Gui通信,看看Pd内部是怎么做的(2 显示 GUI->Pd 消息,1 如何显示 Pd->GUI 消息):

$ pd -nrt -d 2

当然,所有这些都需要免责声明:这些消息是内部消息。 not 承诺此消息将在下一个错误修复版本中起作用。 (与刻在 Pd 补丁格式中的对象创建消息不同,这些消息只出现在 运行ning Pd 中,因此确实被认为是私有的,并且可以在需要时更改)