1
0
Fork 0
mirror of https://github.com/gwm17/implot.git synced 2024-11-29 21:48:53 -05:00
Commit Graph

246 Commits

Author SHA1 Message Date
epezent 53c867f414 code cleanup, define magic numbers, add minimum plot size constraint, misc improvements to tick mark labels 2020-08-19 00:04:05 -05:00
epezent 7763b9cf43 add example for custom plotters 2020-08-17 20:20:15 -05:00
epezent 2bc716d2b6 misc clean up, experimental rect rendering, center PlotText 2020-08-17 18:31:30 -05:00
epezent 803d250bb6 bug in debug mode 2020-08-16 18:48:09 -05:00
epezent 4463fa107a clean up refactors, organize implot_internal.h 2020-08-16 18:46:59 -05:00
epezent d9ae47bf2b finish refactoring implot for v0.5 2020-08-16 15:38:51 -05:00
epezent 862f96c560 add implot_internal.h 2020-08-16 11:36:20 -05:00
epezent 86a9e51f9d add explicit context creation/destruction 2020-08-16 10:25:06 -05:00
epezent 96dc5b5a28 expose NextColormapColor 2020-08-16 00:49:34 -05:00
Evan Pezent df0a159391
Merge pull request #84 from ozlb/patch-1
PlotText color
2020-08-16 00:18:12 -05:00
Evan Pezent c09d160d19
Merge pull request #88 from bear24rw/imdrawidx_32bit
Fix overflow when using 32-bit ImDrawIdx
2020-08-15 23:25:11 -05:00
Peter Johnson 214504a20e
Fix yaxis setting updates not working
The new values were being stored in PreviousFlags instead of Flags.
2020-08-15 21:05:03 -07:00
Max Thrun 1ec47915d3 Fix overflow when using 32-bit ImDrawIdx 2020-08-13 16:04:21 -07:00
Evan Pezent 6a5e9401f7 rev up to v0.5 2020-08-07 13:04:31 -05:00
ozlb ab9217049a
PlotText color
PlotText color properties inherited from ImGuiCol_Text, so it can be customized by `ImGui::PushStyleColor(ImGuiCol_Text, <myColor>);`
2020-08-05 04:59:05 +02:00
Evan Pezent 7d0d2d1e65 rename IsPlotItemHighlighted to IsLegendEntryHovered 2020-07-26 21:49:31 -05:00
Evan Pezent 397fc05ca8 fix bug in IsPlotYAxisHovered 2020-07-26 21:39:17 -05:00
Evan Pezent 9815d64691 tidy up ozlb axis hovering work 2020-07-26 21:28:22 -05:00
Evan Pezent db38039e97 Merge branch 'master' of https://github.com/ozlb/implot into ozlb-master 2020-07-26 20:10:24 -05:00
Evan Pezent e847aa786d bug fix: calculate adaptive divisions after canvas bounding box is calculated 2020-07-25 07:59:47 -05:00
Evan Pezent 0a3442f389 fix issue with heatmap bounds not working correctly 2020-07-25 07:52:15 -05:00
Joel Linn e43be28452 Fix divison by zero when plotting 0 data lenght. 2020-07-20 00:09:35 +02:00
ozlb 9df6f22555
IsPlotXAxisHovered, IsPlotYAxisHovered
Returns true if the XAxis plot area or YAxis[n] plot area in the current or most recent plot is hovered.
2020-07-14 23:43:57 +02:00
ozlb 140dd2bd8a
IsPlotItemHighlight
Returns true if plot item is highlight
2020-07-13 06:44:51 +02:00
Evan Pezent 4d4cac629b always show items without a legend entry 2020-06-23 22:02:22 -05:00
Josh Pieper 0b3bf9bc9f Only display non-empty legends 2020-06-22 13:56:38 -04:00
Evan Pezent 9894df4934
Update implot.cpp 2020-06-18 17:26:30 -05:00
Evan Pezent 37ee2d4c54 fix compiler warnings for plot digital 2020-06-15 21:35:09 -05:00
Evan Pezent a3defa4881 Merge branch 'master' of https://github.com/epezent/implot 2020-06-15 21:18:27 -05:00
Evan Pezent 307205bb7f
Merge pull request #64 from ozlb/patch-2
Fix circular buffer rollover (issue #60)
2020-06-15 21:21:55 -05:00
Evan Pezent 8d205530cd Merge branch 'master' of https://github.com/epezent/implot 2020-06-15 21:00:45 -05:00
Evan Pezent 70a044ee17 improve mouse pos label precision 2020-06-15 21:00:42 -05:00
Evan Pezent c6ad6e9c7f clean up and debug input mappings 2020-06-15 19:54:58 -05:00
Jaap Suter ce79420146 Switched from in-class initialization to setting the default input mapping in a constructor in the .cpp file. 2020-06-15 09:55:30 -07:00
Jaap Suter f02088fef1 Changed from SetInputMap(ImPlotInputMap) to ImPlotInputMap& GetInputMap() per Evan's suggestion. 2020-06-15 08:54:53 -07:00
ozlb 4cf06cf52c
PlotDigitalEx fix NAN values and fix circular buffer rollover (issue #60)
Fixes issue #60 (circular buffer rollover)
2020-06-14 22:28:01 +02:00
Evan Pezent 504b1ea155 Merge branch 'shaded' 2020-06-14 08:28:28 -05:00
Evan Pezent 11ba96f088 Merge branch 'master' of https://github.com/epezent/implot 2020-06-14 08:28:14 -05:00
Evan Pezent 07aed7d079 general reorginzation to plot item rendering 2020-06-14 08:27:58 -05:00
Evan Pezent e2fd883224 remove adaptive divisions flag, not really used 2020-06-13 13:25:38 -05:00
Evan Pezent 1934bdfd47 remove culling flag, enabled by default now 2020-06-13 13:18:29 -05:00
Evan Pezent fee873d74a shaded plots complete 2020-06-13 12:42:47 -05:00
Evan Pezent 61bc4d1426 working prototype for shaded plots 2020-06-12 22:02:43 -05:00
Evan Pezent 218e7bc5f1 Merge branch 'master' into shaded 2020-06-12 16:15:19 -05:00
Evan Pezent 7a53c2058f remove garbage 2020-06-12 16:15:11 -05:00
ozlb be8b6e0b18
Fix compile under MacOs
implot.cpp:3382:26: error: definition of variable with array type needs an explicit size or an initializer

Apple clang version 11.0.0 (clang-1100.0.33.17)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
2020-06-12 23:09:58 +02:00
Evan Pezent 7d02374665 hide piechart labels when legend entry is hidden 2020-06-12 12:32:13 -05:00
Jaap Suter 7f4f3ecd21 Added prototype/rough-attempt to allow remapping input (mouse-buttons/modifiers-keys). 2020-06-10 13:50:00 -07:00
Evan Pezent 0b3617668b tidy up error bars h, add sliders for misc styling variables to demo 2020-06-08 20:26:15 -05:00
Adriano Parisi 7e4e683ce6 Update assert 2020-06-08 20:49:22 +01:00
Adriano Parisi 1d11b1a1a3 Refactored to only draw the horizontal bars, updated demo 2020-06-08 20:45:31 +01:00
Evan Pezent 0dea5f8bb7 prototyping renderer change 2020-06-07 20:44:37 -05:00
Adriano Parisi ef549d1ab5 Added whiskers for H error bars, now showing desired feature 2020-06-08 00:16:50 +01:00
Adriano Parisi 3f84f43919 Building and showing in demo, now for adding horizontal errors 2020-06-08 00:05:56 +01:00
Evan Pezent 09ef003a81 clean up primitive rendering work, test new offset/stride and improve demo 2020-06-07 13:13:11 -05:00
SergeyN 723122211e made static data static
minor cleanup
2020-06-07 13:10:42 +02:00
Evan Pezent 8251e17eef moving offsetting into getters, abstract rendering into RenderPrimitives 2020-06-06 23:40:03 -05:00
Evan Pezent 861935de27 merge master 2020-06-06 21:29:43 -05:00
SergeyN 126a4201a0 minimal change commit (got transformers back) 2020-06-07 01:08:48 +02:00
Evan Pezent 523ae3aef4 fixed dragging issue where plots that were not mouse-clicked would be dragged 2020-06-06 17:54:46 -05:00
Evan Pezent 2a5a78565b internal refactors and misc improvements 2020-06-04 09:56:50 -05:00
Evan Pezent a70bbe5cff internal refactors and demo improvements 2020-06-04 00:11:43 -05:00
Evan Pezent 43f78f62b9 add formats to PieChart and Heatmap, fix compiler warnings 2020-06-03 22:18:47 -05:00
Evan Pezent 2d30283821 refactoring and abstrating 2020-06-03 16:58:05 -05:00
Evan Pezent f59913b8e0 finish custom ticks 2020-06-03 14:37:01 -05:00
Evan Pezent b497e7f72d rename ImTick to ImPlotTick 2020-06-03 09:54:25 -05:00
Evan Pezent 6c9a720d2c ensure next plot data is initialized 2020-06-03 09:50:06 -05:00
Evan Pezent 6ea8b45d75 remove <limits> 2020-06-03 09:06:16 -05:00
Evan Pezent ea51c41b4a finish heatmaps 2020-06-02 22:07:27 -05:00
Evan Pezent 356e604bd2 colormaps 2020-06-02 12:34:14 -05:00
Evan Pezent 468ffe9ead initial heatmap prototype working 2020-06-01 22:14:22 -05:00
Evan Pezent 01f033bd8a Merge branch 'master' into heatmap 2020-06-01 17:33:29 -05:00
Evan Pezent 71e38ad770 start heatmap dev 2020-06-01 17:33:01 -05:00
SergeyN 7423636e16 minimal change commit (got transformers back) 2020-06-02 00:26:32 +02:00
ozlb f1cb4ea273
Assert messages, PlotDigital gap and data extents
. Fix assert messages for "Needs to be called between BeginPlot() and EndPlot()"
. PlotDigital gap initialization
. PlotDigital data extents disabled (digital channels are "pixel based")
2020-06-01 22:31:26 +02:00
Evan Pezent 3faaa5d25d add ability to render filled lines 2020-05-31 16:32:32 -05:00
Evan Pezent c7b10464a3 header cleanup 2020-05-31 09:28:34 -05:00
Evan Pezent a4d1d03456 reorganize header 2020-05-31 09:17:07 -05:00
Evan Pezent 0aa21d4b3f removed ImVec2* custom getters, use ImPlotPoint* getter functions 2020-05-31 09:07:24 -05:00
ozlb 519a2b68b0
v0.3 C++11 extension warnings
ImVec2() markers vector initialization
2020-05-29 23:31:50 +02:00
Evan Pezent 43625257b0 double precision work complete 2020-05-29 12:39:30 -05:00
Evan Pezent 5e82afdbdd change transformers names 2020-05-29 08:40:04 -05:00
Evan Pezent b62aeeb2ab double precision dev 2020-05-16 23:25:15 -05:00
Evan Pezent 2fd9d3f756 checkpoint 2020-05-16 21:53:59 -05:00
Evan Pezent 226ae4c10b checkpoint 2020-05-16 21:09:36 -05:00
Evan Pezent 3421c26270 change PlotBar to PlotBars 2020-05-16 09:14:48 -05:00
Evan Pezent 95aeba415e make default size arguments work 2020-05-16 09:11:29 -05:00
Evan Pezent c4e9d64600 rename plotting functions, add PlotScatter 2020-05-16 08:43:24 -05:00
Evan Pezent b783185acc rename plotting functions, add PlotScatter 2020-05-16 08:39:43 -05:00
Evan Pezent 0412b12e11 tidy up warnings fixes 2020-05-15 08:05:02 -05:00
Evan Pezent f383f8a914 merge pr 2020-05-15 08:01:00 -05:00
Evan Pezent daa689beb5 Merge branch 'master' of https://github.com/ozlb/implot into ozlb-master 2020-05-14 07:15:25 -05:00
SergeyN 17dba653a9 bbox overlap test to avoid disappearing lines when two ends end up outside culling area 2020-05-14 01:52:47 +02:00
SergeyN 1c1b5f965d rearrangement of bools to take less space in a struct 2020-05-13 23:33:36 +02:00
SergeyN ff5d61756f protection against buffer overruns in BufferWriter 2020-05-13 23:33:36 +02:00
SergeyN ea05677a7c warning fixes, removed conversions from float to double and back. removed static text buffers, use of secure sprintf functions on windows 2020-05-13 23:33:36 +02:00
SergeyN c6cc4082ab warning fixes, removed conversions from float to double and back. removed static text buffers, use of secure sprintf functions on windows 2020-05-13 23:33:35 +02:00
ozlb c71f893aeb
Merge branch 'master' into master 2020-05-13 17:25:26 +02:00
ozlb 36e0aa3ce1
C++11 extensions update after enums with ImPlot 2020-05-13 17:23:01 +02:00
Evan Pezent 9b098b816c
Merge pull request #31 from ozlb/patch-1
PlotDigital vs FitThisFrame
2020-05-13 09:21:00 -05:00
Evan Pezent a0c9dc120c trim trailing whitespace 2020-05-13 09:11:25 -05:00
Evan Pezent 8e25aec9f5 prefix all public facing structs and enums with ImPlot 2020-05-13 09:08:12 -05:00
ozlb 2a7430dae8
FitPoint on x 2020-05-13 11:10:14 +02:00
SergeyN e6003e3029 obvious optimization: call getter, transformer and cull test once per point instead of twice 2020-05-13 07:32:49 +02:00
ozlb 280cbf5cd4
Removed all C++11 extensions
src/implot.cpp:1270:25: warning: range-based for loop is a C++11 extension [-Wc++11-extensions]
        for (ImTick& xt : gp.XTicks)
2020-05-13 06:57:27 +02:00
ozlb d0e3f80506
Col_QryX unused 2020-05-13 06:48:48 +02:00
ozlb 1ea1a2664e
C++11 extension fixes
warning: range-based for loop is a C++11 extension [-Wc++11-extensions]
for (ImTick &xt : gp.XTicks) {
for (ImTick &yt : gp.YTicks[i]) {
2020-05-13 06:45:34 +02:00
ozlb f766614db0
PlotDigital vs FitThisFrame
FitThisFrame in PlotDigital it' not necessary due to actual nature of digital plot.
2020-05-12 15:26:44 +02:00
ozlb 99319d9fa7
PlotDigital FitThisFrame issue
FitThisFrame is triggering wrong fit for analog signals. It' not necessary due to actual nature of digital plot.
2020-05-12 15:05:14 +02:00
ozlb 2be5451140
namespace ImPlot 2020-05-12 11:19:04 +02:00
ozlb 53ea6a8cd4
QueryX removed for PR merge 2020-05-11 15:57:36 +02:00
ozlb 825198495e
Merge branch 'master' into master 2020-05-11 14:33:31 +02:00
ozlb b9ce343e98
QueryX ImGuiMouseCursor_ResizeEW 2020-05-11 14:30:57 +02:00
ozlb 036b4acaab
PlotDigital updates on ImPlot v0.2 2020-05-11 13:12:22 +02:00
Evan Pezent 329ad9dd80 tidy up multi y axis support 2020-05-11 00:45:46 -05:00
Josh Pieper 5eb4b71384 Support multiple Y axes simultaneously
This allows up to 3 Y axes to be used, one on the left side, and up to
2 on the right.  To use multiple axes, one of the `ImPlotFlags_Y2Axis`
or `ImPlotFlags_Y3Axis` must be passed to `BeginPlot`.  Then, before
each Plot call, SetPlotYAxis may be used to set that plot on an
alternate axis.

An extra line and ticks are rendered off to the right if all 3 axes
are configured (although those ticks are always only 5 long,
regardless of major status).  Each of the axes, when present, has a
(possibly invisible if ticks and labels are disabled) hit target that
can be used to scroll and scale that axis independently.

Some other changes were required to make this happen:
 * Queries are now only in pixel coordinates
 * ImPlotRange has been renamed to ImPlotBounds (and correspondingly
   GetPlotRange is now GetPlotBounds)
 * All APIs which allow querying values in plot coordinates now have
   an optional "y_axis" argument, which can be -1 to use the currently
   selected axis, or non-negative to pick a specific axes.
 * BeginPlot used to lock all flags on the first call.  Now it only
   locks the axis flags, and not the primary plot flags.
 * The mouseover text now renders the 2nd and 3rd axis in parenthesis.
2020-05-10 21:27:26 -04:00
Andras Kucsma 61a3124ca9 Identify NANs with isnan()
In C/C++ NAN == NAN is false, so isnan()
must be used to identify NAN values.
2020-05-10 18:19:54 +02:00
Josh Pieper 8d15bb6c41 Remove uses of the C++11 auto feature 2020-05-10 08:38:23 -04:00
Evan Pezent 1db64ff209
Update implot.cpp 2020-05-09 09:09:05 -05:00
ozlb 494b9eb61d
PlotDigital multi level
Plot digital channels as float (only positive values)
2020-05-09 06:54:16 +02:00
Evan Pezent 762660ddcc digital signals cleanup 2020-05-05 14:24:19 -05:00
Evan Pezent 8253189fc8
Merge pull request #6 from ozlb/master
PlotDigital
2020-05-05 13:45:36 -05:00
Evan Pezent 22cf50cc44 hard code color of pie labels 2020-05-05 13:41:18 -05:00
ozlb 1d900f123b
Fix rectangles accumulated at min pos
Fix rectangles accumulated at gp.PixelRange.Min.x position
2020-05-05 14:26:20 +02:00
ozlb 5e3b283f5e
Update implot.cpp 2020-05-05 08:56:25 +02:00
ozlb 0f76571e89
Update implot.cpp 2020-05-05 06:25:01 +02:00
Evan Pezent 3bc08a946c make pie chart labels const, remove unused vars 2020-05-04 08:47:39 -05:00
ozlb d539dc9a70
Plot only one rectangle for same digital state
plot only one rectangle for same digital state, do not extend plot outside plot range
2020-05-04 15:16:04 +02:00
ozlb 52ae8ff8cd
PlotDigitalEx optimization 2020-05-04 14:17:39 +02:00
ozlb 9b157783c7
Merge branch 'master' into master 2020-05-04 11:14:44 +02:00
ozlb 33ffd8e5c6
Cleanup and pixel density optimization 2020-05-04 09:26:52 +02:00
ozlb 2338c9b4c9
Curors
Cursors query handling
2020-05-04 09:09:33 +02:00
Evan Pezent ad01a01331 optimizations, add pie plot 2020-05-03 00:24:10 -05:00
Evan Pezent d32567fe15
Merge branch 'master' into master 2020-04-30 09:09:32 -05:00
ozlb f8db7405da
resolved conflicts with latest version 2020-04-30 15:45:03 +02:00
Evan Pezent 23931c7f07 add benchmark test, update double click fit, fix demo math include 2020-04-30 08:13:44 -05:00
ozlb a13de8ec98
Update implot.cpp 2020-04-30 15:01:28 +02:00
Evan Pezent 3c1ef11525 add custom rendering utils 2020-04-29 15:39:02 -05:00
Evan Pezent 6073a4ebb5 make query ranges dragable 2020-04-29 09:55:07 -05:00
ozlb bce306bd65
PlotDigital 2020-04-29 16:32:35 +02:00
Evan Pezent 363d469122 better query 2020-04-28 20:17:26 -05:00
ozlb 9a01d29bb3
BOX-SELECTION HasFlag() missing
'warning: left operand of comma operator has no effect [-Wunused-value]
         if (plot.Selecting && (plot.Flags, ImPlotFlags_Selection)) {'
                                ~~~~~^~~~~
2020-04-28 21:58:37 +02:00
Evan Pezent 128d52dbf6 add vertical labels and updated demo with example 2020-04-28 01:06:43 -05:00
Evan Pezent 50f4e94833 add ozlb's legend highlighting 2020-04-28 00:38:52 -05:00
Evan Pezent d515493aef add plot queries, improve box selection controls with modifiers 2020-04-27 23:57:49 -05:00
Evan Pezent b4e4f1a53c commit v0.1 source code 2020-04-27 10:27:59 -05:00