Main Page   Class Hierarchy   Compound List   Header Files   Compound Members  

ddgecos.h

This is the verbatim text of the ddgecos.h include file.
/*
    Copyright (C) 1997, 1998, 1999, 2000 by Alex Pfaffe
        (Digital Dawn Graphics Inc)
  
    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Library General Public
    License as published by the Free Software Foundation; either
    version 2 of the License, or (at your option) any later version.
  
    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    Library General Public License for more details.
  
    You should have received a copy of the GNU Library General Public
    License along with this library; if not, write to the Free
    Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef _ddgEcoSystem_Class_
#define _ddgEcoSystem_Class_
#include "math/ddgvec.h"
#include "math/ddgchull.h"

class ddgImage;
class ddgTBinMesh;
class ddgCHull3;
class ddgPlane3;
class ddgEcoBlock;
class ddgBBox3;
class WEXP ddgEcoSystem {
        friend class ddgEcoBlock;
        unsigned int _size;
        ddgTBinMesh     *_mesh;
        ddgImage        *_ecoMap;
        ddgVector3      *_pos;
        ddgBBox3        *_bbox;
        ddgVector3      _osize;
        unsigned char   _min;
        unsigned char   _max;
        float                   _farClip;
        float                   _farClipSQ;
public:
        ddgEcoBlock             **ecoBlocks;
        unsigned int    blockNum;
        ddgEcoSystem( unsigned int s, ddgTBinMesh *m,
                ddgBBox3  *b, ddgVector3 *o,
                ddgImage *e = NULL, unsigned char min = 0, unsigned char max = 255,
                float f = 100)
                : ecoBlocks(0), blockNum(0), _size(s), _mesh(m), _bbox(b), _osize(o), _ecoMap(e), _min(min), _max(max), _farClip(f), _farClipSQ(f*f) {}
        ~ddgEcoSystem(void);
        bool init(void);
};
class WEXP ddgEcoBlock {
        ddgInside       _vis;
        unsigned int _size;
        ddgEcoSystem    *_es;
public:
        ddgBBox3                *bbox;
        ddgVector3      *pos;
        ddgEcoBlock( ddgEcoSystem *es, unsigned int s, ddgBBox3  *b)
                :  _es(es), _size(s), bbox(b) {}
        bool init( ddgEcoSystem *e);
        ddgInside vis( ddgCHull3 *frustrum, ddgVector2 pos );
        ddgInside vis( void ) { return _vis; }
        unsigned int size(void) { return _size; }
        ddgVector3 osize(void) { return _es->_osize; }
};

#endif

Generated at Sun Sep 17 19:27:52 2000 for Digital Dawn Graphics Toolkit by doxygen 0.49-991205 written by Dimitri van Heesch, © 1997-1999