# Node struct

Namespace: [Grasshopper2.Types.Graphs](https://developer.rhino3d.com/api/gh2/namespace/grasshopper2.types.graphs.md) · Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

```cs
public readonly struct Node : IEquatable<Node>
```

A node in a graph.

## Constructors

- [Node](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.graphs.node/ctor.md): (2 overloads) Create a new node with attributes.

## Properties

- [Attributes](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.graphs.node/attributes.md): Gets the index of the attributes of this node, or -1 if the node has no attributes.
- [Location](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.graphs.node/location.md): Gets the location of this node.

## Methods

- [Equals](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.graphs.node/equals.md): (2 overloads)
- [GetHashCode](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.graphs.node/gethashcode.md)
- [ToString](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.graphs.node/tostring.md)
- [Transform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.graphs.node/transform.md): (2 overloads) Apply a transformation to this node.
- [WithAttributes](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.graphs.node/withattributes.md): Associate this node with a different set of attributes.
- [WithLocation](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.graphs.node/withlocation.md): Move this node to a new location.
