질문

질문
\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-solides3d}
\psset
{
    object=parallelepiped,
    lightsrc=20 60 60 rtp2xyz,
    Decran=30,
    solidmemory,
    grid=false,
    incolor=red,
}
\begin{document}
\multido{\i=0+30}{12}{%
\begin{pspicture}[viewpoint=20 \i\space 20 rtp2xyz](-7,-3)(7,8)
    \psSolid[fillcolor=red,a=2,b=0.75,c=1.5,name=H2](0,-0.375,0.75)
    \psSolid[fillcolor=red,a=2,b=4,c=0.5,name=H1](0,2,0.25)
    \psSolid[fillcolor=green,a=2,b=0.75,c=1.5,name=H3](0,-0.375,2.25)
    \psSolid[fillcolor=green,a=2,b=4,c=0.5,name=H4](0,2,2.75)
\end{pspicture}}
\end{document}

여기에 이미지 설명을 입력하세요

질문

회전하는 블록 3D 개체가 예기치 않게 이동되는 원인은 무엇입니까? 그리고 그것을 고치는 방법은 무엇입니까?

답변1

\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-solides3d}
\psset
{
    object=parallelepiped,
    lightsrc=viewpoint,
    Decran=30,
    solidmemory,
    grid=false,
    incolor=red,
}
\begin{document}
\multido{\i=0+30}{12}{%
\begin{pspicture}[viewpoint=20 \i\space 20 rtp2xyz](-7,-3)(7,8)
   \ifnum\i>180
        \psSolid[fillcolor=red,a=2,b=4,c=0.5,name=H1](0,2,0.25)
        \psSolid[fillcolor=red,a=2,b=0.75,c=1.5,name=H2](0,-0.375,0.75)
        \psSolid[fillcolor=green,a=2,b=4,c=0.5,name=H4](0,2,2.75)
        \psSolid[fillcolor=green,a=2,b=0.75,c=1.5,name=H3](0,-0.375,2.25)
   \else
        \psSolid[fillcolor=red,a=2,b=0.75,c=1.5,name=H2](0,-0.375,0.75)
        \psSolid[fillcolor=red,a=2,b=4,c=0.5,name=H1](0,2,0.25)
        \psSolid[fillcolor=green,a=2,b=0.75,c=1.5,name=H3](0,-0.375,2.25)
        \psSolid[fillcolor=green,a=2,b=4,c=0.5,name=H4](0,2,2.75)
   \fi
\end{pspicture}}
\end{document}

여기에 이미지 설명을 입력하세요

관련 정보