43 (*it)->AppendTouchingModels( v );
125 (*it)->DrawSolid(
false);
141 (*it)->DrawFootPrint();
176 glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
177 glEnable(GL_POLYGON_OFFSET_FILL);
178 glPolygonOffset(1.0, 1.0);
202 glDisable(GL_POLYGON_OFFSET_FILL);
204 glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );
205 glDepthMask(GL_FALSE);
231 glDepthMask(GL_TRUE);
232 glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
258 PRINT_DEBUG1(
"attempting to load bitmap \"%s\n", bitmapfile );
262 if( bitmapfile[0] ==
'/' )
266 char* workaround_const = strdup(wf->
filename.c_str());
267 full = std::string(
dirname(workaround_const)) +
"/" + bitmapfile;
268 free( workaround_const );
273 std::vector<rotrect_t> rects;
277 PRINT_ERR1(
"failed to load rects from image file \"%s\"",
286 Color col( 1.0, 0.0, 1.0, 1.0 );
290 std::vector<point_t> pts(4);
292 const double x = rect->pose.x;
293 const double y = rect->pose.y;
294 const double w = rect->size.x;
295 const double h = rect->size.y;
325 (*it)->Rasterize( data, width, height, cellwidth, cellheight );
virtual void PushColor(Color col)
Bounds local_z
z extent in local coords
double max
largest value in range, initially zero
The Stage library uses its own namespace.
void CallDisplayList(Model *mod)
void AppendBlock(Block *block)
void DrawSolid(bool topview)
void DrawFootPrint(const Geom &geom)
void InvalidateModelPointCache()
std::vector< point_t > pts
points defining a polygonx
char * dirname(char *path)
int rotrects_from_image_file(const std::string &filename, std::vector< rotrect_t > &rects)
void LoadBitmap(Model *mod, const std::string &bitmapfile, Worldfile *wf)
void LoadBlock(Model *mod, Worldfile *wf, int entity)
void pose_shift(const Pose &pose)
void Map(unsigned int layer)
virtual bool IsGUI() const
void Rasterize(uint8_t *data, unsigned int width, unsigned int height, meters_t cellwidth, meters_t cellheight)
#define PRINT_DEBUG1(m, a)
bool rebuild_displaylist
iff true, regenerate block display list before redraw
void UnMap(unsigned int layer)
void DrawSolid(const Geom &geom)
std::vector< Block * > blocks
void AppendTouchingModels(std::set< Model * > &touchers)
void BuildDisplayList(Model *mod)