레벨 생성기를 사용하여 SKSpriteNode를 만듭니다.SWIFT의 SKSpriteNode에서 CGPath를 만드는 방법
내가 정확히 CGPath를 사용하여 동일한 모양을 만들 필요가있다.
self.firstSquare = childNodeWithName("square") as! SKSpriteNode
var transform = CGAffineTransformMakeRotation(self.firstSquare.zRotation)
let rect = CGRect(origin: self.firstSquare.position, size: self.firstSquare.size)
let firstSquareCGPath:CGPath=CGPathCreateWithRect(rect, &transform)
print(self.firstSquare.position)
=> firstSquare 위치 (52.8359451293945, -52.9375076293945)
내 CGPath이 내가 원하는대로, 내 CGPath와 SKShapeNode을 만들어 생성되었는지 확인하려면 다음
let shape:SKShapeNode=SKShapeNode(path:path)
shape.fillColor = self.getRandomColor()
addChild(shape)
print(shape.position)
=> 모양 위치 (52.8359451293945, -52.9375076293945)
결과가 예상 한 것과 다릅니다. 내 CGPath이 잘못되면
그래서 나도 몰라, 또는 인 경우에 나는 초기 스프라이트 속성을 잃게 SKShapeNode에서 변환 할 때. 내가 그렇게해야하는 이유이해하려면, 편집 this stack
1, 2
를 참조하십시오 내가 추가 :
shape.position = self.firstSquare.position
내가 얻을 :
편집 3 : 나는 위의 내 설명을 업데이트
, 내 firstSquare의 앵커 포인트는 지금 (0.5, 0.5) 보통
작동하지 않는 것 같습니다. 제 편집을 참조하십시오. – cmii
내 편집 섹션보기 –
좋아요, 앵커 포인트를 (0.5, 0.5)로 설정하여 설명을 업데이트했습니다. 결과는 여전히 내가 필요한 것이 아닙니다. – cmii