C++에서이 부풀어 호 (dxf 파서) 함수를 사용하는 데 문제가 있습니다. getArcDataFromBulge().이 DXF Bulge Arc 함수 사용 방법 getArcDataFromBulge()?
https://github.com/Embroidermodder/Embroidermodder/blob/master/libembroidery/geom-arc.c
나는 '시작 각도'이 getArcDataFromBulge() 함수에서 매개 변수 '각도를 청소'필요 내 drawArc() 함수가 있습니다. 내 drawArc() 함수는 오른쪽 0 각도 위치의 OpenGL 2D 좌표계를 사용하며 getArcDataFromBulge()에서 값을 가져 와서 다시 계산합니다 (0 + -, 180 + -, 360 + -). 결과. 그것은 시계 반대 방향의 시계처럼 보입니다. 그러나 나는 그렇지 않다고 생각합니다. 확실하지 않습니다. 무슨 일이 일어나고 있는지 몇가지 생각해 봤어? 예를 들어
:
tempBulge.bulge := 0.70;
arcMidAngle := RadToDeg(atan2(tempBulge.arcMidY - tempBulge.arcCenterY,
tempBulge.arcCenterX - tempBulge.arcMidX));
calculaton 후 : arcMidAngle = 179.999 내가 추가하고 내가 시작하고 얻을 아크 코드 각도의이 시점 반에서 빼 내 호의 끝 각도 : 90 °, 270 ° 하지만 일부 CAD 소프트웨어에서 dxf를 열 때 같은 호가 아니기 때문에 원점 도면과 반대입니다.
아마도 "음수, 양각, 방향 및 기타 원 재료"의 예와 DrawArc()에서 문제가있는 곳에서 질문을 확장 할 수 있습니다. 현재 의문점으로, 대부분의 사람들이 답변을하기에 충분한 정보가 없습니다. 그래도 더 좋은 질문을한다면, 그것은 바뀔 것입니다. –
예 AutoCAD, OpenGL 좌표계 및 역 Y- 도형 도면에 대한 내 가정을 확인하기 위해 확장합니다. – escape321
표시하려는 것은 (1) 사용중인 코드입니다. (2) 그것이 산출 한 결과. (3) 기대하고있는 결과 (또는 달성하고자하는 결과). 이 정보가 없으면 도움을 받기가 매우 어렵습니다. –