Objects, Operators, And Node Graph

  • SEQUOIA provides Objects, Operators, and Animation nodes that can be connected in a network to load, process and export data.

Objects In SEQUOIA

  • Data Loading and Processing in SEQUOIA is performed by various specialized types of Objects.
  • Objects are entities that have a visual representation in the SEQIOIA Viewport.
  • An Object provides
    • A set of data Inputs and/or Outputs.
    • A particular set of Functions (for example, loading data from disk, filtering data, generating geometry from point data etc.),
    • A set of Properties that control how the processing is performed,
    • World Space Transforms - Position, Rotation and Scale properties defining the location, orientation and size of the Object in the World Coordinate System of the Document.
    • A visual representation in the Viewport (icon, gizmo, point cloud, mesh)
Object Type Function Data Inputs Data Outputs Properties
Point Loader Read Point Data From Disk none (disk file) one, point data File To Load
Point Region Of Interest Filter Point Data multiple, point data one, point data Gizmo Corners, Enable, Invert
Mesher Mesh Point Data multiple, point data none Radius, Spacing, Mode, Mode-specific settings
User Coordinate System Define User Coordinate System none none none
Mesh Loader Load Mesh Data From Disk none (disk files) none File To Load, Partition Loading Options
Surface Points Create Points On Mesh Surfaces multiple, meshes one, point data Count/Spacing, Random Seed
Image Projection Project Images none (image files) multiple marker positions none Files To Project, Projection Settings, Blending and Occlusion, Alignment Settings...
Marker Define Position In Space none none none
Camera Control View Animation none none none

Operators In SEQUOIA

  • Operators are nodes that are connected to an Object to modify its data.
  • Operators do not have a Viewport representation.
  • Operators appear as sub-components of the Object in the Document Explorer.
  • See details of Point and Mesh operators.

Animation Nodes In SEQUOIA

  • Animation nodes provide values that are changing over time.
  • Animation nodes are optional - if not provided, a static Transform value will be used.
  • Currently SEQUOIA only implements Transform animations - one or more Animation nodes can be assigned to any Object.
  • Both procedural and keyframed Animation nodes are supported.

The SEQUOIA Node Graph

  • Objects, Operators and Animation nodes can be connected in a network (a.k.a. a Node Graph) to exchange and process data.

[B] For example,

  • A Point Loader is set to load a specific point data file from disk.
  • A Point Region Of Interest is connected to the Point Loader and is set up to filter only the points in a specific region of space.
  • A Mesher is connected to the Point Region Of Interest and is set up to get that data and convert it to geometry using a particular method.
  • A Mesh Refuction Operator is connected to the Mesher implicitly at creation time and can reduce the number of polygons once the Mesher has finished generating geometry.
  • The Node Graph allows SEQUOIA to understand and track the dependencies between Objects and ensure all data is up to date when needed.

[B] For example,

  • When a Mesher is updated, it will ensure that all Objects it depends on (Objects on its Point Sources list that have their Outputs connected to its Input) are also updated.
  • SEQUOIA maintains and processes the Node Graph under the hood, but currently does not expose any dedicated tools to view or edit it beyond what is accessible through the Source Lists of some Object types in the Object Properties panel.