Lines 444-449
Link Here
|
444 |
return const_cast<ExpressionType&>(m_matrix); |
444 |
return const_cast<ExpressionType&>(m_matrix); |
445 |
} |
445 |
} |
446 |
|
446 |
|
|
|
447 |
/** Multiplies the vector \a other to each subvector of \c *this */ |
448 |
template<typename OtherDerived> |
449 |
ExpressionType& operator*=(const DenseBase<OtherDerived>& other) |
450 |
{ |
451 |
EIGEN_STATIC_ASSERT_VECTOR_ONLY(OtherDerived) |
452 |
for(Index j=0; j<subVectors(); ++j) |
453 |
subVector(j).array() *= other.derived().array(); |
454 |
return const_cast<ExpressionType&>(m_matrix); |
455 |
} |
456 |
|
457 |
/** Divides the vector \a other to each subvector of \c *this */ |
458 |
template<typename OtherDerived> |
459 |
ExpressionType& operator/=(const DenseBase<OtherDerived>& other) |
460 |
{ |
461 |
EIGEN_STATIC_ASSERT_VECTOR_ONLY(OtherDerived) |
462 |
for(Index j=0; j<subVectors(); ++j) |
463 |
subVector(j).array() /= other.derived(); |
464 |
return const_cast<ExpressionType&>(m_matrix); |
465 |
} |
466 |
|
447 |
/** Returns the expression of the sum of the vector \a other to each subvector of \c *this */ |
467 |
/** Returns the expression of the sum of the vector \a other to each subvector of \c *this */ |
448 |
template<typename OtherDerived> EIGEN_STRONG_INLINE |
468 |
template<typename OtherDerived> EIGEN_STRONG_INLINE |
449 |
CwiseBinaryOp<internal::scalar_sum_op<Scalar>, |
469 |
CwiseBinaryOp<internal::scalar_sum_op<Scalar>, |
Lines 466-471
Link Here
|
466 |
return m_matrix - extendedTo(other.derived()); |
486 |
return m_matrix - extendedTo(other.derived()); |
467 |
} |
487 |
} |
468 |
|
488 |
|
|
|
489 |
/** Returns the expression of the multiplication of the vector \a other to each subvector of \c *this */ |
490 |
template<typename OtherDerived> EIGEN_STRONG_INLINE |
491 |
CwiseBinaryOp<internal::scalar_product_op<Scalar>, |
492 |
const ExpressionTypeNestedCleaned, |
493 |
const typename ExtendedType<OtherDerived>::Type> |
494 |
operator*(const DenseBase<OtherDerived>& other) const |
495 |
{ |
496 |
EIGEN_STATIC_ASSERT_VECTOR_ONLY(OtherDerived); |
497 |
return m_matrix * extendedTo(other.derived()); |
498 |
} |
499 |
|
500 |
/** Returns the expression of the division between each subvector of \c *this and the vector \a other */ |
501 |
template<typename OtherDerived> |
502 |
CwiseBinaryOp<internal::scalar_quotient_op<Scalar>, |
503 |
const ExpressionTypeNestedCleaned, |
504 |
const typename ExtendedType<OtherDerived>::Type> |
505 |
operator/(const DenseBase<OtherDerived>& other) const |
506 |
{ |
507 |
EIGEN_STATIC_ASSERT_VECTOR_ONLY(OtherDerived); |
508 |
return m_matrix / extendedTo(other.derived()); |
509 |
} |
510 |
|
469 |
/////////// Geometry module /////////// |
511 |
/////////// Geometry module /////////// |
470 |
|
512 |
|
471 |
#if EIGEN2_SUPPORT_STAGE > STAGE20_RESOLVE_API_CONFLICTS |
513 |
#if EIGEN2_SUPPORT_STAGE > STAGE20_RESOLVE_API_CONFLICTS |