Defining outputs
For each set of input values used to solve a ShapeDiver model, the system sends back outputs corresponding to the computed solution. These outputs come in different natures according to the sections below.
Pure visualization geometry
Geometry corresponding to the computed solution is returned as one of several glTF files which can be visualized directly in the ShapeDiver viewer (using the online platform or embedding the viewer using iframes or the viewer API). These geometry assets are included as outputs for all components which have their preview turned on in Grasshopper. Native Grasshopper components will return the geometry using a standard default material, while using the ShapeDiver Display components allows the definition of PBR materials for high-quality rendering in the viewer.
Read more about displaying geometry in the Display section of the plugin documentation.
Enriched geometry and data
For some applications, it is useful to attach additional information to the geometry and data generated along the solutions of a definition. For this purpose, the ShapeDiver plugin provides a native attribute system, that can be used along the ShapeDiver Output component to output enriched structured data.
At the moment, the following ShapeDiver functionalities depend on using attributes and the ShapeDiver Output component to create structured data.
Attribute visualization
The attribute visualization feature from the online viewer and platform rely on custom attributes stored in geometry displayed using the ShapeDiver Output component. Read here how to setup a model for attribute visualization.
Layers
Using the layer feature of the online viewer and platform by storing layer
attributes. Read more about this feature here.
Desktop clients
The geometry sent to a ShapeDiver Output component is available to be baked into a variety of desktop clients, as long as the data type is compatible with the active desktop client (for example, meshes can be baked in Rhino but not in Adobe Illustrator).
Read here how to define outputs that can be baked in desktop clients.
Read here how to enable a desktop client in the platform and send data to it from the ShapeDiver platform through outputs defined using the ShapeDiver Output component.
API
Read attributes stored in output elements using the various ShapeDiver APIs. See some examples using the viewer API here.
Text tags
Both 2D and 3D text tags are supported by ShapeDiver. Use the “Text Tag” and “Text Tag 3D” components in Grasshopper to generate outputs that can be accessed through the APIs and displayed in the ShapeDiver online viewer.
In the viewer, 2D text tags are converted to HTML elements associated with a position in the 3D scene, while 3D text tags are meshes generated directly by the online viewer and added to the scene.
Plain data
The ShapeDiver plugin includes a Direct Data Output component which supports virtually any data type in Grasshopper. This data is available to be explored in the platform and through APIs as well. It has proven crucial in many applications our users have developed around ShapeDiver models. See in particular the way developers can use JSON as a way to transfer data to and from ShapeDiver models as part of their applications.
File exports
The export components of the ShapeDiver plugin make it possible to build file assets from computed solutions, and expose them to the online platform (through a download button) and the APIs. Several file formats are available with many options, and object properties such as names, layers, colors, etc… can be controlled through the use of the attributes system.