I am trying to create two lines that are tied at a certain point (sprite) and rotate, forming a 30-degree angle between them. Below is the image I want to achieve.

This is what I have done so far:
extension Int { var degreesToRadians: Double { return Double(self) * .pi / 180 } } extension FloatingPoint { var degreesToRadians: Self { return self * .pi / 180 } var radiansToDegrees: Self { return self * 180 / .pi } } class GameScene: SKScene, SKPhysicsContactDelegate { var anchorSprite = SKSpriteNode(imageNamed: "anchorSprite") var armLeft = SKSpriteNode(imageNamed: "lineSprite") var armRight = SKSpriteNode(imageNamed: "lineSprite") override func didMove(to view: SKView) { self.physicsWorld.gravity = CGVector(dx: 0, dy: -1.8) self.physicsWorld.contactDelegate = self var tealBg = SKSpriteNode(imageNamed: "tealBg") tealBg.position = CGPoint(x: frame.midX, y: frame.midY) tealBg.zPosition = 10 addChild(tealBg) anchorSprite.position = CGPoint(x: frame.midX, y: frame.midY + frame.midY/2) anchorSprite.zPosition = 20 anchorSprite.physicsBody = SKPhysicsBody(rectangleOf: anchorSprite.frame.size) anchorSprite.physicsBody?.categoryBitMask = pinCategory anchorSprite.physicsBody?.isDynamic = false addChild(anchorSprite) armRight.anchorPoint = CGPoint(x: 0.5, y: 1) armRight.position = anchorSprite.position armRight.zPosition = 20 armRight.physicsBody = SKPhysicsBody(rectangleOf: armRight.frame.size) armRight.zRotation = CGFloat(Double(15).degreesToRadians)
Below is the image from the code above (they are close to each other).

How can I make sure that the lines are always at a distance from each other and support them even when turning?
source share