OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    NCollection_Vec2< Element_t > Class Template Reference

    Defines the 2D-vector template. The main target for this class - to handle raw low-level arrays (from/to graphic driver etc.). More...

    #include <NCollection_Vec2.hxx>

    Public Member Functions

    constexpr NCollection_Vec2 () noexcept
     Empty constructor. Construct the zero vector.
    constexpr NCollection_Vec2 (const Element_t theXY) noexcept
     Initialize ALL components of vector within specified value.
    constexpr NCollection_Vec2 (const Element_t theX, const Element_t theY) noexcept
     Per-component constructor.
    template<typename OtherElement_t>
    constexpr NCollection_Vec2 (const NCollection_Vec2< OtherElement_t > &theOtherVec2) noexcept
     Conversion constructor (explicitly converts some 2-component vector with other element type to a new 2-component vector with the element type Element_t, whose elements are static_cast'ed corresponding elements of theOtherVec2 vector).
    constexpr void SetValues (const Element_t theX, const Element_t theY) noexcept
     Assign new values to the vector.
    constexpr Element_t x () const noexcept
     Alias to 1st component as X coordinate in XY.
    constexpr Element_t y () const noexcept
     Alias to 2nd component as Y coordinate in XY.
    constexpr Element_t & x () noexcept
     Alias to 1st component as X coordinate in XY.
    constexpr Element_t & y () noexcept
     Alias to 2nd component as Y coordinate in XY.
    constexpr bool IsEqual (const NCollection_Vec2 &theOther) const noexcept
     Check this vector with another vector for equality (without tolerance!).
    constexpr bool operator== (const NCollection_Vec2 &theOther) const noexcept
     Check this vector with another vector for equality (without tolerance!).
    constexpr bool operator!= (const NCollection_Vec2 &theOther) const noexcept
     Check this vector with another vector for non-equality (without tolerance!).
    constexpr const Element_t * GetData () const noexcept
     Raw access to the data (for OpenGL exchange).
    constexpr Element_t * ChangeData () noexcept
    constexpr operator const Element_t * () const noexcept
    constexpr operator Element_t * () noexcept
    constexpr NCollection_Vec2operator+= (const NCollection_Vec2 &theAdd) noexcept
     Compute per-component summary.
    constexpr NCollection_Vec2operator-= (const NCollection_Vec2 &theDec) noexcept
     Compute per-component subtraction.
    constexpr NCollection_Vec2 operator- () const noexcept
     Unary -.
    constexpr NCollection_Vec2operator*= (const NCollection_Vec2 &theRight) noexcept
     Compute per-component multiplication.
    constexpr void Multiply (const Element_t theFactor) noexcept
     Compute per-component multiplication by scale factor.
    constexpr NCollection_Vec2 Multiplied (const Element_t theFactor) const noexcept
     Compute per-component multiplication by scale factor.
    constexpr NCollection_Vec2 cwiseMin (const NCollection_Vec2 &theVec) const noexcept
     Compute component-wise minimum of two vectors.
    constexpr NCollection_Vec2 cwiseMax (const NCollection_Vec2 &theVec) const noexcept
     Compute component-wise maximum of two vectors.
    NCollection_Vec2 cwiseAbs () const noexcept
     Compute component-wise modulus of the vector.
    constexpr Element_t maxComp () const noexcept
     Compute maximum component of the vector.
    constexpr Element_t minComp () const noexcept
     Compute minimum component of the vector.
    constexpr NCollection_Vec2operator*= (const Element_t theFactor) noexcept
     Compute per-component multiplication by scale factor.
    constexpr NCollection_Vec2operator/= (const Element_t theInvFactor)
     Compute per-component division by scale factor.
    constexpr NCollection_Vec2operator/= (const NCollection_Vec2 &theRight)
     Compute per-component division.
    constexpr NCollection_Vec2 operator* (const Element_t theFactor) const noexcept
     Compute per-component multiplication by scale factor.
    constexpr NCollection_Vec2 operator/ (const Element_t theInvFactor) const
     Compute per-component division by scale factor.
    constexpr Element_t Dot (const NCollection_Vec2 &theOther) const noexcept
     Computes the dot product.
    Element_t Modulus () const noexcept
     Computes the vector modulus (magnitude, length).
    constexpr Element_t SquareModulus () const noexcept
     Computes the square of vector modulus (magnitude, length). This method may be used for performance tricks.
    void DumpJson (Standard_OStream &theOStream, int theDepth=-1) const
     Dumps the content of me into the stream.

    Static Public Member Functions

    static constexpr int Length () noexcept
     Returns the number of components.
    static constexpr NCollection_Vec2 DX () noexcept
     Construct DX unit vector.
    static constexpr NCollection_Vec2 DY () noexcept
     Construct DY unit vector.

    Detailed Description

    template<typename Element_t>
    class NCollection_Vec2< Element_t >

    Defines the 2D-vector template. The main target for this class - to handle raw low-level arrays (from/to graphic driver etc.).

    Constructor & Destructor Documentation

    ◆ NCollection_Vec2() [1/4]

    template<typename Element_t>
    NCollection_Vec2< Element_t >::NCollection_Vec2 ( )
    inlineconstexprnoexcept

    Empty constructor. Construct the zero vector.

    ◆ NCollection_Vec2() [2/4]

    template<typename Element_t>
    NCollection_Vec2< Element_t >::NCollection_Vec2 ( const Element_t theXY)
    inlineexplicitconstexprnoexcept

    Initialize ALL components of vector within specified value.

    ◆ NCollection_Vec2() [3/4]

    template<typename Element_t>
    NCollection_Vec2< Element_t >::NCollection_Vec2 ( const Element_t theX,
    const Element_t theY )
    inlineexplicitconstexprnoexcept

    Per-component constructor.

    ◆ NCollection_Vec2() [4/4]

    template<typename Element_t>
    template<typename OtherElement_t>
    NCollection_Vec2< Element_t >::NCollection_Vec2 ( const NCollection_Vec2< OtherElement_t > & theOtherVec2)
    inlineexplicitconstexprnoexcept

    Conversion constructor (explicitly converts some 2-component vector with other element type to a new 2-component vector with the element type Element_t, whose elements are static_cast'ed corresponding elements of theOtherVec2 vector).

    Template Parameters
    OtherElement_tthe element type of the other 2-component vector theOtherVec2
    Parameters
    theOtherVec2the 2-component vector that needs to be converted

    Member Function Documentation

    ◆ ChangeData()

    template<typename Element_t>
    Element_t * NCollection_Vec2< Element_t >::ChangeData ( )
    inlineconstexprnoexcept

    ◆ cwiseAbs()

    template<typename Element_t>
    NCollection_Vec2 NCollection_Vec2< Element_t >::cwiseAbs ( ) const
    inlinenoexcept

    Compute component-wise modulus of the vector.

    ◆ cwiseMax()

    template<typename Element_t>
    NCollection_Vec2 NCollection_Vec2< Element_t >::cwiseMax ( const NCollection_Vec2< Element_t > & theVec) const
    inlineconstexprnoexcept

    Compute component-wise maximum of two vectors.

    ◆ cwiseMin()

    template<typename Element_t>
    NCollection_Vec2 NCollection_Vec2< Element_t >::cwiseMin ( const NCollection_Vec2< Element_t > & theVec) const
    inlineconstexprnoexcept

    Compute component-wise minimum of two vectors.

    ◆ Dot()

    template<typename Element_t>
    Element_t NCollection_Vec2< Element_t >::Dot ( const NCollection_Vec2< Element_t > & theOther) const
    inlineconstexprnoexcept

    Computes the dot product.

    ◆ DumpJson()

    template<typename Element_t>
    void NCollection_Vec2< Element_t >::DumpJson ( Standard_OStream & theOStream,
    int theDepth = -1 ) const
    inline

    Dumps the content of me into the stream.

    ◆ DX()

    template<typename Element_t>
    constexpr NCollection_Vec2 NCollection_Vec2< Element_t >::DX ( )
    inlinestaticconstexprnoexcept

    Construct DX unit vector.

    ◆ DY()

    template<typename Element_t>
    constexpr NCollection_Vec2 NCollection_Vec2< Element_t >::DY ( )
    inlinestaticconstexprnoexcept

    Construct DY unit vector.

    ◆ GetData()

    template<typename Element_t>
    const Element_t * NCollection_Vec2< Element_t >::GetData ( ) const
    inlineconstexprnoexcept

    Raw access to the data (for OpenGL exchange).

    ◆ IsEqual()

    template<typename Element_t>
    bool NCollection_Vec2< Element_t >::IsEqual ( const NCollection_Vec2< Element_t > & theOther) const
    inlineconstexprnoexcept

    Check this vector with another vector for equality (without tolerance!).

    ◆ Length()

    template<typename Element_t>
    constexpr int NCollection_Vec2< Element_t >::Length ( )
    inlinestaticconstexprnoexcept

    Returns the number of components.

    ◆ maxComp()

    template<typename Element_t>
    Element_t NCollection_Vec2< Element_t >::maxComp ( ) const
    inlineconstexprnoexcept

    Compute maximum component of the vector.

    ◆ minComp()

    template<typename Element_t>
    Element_t NCollection_Vec2< Element_t >::minComp ( ) const
    inlineconstexprnoexcept

    Compute minimum component of the vector.

    ◆ Modulus()

    template<typename Element_t>
    Element_t NCollection_Vec2< Element_t >::Modulus ( ) const
    inlinenoexcept

    Computes the vector modulus (magnitude, length).

    ◆ Multiplied()

    template<typename Element_t>
    NCollection_Vec2 NCollection_Vec2< Element_t >::Multiplied ( const Element_t theFactor) const
    inlineconstexprnoexcept

    Compute per-component multiplication by scale factor.

    ◆ Multiply()

    template<typename Element_t>
    void NCollection_Vec2< Element_t >::Multiply ( const Element_t theFactor)
    inlineconstexprnoexcept

    Compute per-component multiplication by scale factor.

    ◆ operator const Element_t *()

    template<typename Element_t>
    NCollection_Vec2< Element_t >::operator const Element_t * ( ) const
    inlineconstexprnoexcept

    ◆ operator Element_t *()

    template<typename Element_t>
    NCollection_Vec2< Element_t >::operator Element_t * ( )
    inlineconstexprnoexcept

    ◆ operator!=()

    template<typename Element_t>
    bool NCollection_Vec2< Element_t >::operator!= ( const NCollection_Vec2< Element_t > & theOther) const
    inlineconstexprnoexcept

    Check this vector with another vector for non-equality (without tolerance!).

    ◆ operator*()

    template<typename Element_t>
    NCollection_Vec2 NCollection_Vec2< Element_t >::operator* ( const Element_t theFactor) const
    inlineconstexprnoexcept

    Compute per-component multiplication by scale factor.

    ◆ operator*=() [1/2]

    template<typename Element_t>
    NCollection_Vec2 & NCollection_Vec2< Element_t >::operator*= ( const Element_t theFactor)
    inlineconstexprnoexcept

    Compute per-component multiplication by scale factor.

    ◆ operator*=() [2/2]

    template<typename Element_t>
    NCollection_Vec2 & NCollection_Vec2< Element_t >::operator*= ( const NCollection_Vec2< Element_t > & theRight)
    inlineconstexprnoexcept

    Compute per-component multiplication.

    ◆ operator+=()

    template<typename Element_t>
    NCollection_Vec2 & NCollection_Vec2< Element_t >::operator+= ( const NCollection_Vec2< Element_t > & theAdd)
    inlineconstexprnoexcept

    Compute per-component summary.

    ◆ operator-()

    template<typename Element_t>
    NCollection_Vec2 NCollection_Vec2< Element_t >::operator- ( ) const
    inlineconstexprnoexcept

    Unary -.

    ◆ operator-=()

    template<typename Element_t>
    NCollection_Vec2 & NCollection_Vec2< Element_t >::operator-= ( const NCollection_Vec2< Element_t > & theDec)
    inlineconstexprnoexcept

    Compute per-component subtraction.

    ◆ operator/()

    template<typename Element_t>
    NCollection_Vec2 NCollection_Vec2< Element_t >::operator/ ( const Element_t theInvFactor) const
    inlineconstexpr

    Compute per-component division by scale factor.

    ◆ operator/=() [1/2]

    template<typename Element_t>
    NCollection_Vec2 & NCollection_Vec2< Element_t >::operator/= ( const Element_t theInvFactor)
    inlineconstexpr

    Compute per-component division by scale factor.

    ◆ operator/=() [2/2]

    template<typename Element_t>
    NCollection_Vec2 & NCollection_Vec2< Element_t >::operator/= ( const NCollection_Vec2< Element_t > & theRight)
    inlineconstexpr

    Compute per-component division.

    ◆ operator==()

    template<typename Element_t>
    bool NCollection_Vec2< Element_t >::operator== ( const NCollection_Vec2< Element_t > & theOther) const
    inlineconstexprnoexcept

    Check this vector with another vector for equality (without tolerance!).

    ◆ SetValues()

    template<typename Element_t>
    void NCollection_Vec2< Element_t >::SetValues ( const Element_t theX,
    const Element_t theY )
    inlineconstexprnoexcept

    Assign new values to the vector.

    ◆ SquareModulus()

    template<typename Element_t>
    Element_t NCollection_Vec2< Element_t >::SquareModulus ( ) const
    inlineconstexprnoexcept

    Computes the square of vector modulus (magnitude, length). This method may be used for performance tricks.

    ◆ x() [1/2]

    template<typename Element_t>
    Element_t NCollection_Vec2< Element_t >::x ( ) const
    inlineconstexprnoexcept

    Alias to 1st component as X coordinate in XY.

    ◆ x() [2/2]

    template<typename Element_t>
    Element_t & NCollection_Vec2< Element_t >::x ( )
    inlineconstexprnoexcept

    Alias to 1st component as X coordinate in XY.

    Returns
    2 components by their names in specified order (in GLSL-style)

    ◆ y() [1/2]

    template<typename Element_t>
    Element_t NCollection_Vec2< Element_t >::y ( ) const
    inlineconstexprnoexcept

    Alias to 2nd component as Y coordinate in XY.

    ◆ y() [2/2]

    template<typename Element_t>
    Element_t & NCollection_Vec2< Element_t >::y ( )
    inlineconstexprnoexcept

    Alias to 2nd component as Y coordinate in XY.


    The documentation for this class was generated from the following file: