-
Notifications
You must be signed in to change notification settings - Fork 1
/
NEWS
279 lines (250 loc) · 12.1 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
[Most recent at top]
Release 0.8.1:
- Add application icons and Linux .desktop file.
- Remove deprectated code (binary_function & QXmlSimpleReader).
- Minor changes to built-in documentation.
- Tweak dialog layouts a bit.
Release 0.8.0:
- Show lock icon on images and allow lock toggling with left click.
- Allow zooming with mouse wheel.
- Improve enlarged image display.
- Save window size, function path & image path in settings.
- Use standard shortcuts for some actions.
- Remove some boost dependencies.
- Get Windows build working with MinGW.
- Update build to work on Debian Jessie.
Release 0.7.1:
- Uses `CONFIG += ordered` in `main.pro`; enables parallelised make.
- Fold in typos fixed by Debian downstream.
- tarball on Sourceforge files.
Release 0.7.0:
- Got to compile vs Qt5.9.1 on Debian Stretch & Jessie; preparing for Qt5-only on Buster.
- Get rid of precompiled header use (more trouble than it's worth these days).
- Upgrade std::auto_ptr use to std::unique_ptr - cleans up compiler's deprecated warning spew.
From release 0.6.3:
- Version to 0.6.4
From release 0.6.2:
- Version to 0.6.3
- Files derived from USAGE (evolvotron.html and usage_text.h) are now under
svn control and no longer need to be generated as part of the build of a
fresh checkout.
- Migrated to new SourceForge platform.
Needed: svn switch --relocate https://evolvotron.svn.sourceforge.net/svnroot/evolvotron "svn+ssh://timday@svn.code.sf.net/p/evolvotron/code/"
From release 0.6.1:
- Version to 0.6.2
- CHANGES renamed to NEWS
- License boilerplate managed using "headache"
- Add some "tartan" inspired functions.
- Add pixel/voxel/hex grid quantizing functions.
- Port command line options to boost::program_options,
rationalize commandline options.
- Fix to evolvotron_mutate from Pedro Gimeno.
- Update mkdeb script to work on squeeze
- Functions to be loaded on startup can be specified on the commandline.
- Add option to shuffle startup functions.
From release 0.6.0:
- Version to 0.6.1
- Fix bug in saved functions: quotes missing around version attribute
From release 0.5.1:
- Version to 0.6.0
- Switch to Qt4.
- (Qt4 related) keyboard shortcuts rationalized
many removed, ctrl-modifiers dropped
- (Qt4 related) image displays now have a frame around them
- (Qt4 related) Remove non-standard Qt animated PNG support
- evolvotron_match removed
- Platform specific code (e.g number of processors identification)
isolated in libevolvotron/platform_specific.[h|cpp]
and selected by PLATFORM_LINUX or PLATFORM_BSD
(Fink Qt's __DARWIN_X11__ also detected and used to select PLATFORM_BSD).
- Repository migrated to svn
From release 0.5.0:
- Version to 0.5.1
- Replace not often used frontside heating/cooling buttons with autocooling mechanism.
- Separate tabs for info & license on "About" dialog.
- Better formatting of function properties dialog, and also shows XML function tree.
- Dialog with rendering controls
- Multisampling (antialiasing) options
- -a/-j/-s command line options for autocool/jitter/multisample
- evolvotron_render adds -j/-s to control jitter & multisampling
- Option (-E) of separate thread pool (with different nices: -n/-N) for enlargements.
Task totals for each reported separately.
- Enlargement and solo renderings are fragmented into multiple smaller
jobs to better utilize multiprocessor systems.
- Generally better use of ref-counted QImage and QPixmap.
- Middle-mouse drag adjustments flicker less.
From release 0.4.0:
- Version to 0.5.0
- Lists of functions in alphabetic order.
- New FunctionTop always at top level.
- New functions: Frieze groups.
- Constantness of functions more conservative (less overrides) and hopefully less buggy.
- Final colour space transform range more constrained to keep colours sane.
- More sensible mutation of top level spatial transform (less arbitrary shearing).
- Note that above changes mean old saved functions will appear different.
- New mutation parameter: probability of a function's parameters being reset.
- Code clean up:
- More std::auto_ptr, boost::shared_ptr, boost::ptr_vector. Code is now delete free.
- Get rid of hacked static function registration; uses auto-generated register_all_functions.
- Compute threads use QWaitCondition, not polling.
- Default number of threads is number of processors.
- Compute threads run at lower priority.
- -n <niceness> command line option to control compute thread priority.
(NB assumes Linux NPTL's non-Posix compliant behaviour of threads NOT sharing a common nice value;
see "man pthreads" on Linux.)
- About dialog displays number of threads.
- Use precompiled headers (build time 2m45s down to 1m45s).
- code_review script
- Set an icon on various dialogs and main frame.
- Add -D (function debug) massively weighting in favour of FunctionNoiseOneChannel. Useful with -x/-X.
- Believed to fix Debian bug #436231 and gentoo #144160
- MutatableImage has serial number (fix problems caused by pointer value being wrongly used as equivalent)
From release 0.3.1:
- Version to 0.4.0
- Lock state moved to mutatable image so is stored in undo history
- Mandelbrot & Julia set only in x,y plane. Julia set uses fixed parameters.
- Add Juliabrot.
- Fix "Randomize" button on "All" functions tab.
- "Favourite" function dialog provides access to -x/-X command-line functionality
- Undo after reset works better
- Fix broken FunctionGradient.
Replace with GradientOfMagnitude, DivergenceOfMagnitude, Divergence, Curl
- Migrate float->double via typedef real
- Always builds with fullscreen option.
From release 0.3.0:
- Version to 0.3.1
- Fix for gcc 3.4
- ./configure made (slightly) more robust
From release 0.2.3:
- Version to 0.3.0
- Get rid of troublesome system call to ../VERSION
in common.pro and pass settings from configure script instead
- Add not-very-useful .qt-mng image file output format
- Add function stats to Properties dialog
- Add function simplification (more useful for debugging than anything)
- Don't use True and False in doc-building python script
(seems to be quite new thing, not in 2.1.x ?). Use 0 and 1 instead.
- Internal changes
- Add pkg/debian .deb builder script (still under development)
- Fix buggy Y rotation matrix
- Eliminate template-tastic Tuple and Matrix classes.
Fix XYZ and Transform to not require them.
- evolvotron_mutate - -g option more likely to generate insteresting functions
- -linz and -spheremap options where appropriate
- evolvotron_match utility.
- New dialog for function weightings (not fully implemented)
From release 0.2.2:
- Version to 0.2.3
- Break out USAGE file from README
- Add text_to_markup.py script to prettify USAGE file, used from configure
- Add quick reference and user manual accessible from help menu
From release 0.2.1:
- Version to 0.2.2
- CPU type an option to ./configure (p3,p4,xp supported)
- Build option for fullscreen & menu-hiding modes (from keyboard or command-line)
- Fullscreen mode for "Big" image displays
- Change default grid to 6x5 (would sooner have fat than thin images)
From release 0.2.0:
- Bump version to 0.2.1
- Display (not compute) priority to higher resolution images
(saves time enlarging low res images unnecessarily)
- Blank images on replacement (above change makes this more necessary)
- Round-robin dispatch of done tasks to displays means redisplay more balanced.
- -x and -X command line options to specify specifc top level function types.
- FunctionKaleidoscope*, FunctionWindmill*, FunctionSeparateZ added.
- More iterative functions also added: FunctionStreak Function*Ring
- Added -f <frames> option to evolvotron_render
- Internals: function framework changed (avoids FunctionNodeUsing::evaluate wrapper), speed improvement ?
- Internals: Type of top-level node can mutate, MutatableImage more sane.
- "Undo" keyboard accelerator works
- Per-image display "Properties" dialog added (placeholder)
From release 0.1.4:
- Bump version to 0.2.0
- Filenames converted to/from QString using Qt's "local8Bit" codec.
- -f option specifies number of frames (default 1, which is the non-animated behaviour of previous versions)
- -r option specifies framerate of full-resolution animation (default 8, about the minimum to look smooth)
- Animations save to multiple files
From release 0.1.3:
- Bump version to 0.1.4
- Function tree growth rate restored to pre-0.1.2 rates
- Both multiscale noise types counted as iterative as originally intended.
- "Substitute" mutation type added.
From release 0.1.2:
- Bump version to 0.1.3
- Build lib and separate executables. Use qmake "subdirs" at top level, move code into subdirs.
- Add evolvotron_render executable.
- Add evolvotron_mutate executable.
- Better Args class.
- Fix bug in FunctionAverageSamples
- Add noise class
- Add more functions.
- Use better random number generator (MT)
- Changes to initial setup probabilities, add chance of identity nodes front and back
From release 0.1.1:
- Bump version to 0.1.2. This is purely a bug-fix release.
- Gentoo compile bug fix (Karl Robillard)
- Disable implicit QString conversion (use explicit latin1() method).
- Workround "C++ static initializer fiasco" by moving problem static members
into instance-get methods.
From release 0.1.0:
- Bump version to 0.1.1
- Grid size now defaults to 7x5
- More functions!
From release 0.0.5:
- Bump version to 0.1.0
- Fix nasty bug in computers where a task could be delivered and deleted while
the compute thread was still setting state in it
(timing related so it never happened with ccmalloc and valgrind).
- Massive internal changes necessary for file save/load
(also makes adding functions easier)
- Save/load individual functions to XML
- configure checks QTDIR defined (biggest cause of build problems)
From release 0.0.4
- Bump version to 0.0.5
- configure script #!/bin/* changed to sh from csh
- Release tar files now unpack to a ./evolvotron directory
- More "Big" size options
- Big image can create big images
- Big image's initial window size decided by Qt
- Spawn warped offers more specific controls (zoom/pan/rotate)
- Middle mouse button does stuff (pan/zoom/rotate/shear)
- Undo menu entry describes type of action which will be undone
- Closing a big image cleans up undo history appropriately
- Bug with assumed EvolotronMain/MutableImageDisplay destructor order fixed.
From release 0.0.3:
- Bump version to 0.0.4
- More interesting start up functions
- More functions (e.g rotation and spirals, geometric inverse, iterated fns, fractals...)
- Controls to enable/disable expensive/ugly iterative and fractal functions (default off).
- Fix dumb bug in xy range of image
(makes everything generally behave a lot better; most noticeable with warp)
- "Identity supression" control which helps eliminate/reduces obvious origin centering.
- "Proportion constant" control (doesn't seem to have that much effect).
- Separate reset/restart functionality (reset also resets mutation parameters).
- Move Cool/Shield buttons to be adjacent (commonly used together).
- "is_constant" query method used to eliminate boring constant images.
- x&y co-ordinate alignment fixed (not something users would notice)
- Spawn warped made less messy: just generates translate/scale/rotate... no shearing.
- Reset clears locks / restart doesn't
- Gratuitously templatized tuple/matrix class added to help geometric transforms.
- Add "configure" script 'cos thats how lots of other apps do it. Apparently.
From release 0.0.2:
- Bump version to 0.0.3
- Add command line arg control of grid size and threads, don't override -geometry
- GUI control of mutation parameters
- "Respawn" regenerates a single display area using spawn/recolour/warp as appropriate.
- "Cancel" in file save dialog obeyed.
- "Insert" mutation type.
- "Undo" functionality.
From release 0.0.1:
- Bump version to 0.0.2
- Switch to QMainWindow base in anticipation of toolbar.
- Save as PPM or PNG
- Scrollable fixed-size image "Big" windows.
- Improvements to app response under load.
From release 0.0.0:
- Bump version to 0.0.1
- Add volatile to inter-thread communication flags
- Added a few more image node function types
- Add "spawn_recoloured"
- Add "spawn_warped"