Commit Graph

98 Commits

Author SHA1 Message Date
Ruben Dashyan
bc750ef2da [apps/shared/curve_view] Clean clipping of the line segment for straightJoinDots 2019-07-30 14:15:08 +02:00
Ruben Dashyan
79dbdaa98c [apps/shared/curve_view] stampAtLocation: clarify stampRect and shiftedMask 2019-07-30 14:15:08 +02:00
Ruben Dashyan
75a273be2a [apps/shared/curve_view] Gather calls to stampAtLocation in jointDots 2019-07-30 14:15:08 +02:00
Ruben Dashyan
6f5b551104 [apps/shared/curve_view] Gather NAN detections in jointDots 2019-07-30 14:15:08 +02:00
Ruben Dashyan
0d82e40b1c [apps/shared/curve_view] Clean straightJoinDots 2019-07-30 14:15:08 +02:00
Ruben Dashyan
b4099180a3 [apps/shared/curve_view] Correctly check whether successive dots are joined 2019-07-30 14:15:08 +02:00
Ruben Dashyan
327547dd37 [apps/shared/curve_view] Do not evaluate several times in drawCurve 2019-07-30 14:15:08 +02:00
Ruben Dashyan
9ab55e6a04 [apps/shared/curve_view] drawCurve does not call straightJoinDots anymore
Remove the "bool continuously" parameter of the method drawCurve that allowed
to bypass the call to jointDots and call straightJoinDots directly
instead.
2019-07-30 14:15:08 +02:00
Ruben Dashyan
585b77c38f [apps/shared/curve_view] Clarify coordinates' conventions 2019-07-30 14:15:08 +02:00
Ruben Dashyan
ab0bfe2039 [apps/shared/curve_view] Inline pixelLength 2019-07-30 14:15:08 +02:00
Ruben Dashyan
95be59fdc6 [apps/shared/curve_view] Fix label position rounding error 2019-07-30 14:15:08 +02:00
Ruben Dashyan
702a222dbc [apps/shared/curve_view] Simplify drawGridLines' for loop parameter 2019-07-30 14:15:08 +02:00
Ruben Dashyan
ce75a99d93 [apps/shared/curve_view] Simplify drawGridLines' for loop bounds 2019-07-30 14:15:08 +02:00
Ruben Dashyan
985876f115 [apps/shared/curve_view] Simplify drawDot 2019-07-30 14:15:08 +02:00
Ruben Dashyan
292493ba36 [apps/*curve_view] Substitute resolution by pixelWidth 2019-07-30 14:15:08 +02:00
Ruben Dashyan
c80baae1e9 [apps/*/curve_view] Remove samplingRatio()
The resolution() method is useful to get a horizontal step equivalent to
the width of a pixel. A higher sampling ratio (or resolution) had been
introduced in the following commit.
[apps] In curve view, avoid white vertical lines in integral curves due to pixel rounding
2019-07-30 14:15:08 +02:00
Ruben Dashyan
7cbc489052 [apps/shared/curve_view] Use drawSegment to color area under curve 2019-07-30 14:15:08 +02:00
Ruben Dashyan
f5c3cb74e2 [apps/shared/curve_view] Fix rounding error in drawSegment 2019-07-30 14:15:08 +02:00
Ruben Dashyan
f4b7967a58 [apps/shared/curve_view] step in drawHistogram depends on x-range's width
instead of the width of the rect that is being drawn.
2019-07-30 14:15:08 +02:00
Léa Saviot
496d346049 Remove max/min inline from KDCoordinate header 2019-05-03 15:53:19 +02:00
Léa Saviot
48bf209f48 [apps/curve_view] Fix zero label position
For instance, in Probability app, draw a standard normal law. The zero
was top left of the screen...
2019-01-21 14:23:26 +01:00
Léa Saviot
e2ac56abc6 [apps/curve_view] Fix grid lines not drawn due to pixel to float error 2019-01-10 11:42:05 +01:00
Léa Saviot
9639469761 [apps/curve_view] Fix drawGridLines that drew the opposite axis 2019-01-10 11:42:05 +01:00
Léa Saviot
4d1114ef63 [apps/curve_view] Increase numberOfSignificant digits when needed
Labels might be rounded to the same value (for example, in Probability,
draw a normal law with mu = 100000 and sigma = 0.1), in which case we
need to display extremal labels only, with increased number of
significant digits.
2019-01-10 11:42:05 +01:00
Léa Saviot
460b49010c [apps/curve_view] Do not draw the 0 label if the axis is floating
The 0 is represented by the other axis
2019-01-10 11:42:05 +01:00
Léa Saviot
37117ed7e7 [apps/curve_view] Do not draw extremal Y label if it overlaps X labels 2019-01-10 11:42:05 +01:00
Léa Saviot
718160b964 [apps] Draw grid lines in bold and light colors in curve_view 2019-01-10 11:42:05 +01:00
Léa Saviot
5d7a7c7371 [apps/curve_view] Make drawGridLines private 2019-01-10 11:42:05 +01:00
Léa Saviot
69105572ef [apps] Change axes drawing order in curve views 2019-01-10 11:42:05 +01:00
Léa Saviot
335264e944 [apps] Typo: drawAxes is now drawAxis 2019-01-10 11:42:05 +01:00
Léa Saviot
1b0b9a5c42 [apps/probability] Color the background behind graph labels 2019-01-10 11:42:04 +01:00
Léa Saviot
d3dd644e0d [apps/curve_view] Draw graduations event if step << x 2019-01-10 11:42:04 +01:00
Léa Saviot
97db53007a [apps] Fix wrong assertion that should be an escape case 2019-01-10 11:42:04 +01:00
Léa Saviot
fd34e83a56 [apps] In curve views, display floating labels when axes non visible 2019-01-10 11:42:02 +01:00
Léa Saviot
fa24a4fd54 [apps] Put the Y labels left of the Y axis 2019-01-10 11:42:02 +01:00
Léa Saviot
6b381957df [apps] Handle cut labels in curves.
Draw all labels even if cut. If only the extrema horizontal labels are
drawn, pick the labels 1 and numberOfLabels-2 if the real extrema labels
will be cut.
2019-01-10 11:42:02 +01:00
Léa Saviot
9ac32cf8fe [apps] Use standard variables in curve view 2019-01-10 11:42:02 +01:00
Léa Saviot
d40b17a45e [apps] In curve view, draw the graduation even if the label is not drawn 2019-01-10 11:42:02 +01:00
Léa Saviot
c14483b0e7 [apps/shared] Clean some code in CurveViewRange 2019-01-10 11:42:02 +01:00
Léa Saviot
8c6ffa6d42 [apps] Fix graph X axis labels that read the same
Scenario: just zoom in in a graph
Fix:
- Do not truncate labels.
- Label size is computed depending on available size and number of
 labels.
- If labels cannot be displayed properly, just display the minimal
and maximal labels!
2019-01-10 11:42:02 +01:00
Léa Saviot
a65bdb1dfc [apps] Increase the Y axis label buffer sizes in curve views 2019-01-10 11:42:02 +01:00
Léa Saviot
36faebab3d [apps] Fix some KDCoordinate to float conversions 2019-01-10 11:42:02 +01:00
Léa Saviot
8de74f4158 [apps] Fix one pixel in CurveView::stampAtLocation 2019-01-10 11:42:02 +01:00
Léa Saviot
cf79795540 [apps] Fix blob left of screen when drawing curves
Try for instance f(x)=cos(x) in Graph
2019-01-10 11:42:02 +01:00
Léa Saviot
37ac12b1da [apps/graph] When changing the window manually, do not pan to cursor 2019-01-10 11:42:02 +01:00
Léa Saviot
99d97ecb45 [apps] Do not recompute stop condition in for loop 2018-12-13 12:20:22 +01:00
Émilie Feral
e56cfa3f94 [shared] Fix the buffer size of curve view labels 2018-11-30 09:40:15 +01:00
Léa Saviot
8088d0b57f Revert "[apps] OK icon in graphs is in the top right corner"
This reverts commit 50c0b0b8a79ce62723c13aeafe36d1afc75ce5a5.
2018-11-23 12:04:07 +01:00
Léa Saviot
ede20db6b9 [apps] OK icon in graphs is in the top right corner
It doesn't move when the banner height changes
2018-11-23 12:04:02 +01:00
Lionel Debroux
1a8c6b6ae9 [poincare, escher, ion, apps] Split the huge umbrella header poincare.h, to reduce build time.
This should be a NFC, but surprisingly, it also reduces size... so what does it change ?
2018-10-23 11:49:09 +02:00