Campbell Barton
99142ec7e0
BLI_math: isect_ray_plane_v3 now takes 4d plane
...
Was taking a triangle and doing ray-tri intersect.
2015-10-16 03:06:12 +11:00
Campbell Barton
3de81314fa
Error in last commit
2015-10-15 21:30:24 +11:00
Campbell Barton
83d6b73e96
Error in last commit
2015-10-15 21:28:07 +11:00
Campbell Barton
0a82a20fe4
BLI_math: add normalize_m#_ex functions
...
Useful when we need to use the axis lengths too.
2015-10-15 21:03:27 +11:00
Bastien Montagne
767d3f23b7
Fix T45900: Allow again white spaces in file names.
...
Should probably be added to 'a' release, should we do one...
2015-10-15 07:44:25 +02:00
Brecht Van Lommel
d7ceca8c93
Fix T46085: UV project modifier artifacts with vertices behind the camera.
2015-10-11 20:36:38 +02:00
Brecht Van Lommel
6e66ddf5ed
Fix warnings and remove casts by adding copy_vx_vx_uchar() functions.
2015-10-11 02:15:44 +02:00
Brecht Van Lommel
b098609186
Fix various compiler warnings.
2015-10-10 17:35:30 +02:00
Bastien Montagne
be72df4f06
BLI_math: add mat3_polar_decompose, interp_m3_m3m3 and interp_m4_m4m4.
...
mat3_polar_decompose gives the right polar decomposition of given matrix,
as a pair (U, P) of matrices.
interp_m3_m3m3 uses that polar decomposition to perform a correct matrix interpolation,
even with non-uniformly scaled ones (where blend_m3_m3m3 would fail).
interp_m4_m4m4 just adds translation interpolation to the _m3 variant.
2015-10-09 21:26:33 +02:00
Bastien Montagne
8159718faf
BLI: add SVD solver for mat3 (using eigen3).
2015-10-09 21:26:33 +02:00
Campbell Barton
be92598a85
Off by one error in own recent commit
2015-10-08 19:05:16 +11:00
Campbell Barton
a5e631171b
BLI_path api, minor changes to CWD handling
...
- BLI_current_working_dir's return value must be checked, since it may fail.
- BLI_current_working_dir now behaves like getcwd, where a too-small target will return failure.
- avoid buffer overrun with BLI_path_cwd, by taking a maxlen arg.
2015-10-08 15:05:58 +11:00
Campbell Barton
b333a7570f
Cleanup: spelling
2015-10-07 15:02:06 +11:00
Bastien Montagne
c919ce3aa9
Fix (unreported) broken export of timecodes in SubRip VSE exporter.
...
Would write 1.04 seconds as `00:00:01,40` instead of `00:00:01,040`...
Anyway, we already have BLI API for timecodes, much better to add
SubRip timecode format there, heavily simplifies code.
To be backported to final 2.76.
2015-10-04 16:43:24 +02:00
Campbell Barton
5884a0d66e
Correct last commit, picky type warnings
2015-10-04 15:11:38 +11:00
Campbell Barton
a3cf661108
Correct last commit, check before freeing
2015-10-04 15:02:29 +11:00
Campbell Barton
74a2fa3095
BLI_Buffer: add BLI_buffer_reinit
...
Useful for re-using a buffer when the existing data can be thrown away.
2015-10-04 14:29:27 +11:00
Campbell Barton
9f046e95c0
BLI_Buffer: support over 2gb allocations
...
Also move comment to C-source and enumerate useful features.
2015-10-04 14:10:26 +11:00
Campbell Barton
38f4aeb2d3
BLI_Buffer: fix BLI_buffer_resize w/ calloc flag
...
When resizing, zero memory when the calloc flag is set,
even when no realloc is done.
2015-10-04 13:52:13 +11:00
Campbell Barton
ecf0529efd
Quiet warning
2015-09-24 15:17:02 +10:00
Campbell Barton
9a62164d94
Cleanup: indentation
2015-09-22 15:02:11 +10:00
Campbell Barton
f1422c40af
Use squared length where possible
2015-09-18 16:40:55 +10:00
Antony Riakiotakis
7f63eaafd6
Fix T45389 Windows thumbnails not working.
...
Also they did not work when using blender -R from
command line in 64-bit systems.
Issue was checking for wrong define which would
cause code to detect if the blender executable
functions under 32 bit emulation.
For 64bit executables this is false, leading
blender to believe we are operating under a 32bit
system, and registration would try to register
the 32bit thumbnailer.
This 32 bit dll is (correctly) missing for local
installs and from the new installer, thus no thumbnails.
2015-09-16 00:28:09 +03:00
Campbell Barton
09e40a4956
Cleanup: spelling
2015-09-14 02:22:22 +10:00
Bastien Montagne
ad86d6ebdc
Fix T46056: User Preferences-> install from File freezes Blender.
...
Own stupid error in recent fix for buffer overflow in `BLI_testextensie_glob()`...
Also found & fixed another potential buffer overflow in this func.
2015-09-09 11:02:32 +02:00
Bastien Montagne
9de20963cd
Fix beautiful textbook case of string overflow in BLI_testextensie_glob...
2015-09-07 19:23:11 +02:00
Campbell Barton
b8e0b2db56
Math Lib: isect_plane_*_v3 avoid negation
...
Unmeasurable speedup for plane intersection.
2015-09-05 17:44:02 +10:00
Campbell Barton
ba188cf98d
Math Lib: simplify isect_plane_plane_v3
...
Unlike the 3 plane method, the 2 planes squared cross-product _is_ the determinant.
2015-09-05 17:10:07 +10:00
Campbell Barton
39752eb912
Fix for isect_tri_tri_epsilon_v3 w/ small faces
...
tris with ~1e-05 edge lengths would fail
2015-09-04 22:29:12 +10:00
Campbell Barton
1d71ad2eaa
Math Lib: Use plane intersect from graphics-gems
2015-09-04 22:13:20 +10:00
Campbell Barton
d0e7ba3fd1
Math Lib: avoid sqrt w/ triangle intersection
2015-09-04 22:06:36 +10:00
Campbell Barton
2ea96df159
Correct own error in line_point_factor
...
Passing zero epsilon allowed divide by zero.
2015-09-04 22:06:36 +10:00
Julian Eisel
ef629e0d50
Quiet warnings
...
We had too many warnings lately... was awaiting that someone would kill them - didn't happen -> goes to my commit ratio! :P
2015-09-04 01:04:37 +02:00
Campbell Barton
54ad576666
Small tri intersect fails when not normalized
...
Logic was ok, but would run into precision issues.
2015-09-04 01:59:44 +10:00
Campbell Barton
a603a3470c
Revert fix for T45849 (part 2, tsk!)
2015-08-31 22:47:14 +10:00
Campbell Barton
06b14aa5f9
error in comments
2015-08-31 22:26:05 +10:00
Campbell Barton
6a53e658d3
Alternate fix for T45849: tri-tri intersect error
...
Project both triangles onto the same plane to simplify calculations.
2015-08-31 22:15:27 +10:00
Campbell Barton
e503e37333
Revert fix for T45849, alternate fix coming up
...
epsilon check here didn't account for scale, causing T45919
2015-08-31 22:12:19 +10:00
Campbell Barton
96fa58e22c
Math Lib: Add closest_to_plane helper functions
...
- closest_to_plane3 (for float3 planes)
- closest_to_plane*_normalized_v3 (for unit length planes)
Use when the plane is known to be unit length
2015-08-31 20:10:36 +10:00
Campbell Barton
50917edad5
Fix T45853: Edge-slide UV-correct jitter
2015-08-25 22:57:03 +10:00
Campbell Barton
1080a7d5e1
Cleanup: style
2015-08-25 08:50:53 +10:00
Bastien Montagne
c5018c65b9
BLI_fileops: Some fixes and cleanup.
...
* Fix BLI_file_touch, used to add one dummy byte ((unsigned char)EOF) to empty files!
* Get rid of static global temp string in WIN32 area (very bad, and useless!).
* Get rid of paranoid NULL checks in WIN32's BLI_gzopen().
* Add non-relative filename asserts to WIN32 file operations too.
* ifdef-out BLI_move and BLI_create_symlink, unused (and the later is not even implemented for windows).
Partly based on patch and points raised by Jason Wilkins (jwilkins) in T32870, thanks!
2015-08-24 22:14:38 +02:00
Campbell Barton
4f61de6588
Fix T45884: Crash copying keyframes
...
BLI_str_quoted_substrN could crash if the prefix wasn't found
2015-08-24 09:29:00 +10:00
Campbell Barton
e7775833a7
Math Lib: Use same logic for 2d/3d functions
...
dist_squared_to_line_v2, dist_to_line_v2
2015-08-23 19:10:37 +10:00
Campbell Barton
0cb23fafe7
Math Lib: minor optimization interp_weights_poly
2015-08-23 17:07:35 +10:00
Campbell Barton
58c9a0b11a
Cleanup: spelling
2015-08-22 21:17:32 +10:00
Campbell Barton
c1c07b68b8
Use epsilon for line-intersect collinear test
...
Also remove 2x vector normalize since other parts of the code already check this.
Fixes T45849
2015-08-22 21:12:46 +10:00
Campbell Barton
59e166c568
BVH-raycast: Use watertight intersections
...
By default watertight intersections are used,
For callbacks where its not needed,
BLI_bvhtree_ray_cast_ex can be called without the BVH_RAYCAST_WATERTIGHT flag.
Fixes T45286
2015-08-21 17:48:33 +10:00
Campbell Barton
71919efd78
Math Lib: watertight intersection function
...
From Cycles with some very minor differences.
2015-08-21 17:45:04 +10:00
Campbell Barton
7e3781179e
Math Lib: Add float/int conversion functions
2015-08-21 17:42:40 +10:00