2008/11/3

2.7.1.抽象物

製造一個抽象物件,使用一個命名如"abstraction1.pd"的已儲存patch,然後引用它作為"abstraction1"在一個物件盒子:

在這裡我們引用一個單獨的檔案"abstraction1.pd",持有patch在這裡顯示(邊界是和上面的subpatch相同) :

你可以創造很多"abstraction1"的實例或從幾個不同的patches引用它,和改變"abstraction1"的內容,將影響到所有引用它,因為他們被創造的。一個從"c"編程語言比喻,one-off subpatches就像方括號內的程式碼,程式碼和抽象物就像是子程序。

抽象物是實例通過鍵入patch的名稱(減號".pd"擴充)到一個物件盒子。您也可以鍵入參數;例如,如果你有一個檔案:"my-abstraction.pd"你可以鍵入"my-abstraction 5"設置變數$1 to 5。這是定義只為在抽象物的物件盒子(不是訊息)(針對物件盒子,"$1"等,如上文所述有不同的意義,)如果你想發出一個$1訊息在一個抽象物的創造參數效益,您必須產生它與一個物件盒子例如"float $1""symbol $1",或者也許"pack $1 $2",這可能然後發送到一個物件盒子。

MAX的相應功能,(both Opcode and Ircam)是"#1"建構。在Max抽象物,"#1"等,被創造參數所取代。這已是不利於您不能編輯抽象物作為實例在patch,自從"#"變數被取代。在Pd,物件盒子中的"$"變數從字面上來看拼寫"$"變數,以便它是有意義的被編輯他們從他們的要求的patch。在Pd的一面,但是,有不利的,它的混亂,有"$"擴大在不同的時間在一個物件盒子比在一個訊息盒子多。在一個物件盒子,"$"的參數是擴充在創建時間,並在一個訊息物件,在訊息的時間。

沒有留言: