Example #1
0
//----------------------------------------------------------------------------
void EditMap::CreateTerrain (std::string name, int terrainSize, int pageSize,
	float gridSpacing)
{
	TerrainActor *actor = new0 TerrainActor();
	actor->SetName(name);

	RawTerrain *rawTerrain = new0 RawTerrain();
	rawTerrain->SetName(name);
	rawTerrain->SetSize(pageSize);
	int quantity = terrainSize/(pageSize-1);
	rawTerrain->SetRowQuantity(quantity);
	rawTerrain->SetColQuantity(quantity);
	rawTerrain->SetSpacing(gridSpacing);
	rawTerrain->AllocateRawTerrainPages();

	actor->SetTerrain(rawTerrain);
	actor->ComeInToEventWorld();

	Event *event = EditorEventSpace::CreateEventX(
		EditorEventSpace::CreateTerrain);
	event->SetData<TerrainActor*>(actor);
	EventWorld::GetSingleton().BroadcastingLocalEvent(event);

	mScene->AddActor(actor);
}
Example #2
0
//----------------------------------------------------------------------------
void E_MainFrame::OnCreateTerrainPange()
{
	Scene *scene = PX2_PROJ.GetScene();
	if (!scene) return;

	RawTerrain *rawTerrain = DynamicCast<RawTerrain>(PX2_SELECTION.GetFirstObject());
	if (rawTerrain)
	{
		DlgTerrainPageNew dlg(mStageView);
		if (dlg.ShowModal() == wxID_OK)
		{
			TerrainPage *page = rawTerrain->GetPage(dlg.mRowI, dlg.mColI);
			if (page)
			{
			}
			else
			{
				PX2_CREATER.CreateTerrainPage(rawTerrain, dlg.mRowI, dlg.mColI);
			}
		}
	}
}
Example #3
0
//----------------------------------------------------------------------------
void EditMap::CreateTerrain (std::string name, int terrainSize, int pageSize,
	float gridSpacing)
{
	TerrainActor *actor = new0 TerrainActor();
	actor->SetName(name);

	RawTerrain *rawTerrain = new0 RawTerrain();
	rawTerrain->SetName(name);
	rawTerrain->SetSize(pageSize);
	int quantity = terrainSize/(pageSize-1);
	rawTerrain->SetRowQuantity(quantity);
	rawTerrain->SetColQuantity(quantity);
	rawTerrain->SetSpacing(gridSpacing);
	rawTerrain->AllocateRawTerrainPages();

	actor->SetRawTerrain(rawTerrain);
	actor->ComeInToEventWorld();

	AddActor(actor);
}