STL 뷰어를 만드는데 클래스 접근 문제가 생겼습니다.
동적 할당을 한 클래스의 내부 접근에 대한 질문 입니다.
class solid
{
public:
float vector_i,vector_j,vector_k;
float vertex1_x,vertex1_y,vertex1_z;
float vertex2_x,vertex2_y,vertex2_z;
float vertex3_x,vertex3_y,vertex3_z;
friend render;
};
solid 라는 클래스가 있습니다. 이 클래스는 render 이라는 클래스를 프랜드 했고요
위 클래스는
solid *sol = new solid[last];
위의 방식으로 동적 배열 되었습니다. 위의 클래스는 sol[0]~sol[last-1] 까지 객체가 생성 되었습니다.
fin>>buf>>sol[i].vertex1_x>>sol[i].vertex1_y>>sol[i].vertex1_z; for 문에서 이런식으로 값을 넣어줄 수 있고요
문제는
class render
{
public:
void SetupRC();
void RenderScene(int end);
static GLfloat ambientLight[]={0.1f,0.1f,0.1f,1.0f};
static GLfloat diffuseLight[]={0.4f,0.4f,0.4f,1.0f};
};
이 render 이라는 객체에서 접근 하는데 발생합니다.
solid 라는 객체는 물체의 표면 좌표값을 저장한 sol[0]~sol[last-1] 로 구성이 되어있고
이 render 이라는 객체는 sol 객체의 좌표값을 읽어서 모델을 랜더링 하는 클래스 입니다.
void render::RenderScene(int end)
{
glClear(GL_COLOR_BUFFER_BIT);
glViewport(0,0,700,700);
glColor3f(0.75f,0.75f,0.75f);
glBegin(GL_TRIANGLES);
for(int i=0; i<end; i++);
{
glNormal3f(sol 여기서부터 잘 모르겠습니다;
}
RenderScene 함수를 정의하려 하는데 sol 에서 좌표값을 읽기위해 접근을 해야하는데...
동적할당으로 생성된 solid 클래스의 객체 sol에 각각 접근하는 방법을 모르겠습니다.
쉽게 설명해서 void RenderScene(int end) 함수에선 sol[0].vector_i 등등 수많은 solid 클래스의 sol 객체 데이터를 사용해야 하는데....
sol 객체가 동적 할당 되어 있는데(0번 객체부터 4만개쯤 객체가 할당되요 폴리곤이라;;) 접근하는 방법을 모르겠습니다.
간단하게 해결할 수 있을꺼라 생각되는데.... 알려주시면 감사하겠습니다.