# `GSLayer dividePathAtNode:`

*Instance Method*

Opens or divides the path at a node.

## Declaration

```swift
func dividePath(at node: GSNode) -> GSNode?
```

```objc
- (GSNode *) dividePathAtNode:(GSNode *) node;
```

```python
dividePathAtNode_(node: GSNode) -> GSNode
```

## Return Value

The node preceding the new opening, or `nil` when the node cannot be processed.

## Discussion

A closed path is opened at the node. An open path is divided into two paths with a copy of the node at the new opening.

## See Also

### Connecting Paths

- [`GSLayer connectPathsWithNode:andNode:`](/Core/GlyphsCore/GSLayer/connectPathsWithNode:andNode:) — Connects two path endpoints.
- [`GSLayer connectPathsWithNode:andNode:extendPath:`](/Core/GlyphsCore/GSLayer/connectPathsWithNode:andNode:extendPath:) — Connects two path endpoints and optionally adjusts their adjacent segments.
- [`GSLayer reconnectNodesAtNode1:node2:offset:`](/Core/GlyphsCore/GSLayer/reconnectNodesAtNode1:node2:offset:) — Divides paths at two on-curve nodes and reconnects the resulting endpoints crosswise.
- [`GSLayer reconnectNodes:`](/Core/GlyphsCore/GSLayer/reconnectNodes:) — Reconnects four on-curve nodes according to their tangent directions.
- [`GSLayer connectAllOpenPaths`](/Core/GlyphsCore/GSLayer/connectAllOpenPaths) — Connects coincident endpoints of open paths.
- [`GSLayer closeOpenPaths:`](/Core/GlyphsCore/GSLayer/closeOpenPaths:) — Connects the nearest endpoints of a collection of open paths.

