diff --git a/src/ofxSurfaceGui.cpp b/src/ofxSurfaceGui.cpp index 1d590a3..f44a7af 100644 --- a/src/ofxSurfaceGui.cpp +++ b/src/ofxSurfaceGui.cpp @@ -213,6 +213,45 @@ void ofxSurfaceGui::unselect() bSelected = false; } +void ofxSurfaceGui::updateTextureHitarea() +{ + textureHitarea.clear(); + for ( int i=0; igetVertex(i); + } + updateProjectionHitarea(); + + ofVec2f textureSize = ofVec2f(surface->getTexture()->getWidth(), surface->getTexture()->getHeight()); + for ( int i=0; igetTexCoord(i) * textureSize; + } + updateTextureHitarea(); +} + bool ofxSurfaceGui::hitTest(float x, float y) { if (mode == PROJECTION_MAPPING){ @@ -300,24 +339,6 @@ void ofxSurfaceGui::addNumTextureMappingJoints(int num) } } -void ofxSurfaceGui::updateTextureHitarea() -{ - textureHitarea.clear(); - for ( int i=0; isetup(v1, v2, v3, t1, t2, t3, triangleSurfaces.back()->getTexture()); + surfaceGuis.back()->updateJoints(); } void ofxSurfaceManager::addTriangleSurface(ofVec2f v1, ofVec2f v2, ofVec2f v3, ofVec2f t1, ofVec2f t2, ofVec2f t3, ofTexture* texturePtr) { addTriangleSurface(); triangleSurfaces.back()->setup(v1, v2, v3, t1, t2, t3, texturePtr); + surfaceGuis.back()->updateJoints(); } \ No newline at end of file