나는 다음과 같은 PathPoints 및 PathTypes 배열이GraphicsPath PathPoints 및 PathTypes 배열에서 호의 끝점을 결정하는 방법은 무엇입니까? (: X, Y, 유형 형식) :
-177.477900, 11021.670000, 1
-614.447200, 11091.820000, 3
-1039.798000, 10842.280000, 3
-1191.761000, 10426.620000, 3
-1591.569000, 10493.590000, 3
-1969.963000, 10223.770000, 3
-2036.929000, 9823.960000, 3
-2055.820000, 9711.180000, 3
-2048.098000, 9595.546000, 3
-2014.380000, 9486.278000, 3
다음
이 GraphicsPath 물리적 모습입니다. 2 아크는 매우 구별됩니다. alt text http://i45.tinypic.com/2agj1gl.jpg
이 GraphicsPath.PathData 배열은 2 개의 AddArc 명령에 의해 생성 된 것으로 알고 있습니다. 디버거에서 코드를 살펴보면 처음 4 개의 PathData 값이 첫 번째 AddArc 명령에 의해 추가되고 나머지 6 개 점이 두 번째 AddArc 명령에 의해 추가 된 것을 보았습니다.
원시 경로/경로 유형 배열을 조사하여 (2 개의 AddArc 명령임을 알지 못했기 때문에 2 개의 시작점과 끝 점이 있음을 알 수 있음) 각 호의 시작점과 끝점을 결정하고 싶습니다.
배열의 점을 '다시 만들려면'여러 베 지어 계산을 시도했지만 별도의 시작점과 끝점을 결정하는 방법을 결정할 때는 손실이됩니다. GDI +는 호들 사이의 시작점/끝점 (같은 점과 호가 연결되어 있음)을 결합하는 것처럼 보입니다. 그리고 한 호가 끝나고 다른 호가 시작된다는 사실을 잃어 가고 있습니다.
아이디어가 있으십니까?
경로를 만들 때 실제로 마커를 추가 할 수있는 한 도움이 될 수 있습니다. 하지만 항상 가능한 것은 아닙니다. 더 잘 이해하려면 [이 답변] (http://stackoverflow.com/questions/1790862/how-to-determine-endpoints-of-arcs-in-graphicspath-pathpoints-and-pathtypes-arra/17339215#17339215)을보십시오. 'GraphicsPath'가 내부적으로 어떻게 구성되어 있는지를 보여줍니다. – SiliconMind