reuk
c8c4cdc7d5
EdgeTable: Add offset before truncating to somewhat restore old rounding behaviour
1 year ago
reuk
4f67a18a3f
EdgeTable: Avoid integer truncation when rendering paths with large coordinates
Previously, if the PathFlatteningIterator returned a line segment with
very large x or y positions, the result of
roundToInt (iter.y1 * 256.0f)
could be incorrect, if the result was too large to fit in an int.
Using int64_t to store intermediate results, converting to int when
updating the edge table itself produces accurate results for a wider
range of inputs.
2 years ago
Tom Poole
2ec861d99e
Update licensing banners to JUCE 7
3 years ago
Tom Poole
dea3fe60e4
Update copyright banners
3 years ago
reuk
1a4296e98b
EdgeTable: Avoid shifts of negative numbers
3 years ago
reuk
31a7c62baf
Windows: Fix and suppress some analysis warnings
This fixes warnings that are emitted when building with the `-analyze`
flag enabled.
4 years ago
ed
009d685179
Updated all license headers
4 years ago
Tom Poole
894e7d2bd2
Updated all license headers
5 years ago
Tom Poole
2d16374b14
Updated all license headers
5 years ago
reuk
327f817b9b
Copyrights: Update commercial/gpl headers to be gpl-only
5 years ago
jules
b028f299b8
Fixed some subtle (but benign) undefined behaviour with negative bit-shifts
7 years ago
jules
5e9267e5d8
Simplified the Path class by making it use an Array for starage.
7 years ago
jules
9d56e2990d
Optimised the GL renderer to avoid splitting large rectangles into horizontal strips unnecessarily
7 years ago
jules
24f023bb23
Added some heuristics to EdgeTable to try to improve the table size prediction
7 years ago
jules
93a22599d1
Tweaked the rate at which EdgeTable grows its internal storage, to improve performance rendering large and complex paths
7 years ago
jules
27a6903cac
Changed the way isPositiveAndBelow is written to avoid needing to cast the second parameter to an int
7 years ago
jules
eda613c6db
Moved all "namespace juce" declarations from module headers to the individual .h and .cpp source files. This makes life a lot easier for Intellisense and other IDE autocompletion tools
7 years ago
hogliux
b5afccc37c
Updated file headers and the README with the JUCE 5 license
8 years ago
jules
38d49a5ee7
Modernised a few RectangleList iterators
8 years ago
hogliux
c7b8e77031
Update copyright notice
9 years ago
jules
863895d107
Minor cleanups.
11 years ago
jules
a53110de06
Big speedup to path rendering on GL/software.
11 years ago
jules
59d719cc26
Increased the gamma of software-rendered fonts.
11 years ago
jules
bb98c00d0d
Avoided some pedantic compiler warnings in the audio plugin code.
11 years ago
jules
1c8a03c05e
Fix for edgetable rendering.
11 years ago
jules
abd3babc02
Minor optimisations and clean-ups.
11 years ago
jules
fc772941d6
Fixed some pedantic warnings.
11 years ago
jules
59d8d8172d
Replaced the crappy old juce sortArray function with std::sort, which seems to run twice as fast. This greatly speeds up edge table rendering.
11 years ago
jules
dbf7053861
New method Graphics::fillRectList(), which performs better (and looks better when scaled) than multiple calls to fillRect or drawVerticalLine. Also fixed DPI detection in Windows.
11 years ago
jules
29ada09816
Cleaned up some unused variables.
11 years ago
jules
08c9d5d22f
EdgeTable performance tuning.
11 years ago
jules
32c98223ac
Refactored some lowlevelgraphicscontext classes to remove duplicated code.
11 years ago
jules
1b9a60e52c
Added a templated type to the RectangleList class. If you've used this class and these changes cause syntax errors, all you need to do to your code is to replace "RectangleList" with "RectangleList<int>" and everything will work as it did before.
11 years ago
jules
03c2801f3f
Copyright header update in all module files. juce_core modules are now ISC licensed. All other modules are GPLv2/3/AGPLv3
12 years ago
jules
667a18712f
Added begin()/end() iterators to RectangleList. You should use these in preference to RectangleList::Iterator, as they're faster.
12 years ago
jules
07e7188eb1
Tidied up a few compiler warnings.
12 years ago
jules
295d125142
Stopped using the old BEGIN_JUCE_NAMESPACE macros, and just used hard-coded namespaces where necessary instead. The macro definitions are still there, so this shouldn't affect anyone's code.
13 years ago
jules
aff5fea6b4
Minor introjucer clean-ups.
13 years ago
jules
2c0902833d
Lock for multithreaded font rendering. Tweaks for some openGL settings. Updated the demo to have an openGL rendering engine option.
13 years ago
jules
115a171d76
Big OpenGLRenderer rewrite, plus a revamped OpenGL demo page to demonstrate 2D rendering.
13 years ago
Julian Storer
b70e0a28d2
First check-in of the "jucequake": a major re-organisation of the library to break it up into modules. For more details about this, see the website forum..
13 years ago
Julian Storer
f04309f44a
Added fake placeholder versions of the new c++0x 'noexcept' and 'nullptr' keywords, and altered the library classes to use these instead of 'throw()' and '0'. This shouldn't make any difference at all to existing code, but will enable better static checking with future c++0x compilers.
14 years ago
Julian Storer
904e1aba45
A couple of minor fixes, and changed code to use std::swap instead of swapVariables()
14 years ago
Julian Storer
5d98779f19
Updated the date in the copyright notice.
14 years ago
Julian Storer
99085429b5
Rewrote the AudioThumbnail class to support some new features like using readers and adding data directly to the thumb. Added an option to AudioFormatWriter::ThreadedWriter to take a thumbnail which it dynamically generates while recording. Added a couple of new maths functions: findMinAndMax, isPositiveAndBelow.
14 years ago
Julian Storer
1629f9f66a
Created a new method Graphics::beginTransparencyLayer(), to help with compositing semi-transparent rendering.
14 years ago
Julian Storer
b161c0f437
Minor code clean-ups.
14 years ago
Julian Storer
42666db484
Some win32 clean-ups.
15 years ago
Julian Storer
266494a1b9
Minor code clean-ups.
15 years ago
Julian Storer
27506c2120
Copyright notice update.
15 years ago