점근선을 이용한 결합

점근선을 이용한 결합

다음 이미지와 같이 원통형 커넥터를 사용하여 두 가지 색상으로 결합을 그려 보았습니다.

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

그래서 다음 코드를 만들었지만 연결 실린더에서 이중 색상을 얻는 방법을 모르겠습니다.

\documentclass{standalone}
\usepackage{asymptote}
\begin{document}
\begin{asy}
import three;
settings.render=8;
settings.prc=false;
size(300);

currentprojection=perspective((45,45,30));

material sphereHfcolor = material(diffusepen=royalblue, gray(0.05), specularpen=white);
material sphereGecolor = material(diffusepen=red, gray(0.05), specularpen=white);
material cylcolor = material(diffusepen=white, black);

real cylRadius = 0.2;
real HfRadius = 0.65;
real GeRadius = 0.55;

void drawRod(triple a, triple b) {
  surface rod = extrude(scale(cylRadius)*unitcircle, axis=length(b-a)*Z);
  triple orthovector = cross(Z, b-a);
  if (length(orthovector) > .01) {
    real angle = aCos(dot(Z, b-a) / length(b-a));
    rod = rotate(angle, orthovector) * rod;
  }
  draw(shift(a)*rod, surfacepen=cylcolor);
}

void drawHf(triple center) {
     draw(shift(center)*scale3(HfRadius)*unitsphere, surfacepen=sphereHfcolor);
}

void drawGe(triple center) {
     draw(shift(center)*scale3(GeRadius)*unitsphere, surfacepen=sphereGecolor);
}
triple Cd = 2X+1.15Y+14.74Z;
triple Fb = 4X+12.75Z;
drawRod(Fb,Cd);
drawHf(Cd);
drawGe(Fb);
\end{asy}
\end{document}

관련 정보