공간에서 주어진 위치 (x, y, z)를 가진 벡터로 정의 된 두 개의 유사한 점 구름이 있으며 두 구름을 동시에 렌더링하고 두 점 간의 차이를 평가하고자합니다. . 이것은 OpenGL을 사용하는 첫 번째 응용 프로그램이므로 아직 사용하지 않고 있습니다.OpenGL의 두 점 구름 사이의 교차점 그리기
그러나glBegin(GL_POINTS);GLfloat green[] = { 0.f, 1.0f, .0f, alpha[1]/10 };
glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, green);
glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, low_shininess);
//glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular);
for (std::vector<Point3D>::iterator moit = morig_cloud.begin(); moit != morig_cloud.end(); ++moit){
if ((moit - f_cloud.begin()) % (ptd[1]) == 0){
glVertex3f(moit->x, moit->y, moit->z);
}
}
glEnd();
I 모두 중첩되면, 결과적인 이미지는 다음과 같다 :
어디에
I 같은 별도로 각 벡터를 처리하여 양자를 렌더링하는 처리했다 빨간색과 파란색 구름은 모두 완벽하게 일치해야합니다. 포인트를 "병합"할 수있는 방법이 있습니까? 즉, 점 위치가 일치하는 것을 고려하여 일치하는 위치의 색상을 변경할 수 있습니까? 렌더링은 메쉬가없는 점을 사용하여 수행됩니다.
렌더링하기 전에 두 벡터를 비교해 보았지만 알고리즘이 너무 느려졌는데 점 구름이 너무 큽니다.
현재로서는 내가 사용했던 답변이므로 정확한 답변으로 표시하고 있습니다. 둘 다 그래 보인다. – Ishida