44 virtual void DrawDC(wxPoint2DDouble translation,
double scale, wxGraphicsContext* gc)
const;
45 virtual bool Contains(wxPoint2DDouble position)
const {
return m_rect.Contains(position); }
46 virtual bool Intersects(wxRect2DDouble rect)
const {
return m_rect.Intersects(rect); }
48 virtual void Rotate(
bool clockwise =
true);
50 virtual bool Solve(
double* input,
double timeStep);
51 virtual bool Initialize();
52 virtual wxString GetMathExpression() {
return m_mathExpression; }
53 virtual void SetMathExpression(wxString mathExpression) { m_mathExpression = mathExpression; }
54 virtual std::vector<wxString> GetVariables() {
return m_variablesVector; }
55 virtual void SetVariables(std::vector<wxString> variablesVector);
58 virtual void UpdatePoints();
63 virtual rapidxml::xml_node<>* SaveElement(rapidxml::xml_document<>& doc, rapidxml::xml_node<>* elementListNode);
64 virtual bool OpenElement(rapidxml::xml_node<>* elementNode);
69 void CalculateBlockSize(
double numInNodes);
72 wxString m_mathExpression =
"sqrt(x^2 + y^2)";
73 wxString m_variables =
"time,step,x,y";
74 std::vector<wxString> m_variablesVector;
75 double* m_inputValues =
nullptr;
76 std::vector<GCText*> m_gcTextInputVector;
79 int m_maxSringSize = 0;
80 double m_minimumSize = 36.0;
Class to draw text on Graphics Context using wxWidgets.