다른 UIView의 Subview로 가상 원의 테두리에 UIButton/UIView (빨간색 점)의 중심을 배치하고 싶습니다. 좌표계가 거꾸로 된 것을 의미합니다.UIView (반전 좌표계)에서 원의 Subview 중심 좌표 계산
어떻게 원에 빨간색 상자 센터의 CGPoint를 계산 않습니다. 여기에 ... 내가 가진 무엇
- (CGPoint) circleCenter의 X,
- (플로트) circleRadius는 r에 y를
- (플로트) angleAsRadian ⍺ 여기
내가 (감사를 시도하고 무엇 @rmaddy)
CGFloat buttonX = circleCenter.x + cos(angleAsRadian) * radius;
CGFloat buttonY = circleCenter.y - sin(angleAsRadian) * radius;
CGPoint buttonCenter = CGPointMake(buttonX, buttonY);
UIButton* buttonMarker = [[UIButton alloc]initWithFrame:CGRectMake(0,0, 20, 20)];
[buttonMarker addTarget:self action:@selector(showTitle:) forControlEvents:UIControlEventTouchUpInside];
[buttonMarker setBackgroundColor:[UIColor greenColor]];
[buttonMarker setCenter:buttonCenter];
[_view addSubview:buttonMarker];
... 현재 결과 :
,실제로 녹색 버튼이 분홍색 원 위에 위치 할 것으로 예상됩니다. 아직 거기에 있지 않습니다.
값 :
- 라디안 10.995574
- 라디안 12.042772
일반적으로 센터의 x와 y를 계산하는 방법을 알고 있습니까? 'UIView' y 좌표의 반전이 당신을 던지고있는 것입니까? 이것을 해결하기 위해 지금까지 한 일을 게시하십시오. – rmaddy
예, 언급 한 바와 같이 저는 원 중심 좌표, 반경 및 각도를가집니다. 내가 놓친 것은 역 좌표계를 고려한 원의 수학 부분이다. – Bernd
그러나 역 좌표계를 무시하고 수학을 수행하는 방법을 알고 있는지 묻는 중입니다. 그럴 경우 지금까지 시도한 것을 게시하십시오. 고칠 것이 무엇인지를 보여주는 것이 훨씬 쉬울 것입니다. – rmaddy