다음과 같이 음영 처리하고 싶습니다.
그러나 아래 코드는 다음과 같이 예상치 못한 결과를 생성합니다.
\documentclass[pstricks,border=12pt,12pt]{standalone}
\usepackage{pst-eucl}
\begin{document}
\begin{pspicture}[dimen=m](-1,-1)(11,11)
\pstGeonode[PosAngle={-135,-45,45,135,180,90}]
(0,0){A}
(10,0){B}
(10,10){C}
(0,10){D}
(0,5){M}
(5,10){N}
\psframe(10,10)
\psarcn(A){10}{90}{0}
\psarcn(M){5}{90}{-90}
\psarcn(N){5}{0}{180}
\pstInterCC[RadiusA=\pstDistVal{10},RadiusB=\pstDistVal{5}]{A}{}{N}{}{P1}{P2}
\pstInterCC[RadiusA=\pstDistVal{5},RadiusB=\pstDistVal{5}]{M}{}{N}{}{P3}{P4}
\pscustom[fillstyle=solid,fillcolor=gray]
{
\psarcn[origin=M](M){5}{(D)}{(P4)}
\psarc[origin=N](N){5}{(P4)}{(P2)}
\psarc[origin=O](O){10}{(P2)}{(D)}
\closepath
}
\end{pspicture}
\end{document}
질문
범인을 찾을 수 없겠죠?
답변1
사용자 정의 곡선에는 pst-eucl 구문을 사용하십시오. 아마도 근사치 오류로 인해 반원을 두 번 그려야 했습니다.
\documentclass[pstricks, svgnames, border=12pt,12pt]{standalone}
\usepackage{pst-eucl}
\begin{document}
\begin{pspicture}[dimen=m](-1,-1)(11,11)
\pstGeonode[PosAngle={-135,-45,45,135,180,90}]
(0,0){A}
(10,0){B}
(10,10){C}
(0,10){D}
(0,5){M}
(5,10){N}
\psframe(10,10)
\psarcn(A){10}{90}{0}
\psarcn(M){5}{90}{-90}
\psarcn(N){5}{0}{180}
\pstInterCC[RadiusA=\pstDistVal{10},RadiusB=\pstDistVal{5}]{A}{}{N}{}{D}{P2}%D = P1
\pstInterCC[RadiusA=\pstDistVal{5},RadiusB=\pstDistVal{5}]{M}{}{N}{}{D}{P4}% D = P3
\pscustom[fillstyle=solid,fillcolor=Silver!40!Lavender, linestyle=none]
{
\pstArcnOAB{M}{D}{P4}
\pstArcOAB{N}{P4}{P2}
\pstArcOAB{A}{P2}{D}
\closepath
}
\psarcn(A){10}{90}{0}
\psarcn(M){5}{90}{-90}
\psarcn(N){5}{0}{180}
\end{pspicture}
\end{document}