示例#1
0
void KVZALineFinder::ProcessIdentification(Int_t zmin, Int_t zmax)
{
    LinearizeHisto(fBinsByZ);

    if(zmin<0) zmin = ((KVIDentifier*)fGrid->GetIdentifiers()->First())->GetZ();
    if(zmax<0) zmax = ((KVIDentifier*)fGrid->GetIdentifiers()->Last())->GetZ();

    int ww = 10;
    for(int z=zmin; z<=zmax; z++)
    {
        if(z>4)  ww = 20;
        if(z>6)  ww = 30;
        if(z>10) ww = 40;
        if(z>12) ww = 50;
        FindALine(z, ww);
        Increment(z-zmin);
        gSystem->ProcessEvents();
    }
    MakeGrid();

    Double_t zmGrid  = ((KVIDentifier*)fGrid->GetIdentifiers()->Last())->GetPID();
    if(zmax>=zmGrid) return;

    for(int z=zmax+1; z<=zmGrid; z++)
    {
        FindZLine(z);
        Increment(z-zmin);
        gSystem->ProcessEvents();
    }

}
示例#2
0
Grid* Arg2Grid(
	int argc, 
	Atom *argv)
{
	int length, i;
	Grid* grid;
	// argc is length of list.
	length = argc;
	grid = MakeGrid(length);
	
	// Insert arguments (frequencies) into grid.
	for (i = 0; i < length; i++)
	{
		if (argv[i].a_type == A_FLOAT)
			(grid->grid)[i] =  argv[i].a_w.w_float;
		else if (argv[i].a_type == A_LONG)
			(grid->grid)[i] =  (float)(argv[i].a_w.w_long);
		else
			post("Only ints of floats in the list.");
				
	}
	
	return grid;
	
}
示例#3
0
void CreateWorld(void) {
	glPushMatrix();
	MakeGrid();
	_draw();
	glPopMatrix();
	// MakeLighting();
}
示例#4
0
/*
 * MAIN STUFF
 */
int main(int argc,  char **argv)
{
    GLenum type;
    
    type = GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH;
    glutInit(&argc, argv);
    glutInitDisplayMode(type);
    glutCreateWindow(argv[0]);    
    SetUpMenu();
    
    MakeGrid();

    glutReshapeFunc(Resize3DWindow);
    glutDisplayFunc(Doit3D);
    glutMotionFunc(MouseMove);
    glutIdleFunc(ComputeStatistics);
    glutMainLoop();
    return(0);
}