summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/engine/scatter3drenderer.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Update license headersMiikka Heikkinen2015-10-201-11/+14
| | | | | Change-Id: I0581aefcf9dabc64b05eb8c97b5b92da1fb26299 Reviewed-by: Titta Heikkala <titta.heikkala@theqtcompany.com>
* Copyright header changesMika Salmela2015-04-141-3/+3
| | | | | | | Copyright header changes for 5.5. Change-Id: I0361cfe1ebdb28955cb927700f14cf7b72694421 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@theqtcompany.com>
* Support larger custom meshes.Miikka Heikkinen2014-11-181-3/+3
| | | | | | | | | | Vertex index was limited to unsigned short, meaning even slightly complex meshes couldn't be used. Changed to unsigned int. Also removed unused vertex indexer methods. Change-Id: Iebe62bd3a501dc79ee2857cca28ac0d05bd4a55e Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Change copyright headers.Miikka Heikkinen2014-11-071-7/+7
| | | | | | Change-Id: I453438fee92f18c983c1bef04c68b24a7ff72cf9 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com> Reviewed-by: Mika Salmela <mika.salmela@theqtcompany.com>
* Support for dynamic opengl builds.Miikka Heikkinen2014-10-291-294/+279
| | | | | | Task-number: QTRD-3392 Change-Id: I786bbf5ee9252b92d43d02d6b88ed9b986b4a5eb Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix scatter item autosizing.Miikka Heikkinen2014-10-151-8/+10
| | | | | | | | Autosizing only accounted for freshly changed series when calculating the total item count visible in the graph. Change-Id: I7c0990123d3e3827c3518713f5389fedf91aca92 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix context cleanupMiikka Heikkinen2014-10-131-0/+2
| | | | | | | | | | Context was not getting properly cleaned up in cases where render thread stopped before the cleanup took place. Now we ensure that required cleanup is done before context thread terminates. Change-Id: I1489914dafec928eebb69bac737f6f858ff49432 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix screen position based queries in threaded rendering environmentMiikka Heikkinen2014-10-091-0/+1
| | | | | | | | | | | | | | | | QtQuick's threaded renderer doesn't seem to always pair up sync and render (or more accurately, beforeSynchronizing and node's preprocess calls). Sometimes sync comes without a followup render, or there are two syncs in a row, even though the sync is using direct connection. Both of these cases broke the old logic for handling position based queries. Changed the logic to actually ensure we have resolved the query before emitting the relevant signal. Task-number: QTRD-3358 Change-Id: Ica6c8c311f53a06311c21532aaabc18c28556655 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix crash when removing and changing items for same frameMiikka Heikkinen2014-10-061-0/+2
| | | | | Change-Id: I4fadd0cc741bf2b633d248b304c45b109a40eedc Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix static optimization errorsMiikka Heikkinen2014-10-031-1/+2
| | | | | | | | | | - Buffer ids were not cleared appropriately - Update didn't account for items outside axis ranges - In some cases wrong shader was used for point series Task-number: QTRD-3353 Change-Id: Iea465d99eb557402feb5fb017ae92393ee8f377f Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix changing items in static optimization modeMiikka Heikkinen2014-10-031-21/+66
| | | | | | Task-number: QTRD-3344 Change-Id: I8c1d2e2ae4afd6f9058c59adfc3d784b5f724358 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix selection color and gradient for static optimizationMiikka Heikkinen2014-10-011-25/+77
| | | | | | | | | | Added separate shaders for rendering selected items, as the texture mapping that the regular static optimization shaders expect is not correct for single objects. Task-number: QTRD-3306 Change-Id: I6eb6cef94a4d2b4e5bdd03748f18db641a9fc4f6 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Make background margin configurableMiikka Heikkinen2014-09-301-10/+67
| | | | | | | | | | | Added margin as abstract graph property. If the margin is narrow, the positions of theedge labels of the axes are adjusted to avoid overlap with edge labels on other axes. Task-number: QTRD-3204 Change-Id: I7fa5a04c8f2091519d99689ef2f6cbcf799fb15e Reviewed-by: Mika Salmela <mika.salmela@digia.com> Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Implement zooming to cursorMiikka Heikkinen2014-09-261-3/+7
| | | | | | | | | Zooming to cursor is now default operating mode of the default input handler. Task-number: QTRD-3263 Change-Id: I5699fc0ce7393059538972cd52f31f06d87e3d8d Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Change custom labels to use label shaderMiikka Heikkinen2014-09-191-13/+0
| | | | | | | | | This fixes the problem with specular highlight making camera-facing labels unreadable. Task-number: QTRD-3276 Change-Id: If16424b07a1f3362428980353c5fb5213c33d06b Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Full update for static buffers when data updatedMika Salmela2014-09-171-1/+8
| | | | | | | Task-number: QTRD-3322 Change-Id: I6ac9e0506ed7355e06d2174d8f8f551cb82b8a86 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Limit volume to axis rangesMiikka Heikkinen2014-09-101-0/+40
| | | | | | | | | The volume object that would go partially outside axis ranges is scale and repositioned so that it only renders the portion that is inside the axis ranges. Change-Id: I792494e437998ba6276f58fab645767276c1476d Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* ES2 gradient support for static optimizationMika Salmela2014-09-041-0/+23
| | | | | Change-Id: I3d5d5d006a26225a3a7ab5795fceb97630db0011 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Add option to use low definition volume shader.Miikka Heikkinen2014-09-021-5/+2
| | | | | | | | Low definition volume shader samples the texture at even intervals, so it will sometimes skip texels, causing flickering. Change-Id: Iee6cb0e8893498b89ce1a40f34701a53d100283e Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Unified gradient for pointsMika Salmela2014-08-291-3/+4
| | | | | | | | | | Made gradient image same size as the texture and similar calculation for the pixel. Result should be more coherent for all. Task-number: QTRD-3295 Change-Id: I666dacc6f525258ccefda288e26cac480cb385cb Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Range gradient for points on static optimizationMika Salmela2014-08-281-6/+18
| | | | | Change-Id: Ic44a6a28617f272540d146f02bf50b4bd84cd9c8 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Diffuse and specular color for static optimizationMika Salmela2014-08-271-16/+1
| | | | | Change-Id: I2c51ba06c6af9193a70f4a268dfd2fbd6c6910b3 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Fix build issue with Qt 5.2.1Miikka Heikkinen2014-08-271-2/+2
| | | | | | | | | | | | | | QImage is not a QObject, and therefore QImage::Format doesn't seem to be a supported type for a Q_PROPERTY, either. At least this was the case in Qt 5.2.1. In Qt 5.3.1 this worked. In any case, worked around the issue by removing textureFormat as a property. This shouldn't be an issue, since texture cannot meaningfully be manipulated from QML anyway. Also fixed some compile warnings. Change-Id: I257c1502d3340c49c24085fb8bf2e6176d875215 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Gradient color style support for complex meshes on staticMika Salmela2014-08-191-1/+48
| | | | | Change-Id: Ie9f135a2f3139a429a451c338e03dcf0ea6b4533 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Implement volume rendering supportMiikka Heikkinen2014-08-181-7/+12
| | | | | | | | New subclass of QCustom3DItem, QCustom3DVolume is provided. The documentation for the example will be done in a separate commit. Change-Id: Idb3fdb0654c6bec7606ca012b75852a5a8412397 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Enable camera targeting.Miikka Heikkinen2014-08-061-9/+11
| | | | | | | | | | | | | | | Also fix custom item positioning in absolute mode as it was completely broken in bars and z-coord was flipped in others. Clarified Q3DObject::position property usage, namely that it is reserved for internal use for now. Some refactoring also done. Task-number: QTRD-2567 Change-Id: I5da65b83a2f8ecf20f8fd054e59748278ef1a714 Reviewed-by: Titta Heikkala <titta.heikkala@digia.com> Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Texture to surfaceMika Salmela2014-07-041-2/+2
| | | | | | | | API for setting a texture to surface. Task-number: QTRD-3232 Change-Id: Icd9de61882b54b9c1fc84a742e49980926ca681d Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Fix non-visible selected item drawing in static optimization modeMiikka Heikkinen2014-07-021-69/+71
| | | | | | Task-number: QTRD-3207 Change-Id: Ib7101aa66ed4e11b8be61975239e55f7dd9eff10 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Fix labels and grid lines changing size when aspect ratio is changedMiikka Heikkinen2014-07-021-28/+40
| | | | | | | | | | | Since shaders needed fixing anyway for surface because of this, also implements the support for object gradients for surface, which was missing. Task-number: QTRD-2666 Task-number: QTRD-3211 Change-Id: I0c5da7fdfef308a96ec0bae4750fd22035da4e82 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Added horizontal aspect ratio property for abstract graphsMiikka Heikkinen2014-07-011-20/+21
| | | | | | | | Value 0.0 indicates automatic scaling (the default). Task-number: QTRD-3192 Change-Id: I5e4cc1b7a03c0ba811e2ed3916a440906429af57 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Fix custom item position in polar graphsMiikka Heikkinen2014-06-301-4/+8
| | | | | | Task-number: QTRD-3184 Change-Id: Id2550a143021771341d5bfef7e08cd5868404ca5 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Adjust background margins based on angular labels and titleMiikka Heikkinen2014-06-301-25/+58
| | | | | | | | Also separated the vertical and horizontal background margins. Task-number: QTRD-3184 Change-Id: I988217d4df7749585dd85b5ea8f3f50254dca6ad Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Fix polar axis title positioningMiikka Heikkinen2014-06-271-2/+21
| | | | | | Task-number: QTRD-3184 Change-Id: I366f41b928e06931784c6ff74e9b6b8a52414e3f Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Removed unnecessary texture enablingsTomi Korpipää2014-06-271-6/+0
| | | | | Change-Id: Ia35d2b73a76372c7e92670bb2c379ebc2f387b4a Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Polar chart for scatterMiikka Heikkinen2014-06-261-270/+261
| | | | | | Task-number: QTRD-3184 Change-Id: Ie8e10050e58a3630eda87ec44fb342776d667ae6 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Add flipHorizontalGrid property for surfaceMiikka Heikkinen2014-06-261-0/+1
| | | | | | | | | | | | This property allows drawind the horizontal grid and axis labels on top of the graph rather than on the bottom. This is useful when surface graph is used for 2D spectrograms in orthographic mode, as otherwise the grid is covered by the surface itself. Particularly relevant for polar plots of the same. Task-number: QTRD-3184 Change-Id: I9dbcdbfc754e13af52d2cf31a1d9991ef4b241f7 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Polar graph support, phase oneMiikka Heikkinen2014-06-261-16/+14
| | | | | | | | | | - Polar property for toggling the polar mode - Example added. Example docs will be added in another patch once all of the functionality the example needs has been implemented. - Only surface graph supports polar so far. Scatter to be added later. Change-Id: I54d36f764ac1771ac88f73a5f3a2142f2309f6e8 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Added some extra checking for selection texture creationMiikka Heikkinen2014-06-241-1/+2
| | | | | Change-Id: Iedeaa2581c32b6d46168568fef736b234ac17e95 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix for static optimization crash on androidMika Salmela2014-06-061-1/+13
| | | | | | | Added checks if visible items really exists and if buffers are empty. Change-Id: Id29f87924e098c6f8b7b57bc74543ce37787995f Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix missing axis titles with zero rotation and fixed titlesMiikka Heikkinen2014-06-061-7/+8
| | | | | Change-Id: I026578b224772fe9d96f6f7789e253d433690091 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Change label polygon offset to follow draw orderMiikka Heikkinen2014-06-051-3/+6
| | | | | Change-Id: I6b0bbb458fe9eae9664cd50f9b20f672b08cf4b9 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Clean upTomi Korpipää2014-06-051-13/+23
| | | | | | Task-number: QTRD-3149 Change-Id: Ife8937e93b06b118b369ff909097a137106736cf Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Scatter perf improvementMika Salmela2014-06-051-38/+230
| | | | | | | Task-number: QTRD-3148 Change-Id: I2c9efa84184819aaac123ee29685bc3a9e35bfe6 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Misc fixes found during testingMiikka Heikkinen2014-06-041-0/+2
| | | | | | | | | - Memory leaks - Y-axis placement issues in scatter and surface Change-Id: I7ec6c9c3e53502445b52c049c973186a7c54c95f Reviewed-by: Titta Heikkala <titta.heikkala@digia.com> Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Clean up renderersTomi Korpipää2014-06-031-21/+0
| | | | | | | Task-number: QTRD-3149 Change-Id: I71b9b7533ad3730d0d203c3d07e66d824b690fbb Reviewed-by: Titta Heikkala <titta.heikkala@digia.com> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Fix various issuesMiikka Heikkinen2014-06-021-2/+5
| | | | | Change-Id: I4a6d4775f3ca578370a9ce23491bddcb0f5486ec Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix labels transparency within each axisMiikka Heikkinen2014-05-281-69/+88
| | | | | | Task-number: QTRD-3141 Change-Id: I8ca51b411e2d92e0c615c81d215d89575d614acd Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Optionally show axis titles on the graphMiikka Heikkinen2014-05-271-32/+28
| | | | | | Task-number: QTRD-2961 Change-Id: I6a344156bd29fa8fb1ede0546af4d0e67e5e2db4 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Added API for changing data aspect ratioTomi Korpipää2014-05-261-31/+36
| | | | | | Task-number: QTRD-3144 Change-Id: I9acd1be13083d7fbbed840882260a60f46c5f698 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Cache ObjectHelper instancesMiikka Heikkinen2014-05-221-15/+9
| | | | | | Task-number: QTRD-2792 Change-Id: I90d83bd9b73a0f337fd26f1b92000e72b3ec0607 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>