processing으로 원자의 모델을 움직이고 싶다 입체의 겹치는 방법이 이상하다
7129 단어 processing원자 모델애니메이션
↑
이런 느낌을 전자를 움직여 보여주고 싶다고 생각했다.
float t =0;
void setup() {
size(500,500,P3D);
noStroke();
lights();
}
void draw() {
fill(255,50);
rect(0,0,width,height);//backgroundではなく不透明のrectでリフレッシュすることで残像をつける
fill(153);
translate(width/2,height/2,0);
sphere(25);//原子核
fill(255,0,0,10);//k殻原子領域の色
sphere(100);//原子領域を示す透明
fill(0,255,0,10);//l殻の領域の色
//sphere(150);
fill(0,0,255,255);//電子を示す色
pushMatrix();//電子の回転用
pushMatrix();
rotateZ(t+5);//z軸で回す
translate(100,0,0);//z軸で回す
sphere(10);//電子
popMatrix();
pushMatrix();
rotateX(t+4);//x軸で回す
translate(0,0,100);//x軸で回す
sphere(10);//電子
popMatrix();
pushMatrix();
rotateY(t+2);//y軸で回す
translate(100,0,0);
sphere(10);//電子
popMatrix();
pushMatrix();
rotateX(TWO_PI/8);
rotateY(t);//斜め軸で回す
translate(100,0,0);
sphere(10);//電子
popMatrix();
popMatrix();//電子の回転終わり
t=t+TWO_PI/(60*3);
}
이제 실행해 보면
전자가 뒤에 돌 때, 왠지 사라진다.
원자의 부분은 적색으로 투명도를 설정하고 있는데 이상하다.
h tp : // / r r- 사쿠라가 오카. bgs포 t. m/2011/11/p3d. HTML
조사해 보면 위 사이트에
processing : P3D 모드의 긴장감
라고 하는 것으로 기술되고 있었다. P3D라면 어쩔 수 없는 것 같다
setup() 부분에
hint(ENABLE_DEPTH_SORT); // ←追加
추가하는 것이 좋습니다.
드로잉 방식을 기본 Z 버퍼링에서 화가 알고리즘으로 변경할 수있는 것 같습니다.
그렇다면
잘 갔다.
Reference
이 문제에 관하여(processing으로 원자의 모델을 움직이고 싶다 입체의 겹치는 방법이 이상하다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hyoutann/items/f018705e4cfab4e4f459텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)