jkriege2
3fc8951851
made more STATIC data members thread_local or secured them by a std::mutex. This was at least JKQTMathText and JKQTBasePlotter should be usable in several threads
2023-06-30 13:52:17 +02:00
jkriege2
79d8dbad84
fixed some compiler warnings
2023-06-29 08:44:20 +02:00
jkriege2
cf43dc4a7e
made JKQTPPlotSymbol() thread-safe
2023-06-25 18:05:16 +02:00
jkriege2
41e63341b5
added concurrency tools header to jkqtpcommmon, initially with JKQTPSynchronized<T>
2023-06-25 17:51:21 +02:00
jkriege2
ddcc9ea462
BUGFIX: Error for PDBs when building STATIC libs on MSVC
...
BUGFIX: a variable in the ...Config.cmake-files was not set correctly
2022-10-06 11:54:18 +02:00
jkriege2
62f27ce9c1
NEW: When using a MSVC compiler, the generated PDB files are installed to CMAKE_INSTALL_PREFIX/bin/
2022-10-05 21:52:19 +02:00
jkriege2
7b715541e7
bugfixed parantheses for JKQTPCALTintslashfrac labels + some Codiga-Violations
2022-09-28 01:46:19 +02:00
jkriege2
c1b7f678c7
bugfixed issing include
2022-09-27 09:57:50 +02:00
jkriege2
2da8553e5d
NEW: barcharts may hav rounded corners now, via JKQTPBarGraphBase::setRectRadius()
2022-09-27 01:42:54 +02:00
jkriege2
d2c2185f9c
IMPROVED/REWORKED: reworked JKQTPCADrawMode and coordinate axis drawing so the draw mide can be specified as ORed combination of flags from JKQTPCADrawModeElements, added flags to draw arrows at the end of the axis line
...
IMPROVED/REWORKED: coordinate axis code was refactored
NEW: all elements of a coordinate axis may have their own color now
2022-09-23 20:43:53 +02:00
jkriege2
60a4656dd8
NEW: Added new JKQTPCALabelType elements (JKQTPCALTfrac...), so axis label ticks can be displayed as fractions 1/2 instead of 0.5
...
NEW: Added new JKQTPCALabelType element JKQTPCALTscientific, so axis label ticks can be displayed as numbers in scientific notation like 1.2E-34
auto-generate JKQTPCALabelType documentation
2022-09-22 00:44:54 +02:00
jkriege2
75db7cff42
dox update/fix
2022-09-19 21:55:12 +02:00
jkriege2
3c22130902
JKQTPlotter: IMPROVED/REWORKED: reworked JKQTPErrorPlotstyle and error indicator plotting so error-inidcators can be specified as ORed combination of flags from JKQTPErrorPlotstyleElements, added additional error indicator styles (half-bars, arrows...)
2022-09-14 22:03:46 +02:00
jkriege2
117ec4a84f
bugfixed compile errors in CI
2022-09-08 08:55:52 +02:00
jkriege2
ffe9e904bc
bugfix attempt for compile error with QDataStream and JKQTPGraphSymbols
2022-09-07 21:50:58 +02:00
jkriege2
bf1416d5a6
added possibility to register custom symbols for JKQTPPlotSymbol()
2022-09-06 12:39:23 +02:00
jkriege2
f6def4b9d1
add symbol JKQTPFilledCharacterSymbol
2022-09-06 11:59:11 +02:00
jkriege2
2831dcbfb5
jkqtcommon/jkqtpdrawingtools.h: added template-function to draw a decorated line
...
JKQTPlotter: add auto-generated line-decorator images
2022-09-06 11:07:52 +02:00
jkriege2
4f73fbbaed
JKQTPlottter: added the option to draw a character from a font as symbol (JKQTPCharacterSymbol+QChar('').unicode())
2022-09-02 14:19:47 +02:00
jkriege2
74d54abac5
JKQTCommon: refactoring of JKQTPPlotSymbol(): using static datastructures to store precalculated drawing instructions (polygons, QPainterPath, ...), this should improve the drawing speed a bit and makes the code less complex
2022-09-02 12:27:12 +02:00
jkriege2
4ef29635ea
JKQTPlotter: improved plotting speed for line-graphs by drawing a series of single lines instead of a polyline in some cases
2022-08-30 22:24:24 +02:00
jkriege2
abd62dc341
made randomnumber generators seeded with fixed values
2022-08-30 21:33:22 +02:00
jkriege2
889f95e7af
Merge branch 'master' of https://github.com/jkriege2/JKQtPlotter
2022-08-30 09:45:18 +02:00
jkriege2
eeff6e0036
fixed issue #73 : Symbol thickness differs in actual plot and legend
2022-08-30 09:44:40 +02:00
Jan W. Krieger
d7badaf424
workaround for old MS code!
2022-08-29 13:29:41 +02:00
jkriege2
d283f6b294
bugfix in JKQTPSimplifyPolyLines()
2022-08-26 11:34:03 +02:00
jkriege2
064f01d0b0
bugfixed optimized line-drawing
2022-08-25 22:32:34 +02:00
jkriege2
c3afee2c1f
replaced QVector<QPointF> by QPolygonfF, as Qt changes from QVector to QList with Qt5->Qt6
2022-08-25 17:46:57 +02:00
jkriege2
03031e3762
JKQTPlotter:
...
- NEW: improved plotting speed for line-graphs by a compression algorithm (see JKQTPGraphLinesCompressionMixin) that removes overlaying lines (e.g. in JKQTPXYLineGraph)
- NEW: improved plotting speed for line-graphs by a clipping algorithm (applies to JKQTPXYLineGraph, JKQTPGraphErrorStyleMixin, JKQTPSpecialLineHorizontalGraph, JKQTPSpecialLineVerticalGraph and others)
- NEW: improved plotting speed for scatter-graphs by not calling draw functions for symbols outside the plot window (e.g. in JKQTPXYLineGraph)
2022-08-25 15:17:50 +02:00
jkriege2
676b97a3ca
fixed several CMakeLists.txt issues
2022-08-22 20:35:24 +02:00
jkriege2
6c8d517f44
fixed CMakeLists.txt
2022-08-22 17:36:49 +02:00
jkriege2
37024ffe34
fixed compatibility with older Qt version (before 5.12)
2022-08-22 10:45:39 +02:00
jkriege2
5722970496
JKQTMathText:
...
- NEW: added environment-modifying commands for font sizes: \c \\tiny ... \c \\normalsize ... \c \\Huge
- NEW: added environment-modifying commands for text color: \c {\\color{COL}...}
- NEW: added environment-modifying commands for text formatting: \c {\\bfseries...}, \c {\\itshape...}, \c {\\bf...}, \c {\\it...}, \c {\\sffamily...}, \c {\\ttfamily...}, ...
- REFACTORING: split up several .h/.cpp-files in nodes subdirectory
2022-08-19 12:16:00 +02:00
jkriege2
5283a1a995
JKQTMathText: IMPROVED/REWORKED rendering of blackboard font: now several different rendering modes can be selected using JKQTMathText::setFontBlackboradMode()
2022-08-10 12:12:30 +02:00
jkriege2
7d686f0c9a
JKQTMathText:
...
- BREAKING/REWORKED: The \\verb!...!-command now works the same as in LaTeX
- NEW: added support for \\begin{verbatim}...\\end{verbatim}, \\begin{verbatim*}...\\end{verbatim*}
2022-08-03 16:12:19 +02:00
jkriege2
7e12fb331e
JKQTMathText: added support for \c \\char"HEX , \c \\char'OCTAL and \c \\charDECIMAL for inserting any uicode character code
2022-08-01 13:39:34 +02:00
jkriege2
edd7784d47
JKQTMathText: \\unicode{} now always accepts a codepoint and \utfeight{} a UTF8-seuqnece
2022-07-26 22:27:16 +02:00
jkriege2
231ee02087
moved some functions
2022-07-24 14:50:46 +02:00
jkriege2
f01a198b7b
fixed several doxygen errors
2022-07-24 14:50:28 +02:00
jkriege2
c399959774
fixed several (pedantic) compiler warnings
...
fixed CMake problems
2022-07-23 16:05:13 +02:00
jkriege2
8558896f9b
split jkqtcommon into basic tools and jkqtcommon_statistics_and_math for advanced math tools not used by all libs
2022-07-23 15:31:56 +02:00
jkriege2
e923a9de7b
improved CMake scripts: better output, less warnings
2022-07-23 13:59:23 +02:00
jkriege2
1c473e0717
removed compiler warning
2022-07-23 13:58:33 +02:00
jkriege2
ae3d3b479d
better way to reuse PCH in examples, added CMake-Option to (de)activate PCH-usage
2022-07-22 21:44:16 +02:00
jkriege2
671e25b33b
removed some compiler warnings and fixed construction problems
2022-07-22 16:24:24 +02:00
jkriege2
8b6e420c56
bugfix: added #define _USE_MATH_DEFINES needed for msvc to use M_PI, M_LN2...
2022-07-21 12:06:22 +02:00
jkriege2
25c55391ab
NEW: Using precompiled headers in CMake-build to speed up build times
2022-07-20 22:31:42 +02:00
jkriege2
5087970c79
updated copyright notice
2022-07-19 13:40:43 +02:00
jkriege2
ece49f2d2b
FIXED issue #80 : "Bug with multiple inheritance with Q_GDAGET with CLANG", thanks to user:igormironchik, caused by QTBUG-104874
2022-07-19 10:24:52 +02:00
jkriege2
d8c1524f61
partly solve issue #81 by making print-support optional. In addition it can be switched off with the CMake-option JKQtPlotter_BUILD_FORCE_NO_PRINTER_SUPPORT=ON
2022-07-18 23:33:20 +02:00
jkriege2
a1a2fcdd3f
clean-up of library dependencies
2022-07-18 15:01:12 +02:00
jkriege2
5bb0235b33
added QIcon-generating functions to jkqtcommon
2022-06-02 21:21:51 +02:00
jkriege2
03497b6c31
changed JKQTPColorDerivationMode from an ENUM to a STRUCT, which extends its capabilities significantly
2022-06-02 21:21:17 +02:00
jkriege2
b8088ccc69
improved/bugfixed doxygen documentation
2022-04-24 13:23:59 +02:00
jkriege2
e784a6d89f
fixed doxygen comment
2022-04-22 22:19:24 +02:00
jkriege2
b8f1ac7edb
fix for Qt < 5.14
2022-04-22 20:53:54 +02:00
jkriege2
687c23a654
bugfixes for QT5 build after QT6 modifications
2022-04-22 15:20:58 +02:00
jkriege2
0a5fa42470
more required changes for Qt6 compatibility
2022-04-22 13:27:31 +02:00
jkriege2
6bcb0b9a9f
Merge branch 'master' into add_qt6_compatibility
2022-04-21 21:28:49 +02:00
jkriege2
fbbc814331
using automatic memory management instead of local malloc()/free() pairs
2022-04-21 21:25:37 +02:00
jkriege2
3357ca4240
fixed issue #56 : exponent-labels were 0 below ~1e-16 ... reason was using <std::numeric_limits<double>::epsilon() instead of <std::numeric_limits<double>::min() for checking close to zero
2022-04-21 21:24:45 +02:00
jkriege2
b4eda85bfc
fixed two possible int-overflows
2022-04-21 13:59:49 +02:00
jkriege2
4ded1a2028
first round of Qt6 compatibility changes
2022-04-21 10:57:24 +02:00
jkriege2
8835febb96
modified CMakeLists.txt to match Qt6
2022-04-18 23:10:05 +02:00
jkriege2
725d19d616
using Qt's dllexport/import-macros
2022-04-18 22:00:41 +02:00
jkriege2
d51d47b2f4
requiring higher cmake-version, due to CMP0076
...
using CMAKE_CURRENT_LIST_DIR instead of CMAKE_CURRENT_SOURCE_DIR
2022-04-18 22:00:31 +02:00
jkriege2
2697e66e31
CMakeLists.txt: using target_sources() and making CPP-files private!
2022-04-18 14:19:35 +02:00
Stephan Oostveen
e7ca3db4de
Bug: JKMathParser exception return local variable
...
Fix the what() function which returned a pointer to a local variable.
2021-03-23 21:01:27 +01:00
Patrick Stewart
872b31bc2d
Add missing #include
2020-10-02 14:41:42 +01:00
Patrick Stewart
29e970ed6f
Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
...
This means that the project can be used with CMake fetchcontent / add_subdriectory
2020-10-02 14:40:47 +01:00
jkriege2
58403f8905
improved/breaking change: image plots now manage CONST-data, not plain pointer arrays... This is OK, since the raw data is never owned nor modified by the plot, only referenced!
2020-09-28 19:24:17 +02:00
jkriege2
0faa51c9f5
comment formatting fix
2020-09-21 13:52:13 +02:00
jkriege2
95d885bc2c
- bugfix: improved handling of DRAGZOOM-UserAction for log-log plots
...
- code (style) improvements
2020-09-08 20:15:33 +02:00
jkriege2
f77bc97ca5
- cleanup of class-hierarchy of evaluated functions
...
- added slots for several properties of evaluated functions
- updated examples
2020-09-07 20:58:20 +02:00
jkriege2
8c0c8bf62e
simplification/unification: JKQTPXFunctionLineGraph and JKQTPYFunctionLineGraph now use JKQTPAdaptiveFunctionGraphEvaluator to generate sample points
2020-09-05 12:44:02 +02:00
jkriege2
c57c672f78
new: a new graph class JKQTPXYFunctionLineGraph draws parametric 2D curves (f(t) -> [x,y])
2020-09-04 23:47:03 +02:00
jkriege2
33a9cb5b2d
bugfix: straight lines in pie and chord were not drawn as curve in DrawMode=DrawAsMathematicalCurve
2020-09-03 23:28:48 +02:00
jkriege2
279ef7880a
- improved: geometric objects now use an adaptive drawing algorithm to represent curves (before e.g. ellipses were always separated into a fixed number of line-segments)
...
- improved: constructors and access functions for several geometric objects (e.g. more constructors, additional functions to retrieve parameters in diferent forms, iterators for polygons, ...)
- new: all geometric objects can either be drawn as graphic element (i.e. lines are straight line, even on non-linear axes), or as mathematical curve (i.e. on non-linear axes, lines become the appropriate curve representing the linear function, connecting the given start/end-points). The only exceptions are ellipses (and the derived arcs,pies,chords), which are always drawn as mathematical curves
2020-09-03 23:08:52 +02:00
jkriege2
87755ce515
diverse code improvements, increased copyright year to 2020
2020-08-26 12:58:23 +02:00
jkriege2
5ad9ebdcbb
code styling improvements
2020-08-26 11:43:44 +02:00
jkriege2
35000a8e38
some fixes to documentation and geometry example
2020-08-23 13:58:47 +02:00
jkriege2
4e1c09c24b
improved arrows in geometric elements:
...
- JKQTPGeoLine, JKQTPGeoPolyLines and JKQTPGeoInfiniteLine support decorators
- improved decorator drawing
- more decorator types
- improved example geometry
- added specific example geo_arrows
- improved documentation
- code cleanup
2020-08-23 13:13:53 +02:00
jkriege2
9cba3fec25
bugfix: removed compiler warning
2020-08-21 18:40:30 +02:00
jkriege2
b3f4c64564
added geometric plot JKQTPGeoArrow object to draw arrows
2020-08-21 18:31:58 +02:00
jkriege2
7e9bad29b4
fix for issue #45 :
...
- for Qt 5.15: added missing #include statements that became necessary since Qt 5.15
- for Qt 5.15: fixed use of several deprecated functions
- for Qt 5.15/6: removed usage of QMatrix
2020-08-14 14:12:59 +02:00
jkriege2
eb7fd1d524
some bugfixes for VStudio NOMINMAX-problem ...
2020-06-29 08:01:40 +02:00
jkriege2
52d3349199
improvements in CMake setup:
...
- removed more global settings (these are now target-specific)
- exporting now Config.cmake, which contains find_package(Qt) and loads a separate Targets.cmake
2020-06-28 15:53:26 +02:00
jkriege2
04219ec6d9
fixed issue #37 : installing README/LICENSE files now to $PREFIX/doc/JKQtPlotter, instead of $PREFIX/doc/
2020-06-28 09:53:33 +02:00
jkriege2
b22b4ca935
Fixed Bug #43 : jkqtp_format() had undefined behaviour, because va_start was called with a ref-parameter, which does not work. Now there are 4 overloaded template variants. See https://github.com/jkriege2/JKQtPlotter/issues/43
2020-06-27 14:35:45 +02:00
jkriege2
d9086e99d2
bugfix for https://github.com/jkriege2/JKQtPlotter/issues/38 : BUFFER Overflow due to access behind LUT-size
2020-01-06 18:17:41 +01:00
jkriege2
2ab5b099d8
fixed typo which leads to Linux build fails!
2019-11-24 13:05:57 +01:00
jkriege2
10965843da
JKQTPHighResTimer now uses C++11 chrono lib as fallback
2019-11-24 12:21:06 +01:00
jkriege2
9a667b9c22
several compiler warnings fixed
2019-11-24 12:20:43 +01:00
jkriege2
54f7dba0bf
bugfix: removed some unneeded functions in mathparser
2019-11-24 10:52:24 +01:00
jkriege2
56660e2f4b
fixed several compiler warnings (mostly Visual Studio): clean-up of use of math constants M_PI ... and j0()/j1()/...-functions etc.
2019-11-24 10:42:44 +01:00
jkriege2
4c9db88a2e
some more fixes do MSVC build
2019-11-21 21:42:10 +01:00
jkriege2
307f477626
fix issue #19 : got rid of jkqtpArrayMalloc(), jkqtpArrayCalloc(), jkqtpArrayFree() (which were a remenant of QuickFit 3 and not really portable or useful)
2019-11-18 16:15:49 +01:00
jkriege2
f3fa587541
reworked CMake build system ... now JKQT...Config.cmake-files are written into the correct directory
2019-11-18 15:59:06 +01:00
jkriege2
d494407e76
fixed some compiler warnings (qSort is deprecated ... using std::sort instead)
2019-11-18 13:08:42 +01:00
Dan Timson
3a1b536c58
Minor documentation clarifications
2019-09-16 18:05:40 +01:00