This is an extension and not part of the main GoJS library.
Note that the API for this class may change at any time.
If you intend to use an extension in production, you should copy the code to your own source directory.
Extensions can be found in the GoJS kit under the extensions
or extensionsTS
folders.
See the Extensions intro page for more information.
Constructs a SerpentineLayout and sets the isViewportSized property to true.
Gets or sets the Size whose width specifies the horizontal space between nodes and whose height specifies the minimum vertical space between nodes.
The default value is 30x30.
Gets or sets the total width of the layout.
The default value is NaN, which for Diagram.layouts means that it uses the Diagram.viewportBounds.
Copies properties to a cloned Layout.
A custom Layout that lays out a chain of nodes in a snake-like fashion.
This layout assumes the graph is a chain of Nodes, positioning nodes in horizontal rows back and forth, alternating between left-to-right and right-to-left within the wrap limit. spacing controls the distance between nodes.
When this layout is the Diagram.layout, it is automatically invalidated when the viewport changes size.
If you want to experiment with this extension, try the Serpentine Layout sample.