/* This file is part of moth. moth is a program for creating and editing textured 3D models. Copyright (C) 2004 Peter Uray. moth is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. moth is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with moth; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef __MPLANEVIEW_H__ #define __MPLANEVIEW_H__ #include #include #include class MPlaneView : public MGLView { Q_OBJECT signals: // No signals. public slots: // No slots. public: MPlaneView(QWidget *parent, const char *name, MAxis viewingAxis); protected: virtual void renderView(void); virtual void onSelectModel(void); virtual void onSelectShape(void); virtual void onSelectLight(void); virtual void onZoomIn(void); virtual void onZoomOut(void); // Move virtual void onMoveModelInit(void); virtual void onMoveModelPerform(void); virtual void onMoveModelFinish(void); virtual void onMoveShapeInit(void); virtual void onMoveShapePerform(void); virtual void onMoveShapeFinish(void); virtual void onMoveLightInit(void); virtual void onMoveLightPerform(void); virtual void onMoveLightFinish(void); // Rotate virtual void onRotateModelInit(void); virtual void onRotateModelPerform(void); virtual void onRotateModelFinish(void); virtual void onRotateShapeInit(void); virtual void onRotateShapePerform(void); virtual void onRotateShapeFinish(void); virtual void onRotateLightInit(void); virtual void onRotateLightPerform(void); virtual void onRotateLightFinish(void); // Scale virtual void onScaleModelInit(void); virtual void onScaleModelPerform(void); virtual void onScaleModelFinish(void); virtual void onScaleShapeInit(void); virtual void onScaleShapePerform(void); virtual void onScaleShapeFinish(void); // Vertex and facet manipulation virtual void onSelectVertexInit(void); virtual void onSelectVertexPerform(void); virtual void onSelectVertexFinish(void); virtual void onCreateVertex(void); virtual void onCreateTriangle(void); virtual void onMoveVertexInit(void); virtual void onMoveVertexPerform(void); virtual void onMoveVertexFinish(void); virtual void onRotateVertexInit(void); virtual void onRotateVertexPerform(void); virtual void onRotateVertexFinish(void); virtual void onScaleVertexInit(void); virtual void onScaleVertexPerform(void); virtual void onScaleVertexFinish(void); virtual void onMagnetInit(void); virtual void onMagnetPerform(void); virtual void onMagnetFinish(void); virtual void onFlipEdge(void); virtual void onSnapToMaster(void); // View transformations. virtual void onRotateView(void); virtual void onZoomView(void); virtual void onMoveView(void); virtual void onResetView(void); virtual QString mousePosition3D(void); MVector determinePosition3D(void); MAxis _axis; MVector _position; float _scale; MCamera _camera; }; #endif