view Renderer/test_render/polygon.h @ 283:55ea4465b1a2

fix test_render
author e065746@localhost.localdomain
date Fri, 05 Jun 2009 16:49:12 +0900
parents
children
line wrap: on
line source

#ifndef INCLUDED_POLYGON
#define INCLUDED_POLYGON

#ifndef INCLUDED_VIEWER
#  include "viewer.h"
#endif

#include <libxml/parser.h>

#ifndef INCLUDED_POLYGON_PACK
#  include "polygon_pack.h"
#endif

#ifndef INCLUDED_SPAN_PACK
#  include "SpanPack.h"
#endif

#ifndef INCLUDED_TEXTURE
#  include "texture.h"
#endif

class Polygon {
public:
    long long size;
    const char *name;
    const char *parent_name;

    //float *data;    //"vertex" and "normal" and "texture"
    float *coord_xyz; // vertex coordinate array
    float *coord_tex; // texture coordinate array
    float *normal;    // normal vector array
    float xyz[4];     // position
    float angle[4];   // angle
    float c_xyz[4];   // center of rotation
    float matrix[16];
    float *anim;
    int texture_id; //texture id number
    struct texture_list texture_info;
    
    static SDL_Surface* texture_image; // pointer of this surface's texture

    Polygon(void);

    void parameter_change(char *name, float x, float y, float z, float ax, float ay, float az);
    //void load_texture(char *image_name);
    //void draw(float *stack);
    //void draw(SceneGraphPack *sgp);
    //void draw(PolygonPack *pp);
    //void draw(SpanPack *sp);
    Uint32 get_rgb(int tx, int ty);

public:
    void position_init(void);

    void tree_draw();
    void pickup_coordinate(char *cont);
    void pickup_normal(char *cont);
    void pickup_model(char *cont);
    void pickup_texture(char *cont);
};

#endif