コード例 #1
0
ファイル: Body.cpp プロジェクト: zombihello/lifeEngine
void le::Body::CreateCircleShape( float Radius, Vector2f Center )
{
	if ( body != NULL )
	{
		CircleShape* Circle = new CircleShape( Radius, Center );
		Circle->SetPropirtes( fDensity, fRestitution, fFriction );
		Circle->SetFixture( body->CreateFixture( &Circle->GetFixtureDef() ) );
		body->GetFixtureList()->SetFilterData( *Filter );
		vCircle.push_back( Circle );
	}
}
コード例 #2
0
ファイル: Body.cpp プロジェクト: zombihello/lifeEngine
void le::Body::SetSize( Vector2f SizeBody )
{
	for ( int i = 0; i < vShape.size(); i++ )
	{
		PolygonShape* Shape = vShape[ i ];
		body->DestroyFixture( &Shape->GetFixture() );
		Shape->SetSize( SizeBody );
		Shape->SetFixture( body->CreateFixture( &Shape->GetFixtureDef() ) );
	}

	for ( int i = 0; i < vCircle.size(); i++ )
	{
		CircleShape* Circle = vCircle[ i ];
		body->DestroyFixture( &Circle->GetFixture() );
		Circle->SetRadius( SizeBody.x/2 );
		Circle->SetFixture( body->CreateFixture( &Circle->GetFixtureDef() ) );
	}

	body->GetFixtureList()->SetFilterData( *Filter );
}