Commit Graph

70 Commits

Author SHA1 Message Date
Martin Schultz
4b8f1bf667 fixes MSVC Community 2015 ICE
The default constructors are now used as template specializations by
postponing them below the template definition
2016-05-24 15:06:32 +02:00
Janis Born
b1a7d43a83 drop VectorDimensionsT metaprogram in favor of vector_traits
(thanks to Marco Centin and Amodio Pesce)
2016-03-17 18:29:55 +01:00
Janis Born
f4046e4d58 fix some uses of const begin and end iterators 2015-12-17 14:36:23 +01:00
Janis Born
3b5364d3e4 take VectorT argument by reference for non-member vector scalar multiplication (fixes #12) 2015-11-26 12:46:08 +01:00
Jan Möbius
6b24398fbc Merge branch 'VS2015_test' into 'master'
Try to get c++11 on visual studio 2015



See merge request !26
2015-11-25 15:03:51 +01:00
Janis Born
e36051d571 brace style 2015-11-25 11:21:38 +01:00
Janis Born
d5e6d413f3 implement member and non-member swap for VectorT 2015-11-25 11:19:53 +01:00
Jan Möbius
1b3c350efb Get changes from master for this branch to test cpp11 stuff
Merge branch 'master' into VS2015_test
2015-11-25 09:47:51 +01:00
Jan Möbius
a1ccdd69f8 Merge branch 'vec2_issues' into 'master'
Vec2 issues



See merge request !25
2015-11-23 16:48:43 +01:00
Jan Möbius
509f62e118 Try to get c++11 on visual studio 2015 2015-11-23 15:54:22 +01:00
Janis Born
8488f4ac53 use C++98-compatible template brackets 2015-11-23 15:37:14 +01:00
Janis Born
4c9a6ba5a4 add VectorDimensionsT metaprogram to detect vector dimensions in C++98 2015-11-23 15:33:14 +01:00
Janis Born
cf54f40e3e implement VectorT in-place arithmetic operators based on Scalar in-place arithmetic operators 2015-11-23 12:25:07 +01:00
Janis Born
37fc29b59b add begin / end iterators for Vector11T component access 2015-11-23 09:37:08 +01:00
Hans-Christian Ebke
fe3dfade13 C++11: Made VectorT::size_ constexpr. 2015-11-19 22:58:42 +01:00
Hans-Christian Ebke
3ed7079cb8 C++11: Laid foundation for benchmark tests. We need more of them! 2015-11-19 19:53:36 +01:00
Hans-Christian Ebke
61fe9dabef C++11: Making sure VectorT construction from iterator is only instantiated for actual iterators. 2015-11-19 17:59:37 +01:00
Hans-Christian Ebke
cdfd266cab C++11: Using std::inner_product for VectorT::operator|. 2015-11-19 17:32:11 +01:00
Hans-Christian Ebke
14dffb83ce C++11: Made VectorT's constructor from array more general. 2015-11-19 17:31:54 +01:00
Hans-Christian Ebke
580e5526d8 C++11: VectorT now also accepts non-arithmetic types as Scalar. 2015-11-19 15:20:41 +01:00
Hans-Christian Ebke
07fa145057 C++11: Fixed VectorT::normalize_cond() implementation. 2015-11-19 14:09:03 +01:00
Hans-Christian Ebke
784adb9744 C++11: Made VectorT::size() and VectorT::dim() constexpr. 2015-11-19 14:08:42 +01:00
Hans-Christian Ebke
687da4e08f C++11: Added static_asserts to component-wise constructor. 2015-11-19 11:10:28 +01:00
Hans-Christian Ebke
21cc0acab5 C++11: Explicitly defined default copy/move c'tor and operator=. 2015-11-19 11:09:53 +01:00
Hans-Christian Ebke
9bac315198 C++11: Fixed VectorT so it compiles with clang as well. 2015-11-19 10:26:45 +01:00
Hans-Christian Ebke
b0f7f8b0f3 Fixed VectorT::operator| and operator>>. 2015-11-18 15:52:20 +01:00
Hans-Christian Ebke
287da20912 C++11: Reimplemented VectorT without macros. 2015-11-18 15:11:48 +01:00
Janis Born
11c9946934 fix generic VectorT ctor for non float-convertible scalar types 2015-11-17 11:37:23 +01:00
Hans-Christian Ebke
706b065593 C++11: Fixed clang warning about missing braces. 2015-11-12 15:52:49 +01:00
Hans-Christian Ebke
0d619f33d3 C++11: Create version of homogenized() for C++11 branch (without macros). 2015-11-10 16:08:53 +01:00
Hans-Christian Ebke
dfcc98c845 C++11: Do CMake-less C++11 checking. 2015-11-10 15:00:19 +01:00
Hans-Christian Ebke
dda4b41cac C++11: Got rid of narrowing conversion warnings in legacy code.
Added explicit static_cast along with static SFINAE checks to VectorT
constructor.
2015-11-09 22:55:42 +01:00
Hans-Christian Ebke
26914cba92 C++11: Legacy incompatibility fixes for VectorT C++11 features. 2015-11-09 21:21:19 +01:00
Hans-Christian Ebke
c2c627ed4d C++11: Added _htmlColor literal operator.
Allows inline specification of colors in HTML syntax.
2015-11-09 18:51:00 +01:00
Hans-Christian Ebke
97ccb1d641 Modernized VectorT constructors in C++11 branch.
* Less redundancy.
* We can now make some of the VectorT constructors constexpr which is
useful for other features.
2015-11-09 18:46:39 +01:00
Matthias Möller
e9431e6557 fix compile error on vector scalar multiplication when scalar type differs of vector scalar type and the scalar was lhs
closes #2367

git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@1291 fdac6126-5c0c-442c-9429-916003d36597
2015-06-18 11:53:05 +00:00
Matthias Möller
ed3155284c - move iostream from header to source files.
- replace some iostreams to o/istreams only
- some minor include fixes

closes #2489

git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@1278 fdac6126-5c0c-442c-9429-916003d36597
2015-06-09 08:58:41 +00:00
Jan Möbius
fd4bcb39ea Typo
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@1258 fdac6126-5c0c-442c-9429-916003d36597
2015-04-28 13:07:46 +00:00
Jan Möbius
07ad20793d Fixed bad typo in comment
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@1257 fdac6126-5c0c-442c-9429-916003d36597
2015-04-28 11:54:17 +00:00
Jan Möbius
0a4c1dc206 Get rid of the old ACGMakeFiles
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@1253 fdac6126-5c0c-442c-9429-916003d36597
2015-04-28 11:35:09 +00:00
Jan Möbius
83486e0b5f Relicense to BSD
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@1252 fdac6126-5c0c-442c-9429-916003d36597
2015-04-28 11:33:32 +00:00
Matthias Möller
c8a634f365 - compiler error instead of run-time error when using a constructor which doesn't belongs to the vector's dimension
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@1194 fdac6126-5c0c-442c-9429-916003d36597
2015-01-14 13:13:14 +00:00
Matthias Möller
0a32eb9ea5 add specializations for 5/6 dimension vectors
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@1193 fdac6126-5c0c-442c-9429-916003d36597
2015-01-14 13:11:23 +00:00
Jan Möbius
b3778b230f Updated copyright headers
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@1188 fdac6126-5c0c-442c-9429-916003d36597
2015-01-05 15:34:10 +00:00
Jan Möbius
68a3ff3136 The annual License Header Bump (Sorry for the rebuilds ;-) )
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@990 fdac6126-5c0c-442c-9429-916003d36597
2014-02-05 09:01:07 +00:00
Jan Möbius
51f4f26300 Fixed more warnings
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@933 fdac6126-5c0c-442c-9429-916003d36597
2013-08-15 08:43:04 +00:00
Jan Möbius
29011e25d2 Updated license headers
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@922 fdac6126-5c0c-442c-9429-916003d36597
2013-08-11 10:26:11 +00:00
Matthias Möller
20b17c450a using c++ headers in c++ files
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@837 fdac6126-5c0c-442c-9429-916003d36597
2013-06-12 13:14:36 +00:00
Jan Möbius
3d72b7dbc1 vector_type min(const vector_type& _rhs) and vector_type max(const vector_type& _rhs) are declared const now. (Thanks to Vladimir Chalupecky for the hint)
minimize and maximize return vector_type& (reference) instead of vector_type (value) to allow chaining p.minimize(p1).minimize(p2). (Thanks to Vladimir Chalupecky for the hint)



git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@822 fdac6126-5c0c-442c-9429-916003d36597
2013-04-02 12:39:47 +00:00
Jan Möbius
0f9d7dcb41 Replaced fabs by the std methods to fix errors when using norms with double vectors
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@775 fdac6126-5c0c-442c-9429-916003d36597
2012-12-05 17:59:57 +00:00