# `GSComponent openBezierPath:`

*Instance Method*

Collects the transformed open paths while traversing a component hierarchy.

## Declaration

```swift
func openBezierPath(_ seenComponents: NSMutableSet) -> NSBezierPath?
```

```objc
- (NSBezierPath *) openBezierPath:(NSMutableSet *) seenComponents;
```

```python
openBezierPath_(seenComponents: set) -> NSBezierPath
```

## Parameters

- `seenComponents` — The base-glyph names currently being traversed.

## Return Value

The collected path, or `nil` when no component layer can be resolved.

## Discussion

Use [`GSComponent openBezierPath`](/Core/GlyphsCore/GSComponent/openBezierPath) unless sharing traversal state across components.

## See Also

### Representations

- [`GSComponent bezierPath`](/Core/GlyphsCore/GSComponent/bezierPath) — The transformed closed paths of the component layer and its nested components.
- [`GSComponent bezierPathIgnorePlaceholder:`](/Core/GlyphsCore/GSComponent/bezierPathIgnorePlaceholder:) — The transformed closed paths of the component layer and its nested components.
- [`GSComponent bezierPathIgnorePlaceholder:seen:hasPaths:`](/Core/GlyphsCore/GSComponent/bezierPathIgnorePlaceholder:seen:hasPaths:) — Collects the transformed closed paths while traversing a component hierarchy.
- [`GSComponent openBezierPath`](/Core/GlyphsCore/GSComponent/openBezierPath) — The transformed open paths of the component layer and its nested components.

