# `GSHobbyKnob`

*Class*

## Declaration

```swift
class GSHobbyKnob
```

```objc
@interface GSHobbyKnob : NSObject
```

```python
class GSHobbyKnob(NSObject)
```

## Topics

### Instance Properties

- [`GSHobbyKnob.info`](/Core/GlyphsCore/GSHobbyKnob/info)
- [`GSHobbyKnob.knot`](/Core/GlyphsCore/GSHobbyKnob/knot)
- [`GSHobbyKnob.parent`](/Core/GlyphsCore/GSHobbyKnob/parent)
- [`GSHobbyKnob.type`](/Core/GlyphsCore/GSHobbyKnob/type)
- [`GSHobbyKnob.virtualPosition`](/Core/GlyphsCore/GSHobbyKnob/virtualPosition) — The virtual position may be different to the visual `position` if the two handles of a Hobby knot have a different angle or tension. Use `position` for mouse pointer interactions and `virtualPosition` for node–knob distance calculations.

### Instance Methods

- [`GSHobbyKnob initWithType:forKnot:atPosition:virtualPosition:withInfo:inParent:`](/Core/GlyphsCore/GSHobbyKnob/initWithType:forKnot:atPosition:virtualPosition:withInfo:inParent:)

## Relationships

### Inherits From

- `NSObject`

### Conforms To

- [`GSSelectableElementProtocol`](/Core/GlyphsCore/GSSelectableElementProtocol)

