Packages

Packages

You may find in your networks groups of appearances that combine to perform a single function. You can take one of these groups and present it as a single appearance by creating a Package.

Packages serve many purposes. They make your network simpler, which may make its graph easier to navigate. They serve to compartmentalize your network into larger chunks of functionality. They also provide a way to share pieces of your network with others without these users having to understand the complexities inside.

Creating a Package

To create a new Package, simply select the appearances that should be in the package, and:

Appearance -> Package

This will create a new Package node that includes the appearances you've selected. Below is a network before and after the creation of a package:

images/package-before.jpg images/package-after.jpg

Package Parameters

Here is how the package created above appears in the Appearance View:

images/package-parameters.jpg

Package parameters are created for one of two reasons:

  • Any connection to an appearance outside of the package (e.g. the connection to the "ST" appearance, not included in the package) will cause a package parameter to be created.
  • Any external parameters of packaged appearances will become external parametes in the package.

You can edit the presentation of these parameters by editing its interface:

Appearance -> Edit Package UI

This will place the Appearance Editor in a mode where parameters can be rearranged using drag and drop. When you're done rearranging:

Appearance -> Done Editing Package UI

In addition, any unconnected parameter can be "internalized" back into the package via the Property Menu.

Packages and Multiple 出力

You may have noted in the examples above that the selection of appearances contained in the package actually had two different outputs: one for the LabelOpacity and one for the Labelカラー. The resulting package also has two outputs. When working with packages like these, you will have to be explicit about which output you wish to connect, preview, and so forth.

Package Contents

A Package will usually be displayed as a single appearance. You can, however, see its inner-workings by revealing its contents:

Appearance -> Show Package Contents

This will display the network of appearances that combine to form the Package.

images/package-contents.jpg

In the above package, you should recognize the original appearances. In addition to these are two special nodes called Package Terminals. These nodes indicate how values flow into and out of your Package. The Input terminal has outputs for each of the Package's parameters shown above. The Output terminal has inputs for each of the Package's outputs.

These terminals allow you to change the "wiring" of the Package without affecting any appearances that connect to it.

To close a package back up:

Palette -> Close Package

Unpackaging

Should you change your mind about the creation of a package, it can always be undone:

Appearance -> Unpackage

This command will connect out-of-package appearances back to the packaged appearances and delete the Package and its terminals.

Note: Other than recreating the package, this command can not be undone. Please use it with caution!