diff --git a/src/Application/Modes/ProjectionMappingMode.cpp b/src/Application/Modes/ProjectionMappingMode.cpp index 62ca5b4..7dd55e8 100644 --- a/src/Application/Modes/ProjectionMappingMode.cpp +++ b/src/Application/Modes/ProjectionMappingMode.cpp @@ -53,34 +53,19 @@ void ProjectionMappingMode::onKeyPressed(Application * app, ofKeyEventArgs & arg switch(args.key){ case 't': - app->getCmdManager()->exec( - new AddSurfaceCmd( - app->getSurfaceManager(), - SurfaceType::TRIANGLE_SURFACE) - ); + createSurface(app, SurfaceType::TRIANGLE_SURFACE); break; case 'q': - app->getCmdManager()->exec( - new AddSurfaceCmd( - app->getSurfaceManager(), - SurfaceType::QUAD_SURFACE) - ); + createSurface(app, SurfaceType::QUAD_SURFACE); break; case 'g': - app->getCmdManager()->exec( - new AddSurfaceCmd( - app->getSurfaceManager(), - SurfaceType::GRID_WARP_SURFACE) - ); - break; + createSurface(app, SurfaceType::GRID_WARP_SURFACE); + break; case 'h': - app->getCmdManager()->exec( - new AddSurfaceCmd( - app->getSurfaceManager(), - SurfaceType::HEXAGON_SURFACE)); + createSurface(app, SurfaceType::HEXAGON_SURFACE); break; case OF_KEY_BACKSPACE: @@ -470,5 +455,10 @@ void ProjectionMappingMode::moveSelection(Application * app, ofVec2f by){ app->getSurfaceManager(), by)); } +void ProjectionMappingMode::createSurface(Application *app, int type){ + app->getCmdManager()->exec( + new AddSurfaceCmd(app->getSurfaceManager(), type)); +} + } // namespace piMapper } // namespace ofx \ No newline at end of file diff --git a/src/Application/Modes/ProjectionMappingMode.h b/src/Application/Modes/ProjectionMappingMode.h index a732a97..5ae53ac 100644 --- a/src/Application/Modes/ProjectionMappingMode.h +++ b/src/Application/Modes/ProjectionMappingMode.h @@ -61,6 +61,7 @@ class ProjectionMappingMode : public ApplicationBaseMode { void selectNextVertex(Application * app); void selectPrevVertex(Application * app); void moveSelection(Application * app, ofVec2f by); + void createSurface(Application * app, int type); private: ProjectionMappingMode();