2 changed files with 77 additions and 0 deletions
@ -0,0 +1,46 @@ |
|||||
|
#include "RmGridRowCmd.h" |
||||
|
|
||||
|
namespace ofx { |
||||
|
namespace piMapper { |
||||
|
|
||||
|
RmGridRowCmd::RmGridRowCmd(GridWarpSurface * s, ProjectionEditor * e){ |
||||
|
_surface = s; |
||||
|
_editor = e; |
||||
|
_doNotUndo = false; |
||||
|
} |
||||
|
|
||||
|
void RmGridRowCmd::exec(){ |
||||
|
|
||||
|
if(_surface->getGridRows() > 1){ |
||||
|
_vertices = _surface->getVertices(); |
||||
|
_texCoords = _surface->getTexCoords(); |
||||
|
_surface->setGridRows(_surface->getGridRows() - 1); |
||||
|
_editor->createJoints(); |
||||
|
}else{ |
||||
|
_doNotUndo = true; |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
void RmGridRowCmd::undo(){ |
||||
|
ofLogNotice("RmGridRowCmd", "undo"); |
||||
|
|
||||
|
if(_doNotUndo){ |
||||
|
return; |
||||
|
} |
||||
|
|
||||
|
_surface->setGridRows(_surface->getGridRows() + 1); |
||||
|
vector <ofVec2f> v; |
||||
|
|
||||
|
for(int i = 0; i < _vertices.size(); ++i){ |
||||
|
v.push_back( ofVec2f(_vertices[i].x, _vertices[i].y) ); |
||||
|
} |
||||
|
|
||||
|
_surface->setVertices(v); |
||||
|
_surface->setTexCoords(_texCoords); |
||||
|
_editor->createJoints(); |
||||
|
} |
||||
|
|
||||
|
} // namespace piMapper
|
||||
|
} // namespace ofx
|
||||
|
|
@ -0,0 +1,31 @@ |
|||||
|
#pragma once |
||||
|
|
||||
|
#include "SurfaceManager.h" |
||||
|
#include "BaseCmd.h" |
||||
|
#include "GridWarpSurface.h" |
||||
|
#include "ProjectionEditor.h" |
||||
|
|
||||
|
class ofxPiMapper; |
||||
|
|
||||
|
namespace ofx { |
||||
|
namespace piMapper { |
||||
|
|
||||
|
class RmGridRowCmd : public BaseUndoCmd { |
||||
|
|
||||
|
public: |
||||
|
RmGridRowCmd(GridWarpSurface * s, ProjectionEditor * e); |
||||
|
void exec(); |
||||
|
void undo(); |
||||
|
|
||||
|
private: |
||||
|
vector <ofVec3f> _vertices; |
||||
|
vector <ofVec2f> _texCoords; |
||||
|
GridWarpSurface * _surface; |
||||
|
ProjectionEditor * _editor; |
||||
|
bool _doNotUndo; |
||||
|
|
||||
|
}; |
||||
|
|
||||
|
} // namespace piMapper
|
||||
|
} // namespace ofx
|
||||
|
|
Loading…
Reference in new issue