有一些问题,这个for循环可以绘制同一个对象的多个数字,
for (int i = BALL_RED_START; i<BALL_RED_END;i++)
{
glColor3f(1,0,0);
Redball[i].Draw();
}
Redball正在从一个单独的类中调用,
I get error:2228, left of .Draw must have class/struct/union.
Redball在Main.cpp的顶部定义
Ball Redball;
Ball.cpp:
include "Ball.h"
include "Vector2f.h"
include "Vector3f.h"
include "Glut/glut.h"
include "GL/gl.h"
include "GL/glu.h"
Ball::Ball(void)
{
Vector3f Temp_position;
position = Temp_position;
Vector3f Temp_velocity;
velocity = Temp_velocity;
}
Ball::~Ball(void)
{
}
void Ball::SetPos(Vector3f New_position)
{
position = New_position;
}
void Ball::Draw()
{
glPushMatrix();
glTranslatef(position.X(), position.Y(), position.Z());
glColor3d(1, 0, 0);
glutSolidSphere(0.3, 50, 50);
glPopMatrix();
}
void Ball::SetVel(Vector3f New_velocity)
{
velocity = New_velocity;
}
Vector3f Ball::GetPos()
{
Vector3f temp;
temp = position;
return temp;
}
试图画出其中的8个球。
答案 0 :(得分:3)
也许你需要这个
Redball[i]->Draw();
但是没有办法告诉
从你给我们的代码
答案 1 :(得分:2)
该错误意味着。访问器用于实际数据。结构类或uninons在这种情况下,你有一个指向你的类而不是实例的指针。
试试看是否适用于你。
Redball[i]->Draw()