Пример #1
0
void AccumulatingForces::initialize()
{
	GuiBase::initialize(false, true);

	gravityParticle.position = vec3(-2,0,0);
	accumulatedParticle.position = vec3(0,0,0);
	keyboardParticle.position = vec3(2,0,0);

	gravityParticleGraphic = addVectorGraphic();
	gravityParticleGraphic->position = gravityParticle.position;
	gravityParticleGraphic->displayStyle = DS_POINT;
	gravityParticleGraphic->color = vec3(1,0,0);

	keyboardParticleGraphic = addVectorGraphic();
	keyboardParticleGraphic->position = keyboardParticle.position;
	keyboardParticleGraphic->displayStyle = DS_POINT;
	keyboardParticleGraphic->color = vec3(0,0,1);

	accumulatedParticleGraphic = addVectorGraphic();
	accumulatedParticleGraphic->position = accumulatedParticle.position;
	accumulatedParticleGraphic->displayStyle = DS_POINT;
	accumulatedParticleGraphic->color = vec3(0.8f,0,1);

	forceRegistry.add(&gravityParticle, &gravityGenerator);
	forceRegistry.add(&keyboardParticle, &keyboardGenerator);
	forceRegistry.add(&accumulatedParticle, &gravityGenerator);
	forceRegistry.add(&accumulatedParticle, &keyboardGenerator);

}
Пример #2
0
void Lab14Gui::initialize()
{
	GuiBase::initialize( false, true );
	debugLayout->addWidget( DebugMenus::menu );
	
	forceGravity = new ParticleGravity( glm::vec3( 0, -20, 0 ) );
	//forceGravity->isActive = false;
	forceKeyboard = new ParticleKeyboard( 30.0f );
	forceDrag = new ParticleDrag( 0.5f, 0.002f );
	forceDrag->isActive = false;

	reset();
	
	

	for( int i = 0; i < MAXPARTICLE; i++ )
	{
		particleGraphics[i] = addVectorGraphic();
		particleGraphics[i]->position = glm::vec3();
		particleGraphics[i]->color = glm::vec3( 0.9f, 0, 0 );
	}

	for( int i = 0; i < numParticles; i++ )
	{
		particleGraphics[i*4]->color = glm::vec3( 0.9f, 0, 0 );

		particleGraphics[i*4+1]->displayStyle = DisplayStyle::DS_ARROW;
		particleGraphics[i*4+1]->color = glm::vec3( 0, 0, 0.5f );

		particleGraphics[i*4+3]->displayStyle = DisplayStyle::DS_ARROW;
		particleGraphics[i*4+3]->color = glm::vec3( 0, 0.5f, 0 );

		particleGraphics[i*4+2]->displayStyle = DisplayStyle::DS_ARROW;
		particleGraphics[i*4+2]->color = glm::vec3( 0.5f, 0, 0 );
	}

	leverGraphic = addVectorGraphic();
	leverGraphic->color = glm::vec3( 0, 0, 0 );
	leverGraphic->displayStyle = DisplayStyle::DS_ARROW;

	leverForceGraphic = addVectorGraphic();
	leverForceGraphic->color = glm::vec3( 0, 0.5, 1 );
	leverForceGraphic->displayStyle = DisplayStyle::DS_ARROW;

	projectedLeverForceGraphic = addVectorGraphic();
	projectedLeverForceGraphic->color = glm::vec3( 1, 0.5, 0 );
	projectedLeverForceGraphic->displayStyle = DisplayStyle::DS_ARROW;

	DebugMenus::actButton("Reset", std::bind( &Lab14Gui::reset, this ) );
	DebugMenus::toggleBool("Use Random Length", randomLengthb );
	DebugMenus::slideFloat("Radius", radiusc, 0.1f, 10.0f);

	DebugMenus::watchFloat( "Angular Velocity", angularVelocityc );
	DebugMenus::watchFloat( "Total Inertia", totalInertia );
	DebugMenus::watchFloat( "Torque Magnitude", torqueMagnitude );
}
Пример #3
0
void Lab01GuiBase::initialize()
{
	GuiBase::initialize( false, true );

	centralGraphic = addVectorGraphic();
	centralGraphic->color = glm::vec3( 0, 0.8f, 0 );
	centralGraphic->position = position;

	velocityGraphic = addVectorGraphic();
	velocityGraphic->color = glm::vec3( 0, 0.8f, 0 );
	velocityGraphic->displayStyle = DS_ARROW;
	velocityGraphic->position = velocity;
}
Пример #4
0
void Momentum::initialize()
{
	GuiBase::initialize(false, true);
	graphic = addVectorGraphic();
	velocityGraphic = addVectorGraphic();
	momentumGraphic=addVectorGraphic();
	velocityGraphic->displayStyle =DS_ARROW;
	momentumGraphic->displayStyle =DS_ARROW;
	velocityGraphic->b=255;
	momentumGraphic->r=255;
	graphic->position=p.Position;
	graphic->g=255;
	graphic->b=255;
	//p.Damper=0.99f;

}