Qucs-GUI
0.0.19
|
00001 /*************************************************************************** 00002 curvediagram.h 00003 ---------------- 00004 begin : Sat Apr 9 2005 00005 copyright : (C) 2005 by Michael Margraf 00006 email : michael.margraf@alumni.tu-berlin.de 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 00015 * * 00016 ***************************************************************************/ 00017 00018 #ifndef CURVEDIAGRAM_H 00019 #define CURVEDIAGRAM_H 00020 00021 #include "diagram.h" 00022 00023 00024 class CurveDiagram : public Diagram { 00025 public: 00026 CurveDiagram(int _cx=0, int _cy=0); 00027 ~CurveDiagram(); 00028 00029 00030 Diagram* newOne(); 00031 static Element* info(QString&, char* &, bool getNewOne=false); 00032 int calcDiagram(); 00033 void calcLimits(); 00034 void calcCoordinate(const double*, const double*, const double*, float*, float*, Axis const*) const; 00035 void finishMarkerCoordinates(float&, float&) const; 00036 bool insideDiagram(float, float) const; 00037 00038 protected: 00039 void clip(Graph::iterator&) const; 00040 }; 00041 00042 #endif