aboutsummaryrefslogtreecommitdiff
path: root/main.cpp
AgeCommit message (Collapse)Author
2023-06-06BarChart, Wayland.Samuel Fadel
* Makefile: Added some Wayland stuff to cflags/libs in pkg-config * barchart: Rendering works, no interactivity * main.cpp: Reposition some components for a more compact view * manifest.scm: glfw-wayland: Added GLFW variant with Wayland * scatterplot.cpp and voronoisplat.cpp: Cleanup
2023-06-05* main.cpp: Safer colormap/metric names.Samuel Fadel
2023-06-04More fixes to rendering, same as original except for point outlines.Samuel Fadel
2023-06-04Further advances in nuklear port.Samuel Fadel
Rendering now looks similar to Qt version, needs a few tweaks: * Proper multisampling * Background Missing features: * Barcharts * Interactivity (e.g. brushing/linking in all objects) * History view of interactions
2023-05-23Massive changes in initial port away from Qt.Samuel Fadel
2016-08-31Removed labels handling and bundling when selecting regular points.Samuel Fadel
2016-04-13Bundling now supports selection.Samuel Fadel
Selection is implemented via main() updating the line plot using the current active selection. Beware of bug (issue #23). Also adds support for setting the line width, while changing the default line width to 2 pixels wide. ProjectionHistory: now reports changes to selections relative to the whole dataset, not only CPs/RPs.
2016-04-04LinePlot: working properly (and updates settings).Samuel Fadel
Added the several options to the bundling (from CUBu) as properties of the LinePlot component, which are set from the options UI. In addition, many changes to the UI regarding those options. Added a new shortcut to hide options (for cleaner demos).
2016-03-15Initial CUBu support & LinePlot (with bundling) component.Samuel Fadel
2016-03-10main(): shuffle() values were being ignored, now fixed.Samuel Fadel
2016-03-04main(): fixed code for init'ing CP projection.Samuel Fadel
Minor code improvements in forceScheme() and dist().
2016-03-04main(): small change to output message.Samuel Fadel
2016-03-03BarChart is now also updated during rewinding.Samuel Fadel
In addition, rewinding is now done with Ctrl+RMB.
2016-03-02Improvements related to ColorScale and screenshots.Samuel Fadel
* ColorScale: now a pointer whenever needed. main() takes care of updating extents * New class DivergentColorScale: works specifically for divergent scales, always has 3 colors as input: negative values, 0, positive values * ManipulationHandler: ProjectionHistory no longer needed
2016-02-28Added colormap orientation & improved UI.Samuel Fadel
* Colormap: orientation now enables vertical & horizontal colormap display * Two colormap components, one for each type of point (regular, control) * Improved controls grouping and cohesion
2016-02-12Refactoring of Projection{Observer,History} & ManipulationHandler.Samuel Fadel
ProjectionObserver class has been removed, all of its functionality is now inside class ProjectionHistory, thus dealing with the design problem mentioned in the previous commit. ProjectionHistory is now also responsible for all rewinding functionality, which makes more sense.
2016-02-12Many bugfixes related to ProjectionObserver.Samuel Fadel
* Correct handling of relative metrics in UI * undo(), reset() methods added * Main class responsible for undoing and resetting both history and the observer (MUST BE AT THE SAME TIME! -- this might indicate a design issue to be addressed in the future)
2016-02-11BarChart: correctly displays current selection.Samuel Fadel
2016-02-11main(): minor reoganization in signal connections.Samuel Fadel
2016-02-11Modified the way the history interacts with other components.Samuel Fadel
* Main class is now responsible for updating map components whenever the current map changes (even rewinding): this simplifies other objects because they don't have to know anything about how the data is being displayed later (no CP/RP juggling everywhere) * Added undo/reset actions to main view, including menu items * ProjectionHistory now has specific signals for each change happening to the history
2016-02-11main(): Removed method call to set glyph size in rpPlot.Samuel Fadel
2016-02-10Added ProjectionHistory object for history tracking.Samuel Fadel
2016-02-10Updated signal/slot connections to function pointers.Samuel Fadel
Also, some small changes in Scatterplot and VoronoiSplat to accomodate this.
2016-02-09Slightly reworked rewinding; added values rewinding.Samuel Fadel
Needs a solution to the problem of which values must be displayed and/or interpolated. Currently, whenever the user rewinds, the current error measure is displayed, regardless of what was being displayed before. This will probably be trivial to solve once we have a nice way of changing the current measure. * Also changed all OpenMP-powered for loops to use signed integers, requirements of OMP2.x (which is what MSVC supports currently) * The above change comes with a new header for utility functions
2016-02-09Added TransitionControl and plot rewinding.Samuel Fadel
New component overlays main view and handles middle clicks/drags to performing rewinding. Also sports smooth transitioning back to current projection whenever the mouse button is lifted. Next up, the same kind of transitions in the displayed values.
2016-02-08User can now select RPs & CPs, using the R & C keys.Samuel Fadel
2016-02-08main(): Better handling of absent/invalid options.Samuel Fadel
2016-02-03Removed OpenGL version request from main().Samuel Fadel
It seems that Windows does not support the currently set version while not setting a version works.
2016-01-29More informative splat parameters.Samuel Fadel
2016-01-29Changed default color scale to a rainbow variant.Samuel Fadel
2016-01-29Fixed issue #18.Samuel Fadel
2016-01-28ProjectionObsever now responds to selection changes.Samuel Fadel
* Scatterplot: small fix to selection updates * ProjectionObserver: whenever CP selection changes, compute influence of CPs over all RPs. Whenever RP selection changes, compute influence of RPs by all CPs. * ProjectionObserver: with empty selections, go back to normal mode
2016-01-27Regular points now visible by default (and quite small).Samuel Fadel
2016-01-27Scatterplot & BarChart brushing functional.Samuel Fadel
Scatterplot brushing needs some improvement, feels clumsy.
2016-01-26Scatterplot & BarChart: initial brushing mechanism.Samuel Fadel
* Both components now support brushing (support in Scatterplot for activating a brush is still incomplete, though it can be brushed on by other components) * Added a handler for linking the brushing between components * Added crosshair geometry handler to geometry lib * Fixed issue #15
2016-01-26VoronoiSplat & main(): moved all skelft to VoronoiSplat.Samuel Fadel
2016-01-25Scatterplots & splat now share the same scaling.Samuel Fadel
2016-01-21Added selection linking. Needs more tests.Samuel Fadel
2016-01-21Added second bar chart.Samuel Fadel
Bar charts are now exclusive to the type of points they are assigned to (either CPs or RPs).
2016-01-20main(): better code for loading CP data.Samuel Fadel
2016-01-20Added color scale selection and aggregate error.Samuel Fadel
* Projection metrics can be shown as current, diff to previous and diff to original (original seems bugged, beware)
2016-01-19Updated options & hacks to change color scales.Samuel Fadel
2016-01-18Added observer to update values displayed based on some metric.Samuel Fadel
* Modified main() function to connect signals/slots to display calculated values * Color scales are no longer shared; they are also normalized to each component's own data * Stub mouse handling in BarChart (changes cursor shape)
2016-01-17BarChart: Added color scale support.Samuel Fadel
* Color scale's extents are not changed: the values are supposed to match the values used in the other plots * Temporarily removed the bar outlines in order to properly display colors when the number of bars is equal to or greater than the number of available pixels to draw
2016-01-17Added a options panel.Samuel Fadel
* Added screenshot action that saves two images: one of the main view (plot + splat) and one of the bottom view (bar chart) * Added methods/signals/slots to Scatterplot for handling glyph sizes * Added methods/signals/slots to VoronoiSplat for handling the alpha/beta parameters, which are now also no longer fixed * Options panel: - glyph sizes of both CPs and RPs - splat opacity - splat parameters (alpha & beta) - color scale combo box currently does nothing
2016-01-16Added the Colormap component.Samuel Fadel
* The Colormap component is a simple rect with a texture mapped that displays a ColorScale with a fixed number of samples. This number of samples is exported as a member const, which is used on other components (such as VoronoiSplat). * The texture mapping is reflecting the colormap lookup used in VoronoiSplat. * The ColorScale class now has a method for sampling the color scale and outputs the samples to iterator-style objects, providing easy intergration with existing code.
2016-01-15VoronoiSplat & Scatterplot: splatting is now a separate component.Samuel Fadel
The change was due to future functionality requirements, this separation provides grater flexibility. As a nice side effect, the cropping bug when first rendering the splat is now gone.
2016-01-15Main: updated visuals.Samuel Fadel
* Multisampling setup code is now more conservative. * Full plot's glyphs are now invisible by default.
2016-01-13Scatterplot: individual glyph opacity methods & signals.Samuel Fadel
* Removed code that handles selection coordination between cpPlot and full data plot from main * Full plot has control points invisible (opacity = 0) by default
2016-01-13Subsamples/samples renamed to control points (CP) where possible.Samuel Fadel