Commit Graph

1220 Commits

Author SHA1 Message Date
Ruben Dashyan
9efe1515e8 [apps/shared/cartesian_function] Clean header inclusions 2019-09-20 17:11:42 +02:00
Ruben Dashyan
fd568e2bb5 [apps/shared/function_store] Clean header inclusions 2019-09-20 17:11:42 +02:00
Ruben Dashyan
1d966ce23c [apps/*/expression_model_list_controller] editExpression sets text instead of InputViewController::edit 2019-09-20 17:11:42 +02:00
Ruben Dashyan
413397652c [apps/*/expression_model_list_controller] Refactor modelStore()
Its return type is covariant. Get the ExpressionModelStore from the App.
2019-09-20 17:11:42 +02:00
Ruben Dashyan
91e3078234 [apps/*/expression_model_list_controller] Factor isAddEmptyRow 2019-09-20 17:11:42 +02:00
Ruben Dashyan
9a3ce0df26 [apps/shared/cartesian_function] Rename CartesianFunctionRecordDataBuffer to RecordDataBuffer 2019-09-20 17:11:42 +02:00
Ruben Dashyan
fd2961018c [apps] In Shared::Function, rename FunctionRecordDataBuffer to RecordDataBuffer 2019-09-20 17:11:42 +02:00
Ruben Dashyan
f73c80daa3 [apps] Gather asserts about the size of function name with argument 2019-09-20 17:11:42 +02:00
Léa Saviot
538bb5e5d2 [apps/graph] Do not take into account the sum/integral in XNT
Otherwise, it is impossible to use theta inside a sum in a polar
function
Example: f(theta) = sum(n*theta,0,4) cannot be written
2019-09-20 14:30:36 +02:00
Émilie Feral
ea97775f06 [apps/shared] Re-implement Sequence cursor 2019-09-20 13:44:22 +02:00
Léa Saviot
22c7fb440e [apps/graph] DefDomain depends on angleUnit
When automatically setting the definition domain of a non-cartesian
curve, take into account the angle unit:
0..360 for Degrees,
0..400 for gradians...
2019-09-20 11:42:45 +02:00
Émilie Feral
22dc20530f [apps/shared] CurveView: jointDots does stamp the first dot and the
closest dot to an undefined dot. It avoids recursing when both dots are
undefined.
2019-09-18 10:44:30 +02:00
Ruben Dashyan
7f8cc4d147 [apps/shared/curve_view] Fix drawCurve on boundaries 2019-09-17 18:17:09 +02:00
Léa Saviot
36ca9c61b7 [apps] Fix compilation for emscripten 2019-09-13 11:02:23 +02:00
Léa Saviot
7c5cf82598 [apps/cartesian_function] When changing plot type, recompute unknowns 2019-09-12 10:38:51 +02:00
Léa Saviot
274795fcab [apps/graph] setDefault when changing models if non cartesian functions 2019-09-12 09:54:02 +02:00
Léa Saviot
4262ea0365 [apps/round_cursor_view] Fix setCursorFrame
Scenario: create a cartesian function and a polar function, then
navigate between the 2. The cursor sometimes stays drawn somewhere it
shouldn't be.
2019-09-10 10:47:32 +02:00
Léa Saviot
4caf9f5197 [coding style] Make some methods const 2019-09-09 20:05:14 +02:00
Léa Saviot
100b0c0186 [apps/escher] Uniformize k_separatorThickness 2019-09-09 19:10:17 +02:00
Léa Saviot
a50c1aafbf [apps/shared] Separable class 2019-09-09 19:10:17 +02:00
Léa Saviot
e67160b878 [apps/graph] Faster cursor scrolling on device
This commit is quite dirty but works well
2019-09-09 16:56:32 +02:00
Léa Saviot
723f53a1aa [apps/sum_graph_controller] Do not move the cursor to NAN 2019-09-09 14:08:17 +02:00
Léa Saviot
99aee59e5e [apps/graph] Default window is -10..10 / -10..10 2019-09-09 14:07:49 +02:00
Léa Saviot
0d2c20bceb [apps/graph] Fix function renaming
Scenario: Funciton renamed f123456 would be saved as f12345 due to
buffer size problem
2019-09-09 13:30:09 +02:00
Émilie Feral
b4f9cbf4b3 [apps/shared] FunctionGraphController: fix confusion (int/float) 2019-09-09 12:12:18 +02:00
Émilie Feral
f38c6ed3d1 [apps/shared] Move sumBetweenBounds from controller (SumGraphController)
to the models (Sequence or CartesianFunction) and
CartesianFunction::sumBetweenBounds takes into account the function
domain
2019-09-09 11:42:16 +02:00
Émilie Feral
8185656870 [apps/shared] CartesianFunction: add assertions on the plot type 2019-09-09 11:42:16 +02:00
Émilie Feral
5be68133a1 [apps/shared] CartesianFunction::approximateDerivative returns NAN out
of the function domain
2019-09-09 11:42:16 +02:00
Émilie Feral
111a789f51 [apps/graph] Use CartesianFunction::nextIntersectionFrom in
PreimageGraphController to compute the preimage
2019-09-09 11:42:16 +02:00
Émilie Feral
37fd6f4d76 [apps/graph] Move function min and max computation from the controller
to the model CartesianFunction and take into account function domain
2019-09-09 11:42:16 +02:00
Émilie Feral
901cce9e67 [apps/graph] Move nextRootFrom from the controller to the model
CartesianFunction and take into account function domain
2019-09-09 11:42:16 +02:00
Léa Saviot
67964ca383 [apps/curve_view] Fix the drawing
Scenario: exponential distribution, lambda = 1.23E-38
2019-09-09 11:25:20 +02:00
Léa Saviot
0f8bfc4f96 [apps/cartesian_function] Fix XYEvaluation for cartesian functions 2019-09-09 11:25:20 +02:00
Émilie Feral
7b8973f020 [apps/graph] Move nextIntersectionFrom method from controller to model
and take into account the function domain in the intersection
computation
2019-09-09 10:22:44 +02:00
Émilie Feral
2ca8290813 [apps/shared] CurveView: number of pixels per label cannot be negative 2019-09-06 16:12:06 +02:00
Ruben Dashyan
ae7d60d7c2 [apps/shared/values_controller] Move evaluationOfAbscissaAtColumn impl to Sequence
And remove TODO
2019-09-05 17:52:16 +02:00
Ruben Dashyan
f579010340 [apps/shared/curve_view] Correct parameter's value near domain boundaries 2019-09-05 17:36:00 +02:00
Ruben Dashyan
e2543fcef4 [apps/shared/curve_view] drawCurve computes parameter t more precisely 2019-09-05 17:36:00 +02:00
Léa Saviot
8726f1d621 [apps/graph] Display parametric name in the middle of values cell 2019-09-05 15:43:55 +02:00
Léa Saviot
6b25060dc5 [apps/graph] Put parameter name in interval controller
For instance:
X Start ...
X End ...
Step
2019-09-05 14:54:59 +02:00
Émilie Feral
e55541ae82 [apps/shared] CurveViewCursor: cursor.m_x can reach infinity by t can't
and can't be undefined either
2019-09-05 14:23:00 +02:00
Émilie Feral
71e66ad513 [apps/shared] FunctionGraphController: fix moveCursorVertically, t does
not change when the cursor moves VERTICALLY
2019-09-05 14:20:58 +02:00
Ruben Dashyan
0631ed77b5 [apps/*/editable_cell_table_view_controller] Factor table view margin values 2019-09-05 13:24:05 +02:00
Ruben Dashyan
aa5c5219da [apps/*/values_controller] Set correct parameter message 2019-09-05 11:58:51 +02:00
Ruben Dashyan
c8206d51f2 [apps/shared/cartesian_function] Add static ParameterMessageForPlotType method 2019-09-05 11:58:51 +02:00
Ruben Dashyan
9417a52167 [apps/*/function] Sequence implements parameterMessageName 2019-09-05 11:58:51 +02:00
Ruben Dashyan
86768b2eec [apps/*/go_to_parameter_controller] Remove I18n::Message parameter from constructor 2019-09-05 11:58:51 +02:00
Ruben Dashyan
b357060939 [apps/shared/go_to_parameter_controller] Rename m_abscisseCell to m_parameterCell 2019-09-05 11:58:51 +02:00
Léa Saviot
58ac80783a [apps/graph] Handle navigation on hidden cells 2019-09-05 10:49:43 +02:00
Léa Saviot
af3d1456e0 [apps/graph] Hideable cells in values controller 2019-09-05 10:25:01 +02:00