libcascade
PackageApiSyntheticN collection autoGenerated

Generated (page 3 of 9)

OCCT package Generated:…

NCollection_Array1_handle_StepShape_ConnectedEdgeSet

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

NCollection_Array1_handle_StepShape_ConnectedFaceSet

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

NCollection_Array1_handle_StepShape_Edge

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

  • Init(theValue: StepShape_Edge): void

    Initialise the items with theValue.

    Parameters (1)
    • theValue
  • Size(): number

    Size query.

  • Length(): number

    Length query (legacy int-returning API).

  • IsEmpty(): boolean

    Return TRUE if array has zero length.

  • Lower(): number

    Lower bound.

  • Upper(): number

    Upper bound.

  • Replaces this array by a copy of theOther array. Bounds and length are copied from theOther. When this array wraps an external (non-owned) buffer:

    • if theOther has the same length, values are copied in place into the external buffer and ownership is unchanged;
    • if theOther has a different length, this array detaches from the external buffer and allocates a fresh owned buffer. Use CopyValues() to preserve this array's bounds.
    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns

    first element

  • Returns

    first element

  • Returns

    last element

  • Returns

    last element

  • Value(theIndex: number): StepShape_Edge

    Constant value access.

    Parameters (1)
    • theIndex
  • ChangeValue(theIndex: number): StepShape_Edge

    Variable value access.

    Parameters (1)
    • theIndex
  • At(theIndex: number): StepShape_Edge

    0-based checked access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • ChangeAt(theIndex: number): StepShape_Edge

    0-based checked mutable access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • SetValue(theIndex: number, theItem: StepShape_Edge): void

    Set value.

    Parameters (2)
    • theIndex
    • theItem
  • UpdateLowerBound(theLower: number): void

    Changes the lowest bound. Do not move data.

    Parameters (1)
    • theLower
  • UpdateUpperBound(theUpper: number): void

    Changes the upper bound. Do not move data.

    Parameters (1)
    • theUpper
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.

    Parameters (3)
    • theLower
      new lower bound of array
    • theUpper
      new upper bound of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to theSize elements, keeping the lower bound unchanged.

    Parameters (2)
    • theSize
      new number of elements
    • theToCopyData
      flag to copy existing data into new array
  • IsDeletable(): boolean

NCollection_Array1_handle_StepShape_Face

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

  • Init(theValue: StepShape_Face): void

    Initialise the items with theValue.

    Parameters (1)
    • theValue
  • Size(): number

    Size query.

  • Length(): number

    Length query (legacy int-returning API).

  • IsEmpty(): boolean

    Return TRUE if array has zero length.

  • Lower(): number

    Lower bound.

  • Upper(): number

    Upper bound.

  • Replaces this array by a copy of theOther array. Bounds and length are copied from theOther. When this array wraps an external (non-owned) buffer:

    • if theOther has the same length, values are copied in place into the external buffer and ownership is unchanged;
    • if theOther has a different length, this array detaches from the external buffer and allocates a fresh owned buffer. Use CopyValues() to preserve this array's bounds.
    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns

    first element

  • Returns

    first element

  • Returns

    last element

  • Returns

    last element

  • Value(theIndex: number): StepShape_Face

    Constant value access.

    Parameters (1)
    • theIndex
  • ChangeValue(theIndex: number): StepShape_Face

    Variable value access.

    Parameters (1)
    • theIndex
  • At(theIndex: number): StepShape_Face

    0-based checked access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • ChangeAt(theIndex: number): StepShape_Face

    0-based checked mutable access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • SetValue(theIndex: number, theItem: StepShape_Face): void

    Set value.

    Parameters (2)
    • theIndex
    • theItem
  • UpdateLowerBound(theLower: number): void

    Changes the lowest bound. Do not move data.

    Parameters (1)
    • theLower
  • UpdateUpperBound(theUpper: number): void

    Changes the upper bound. Do not move data.

    Parameters (1)
    • theUpper
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.

    Parameters (3)
    • theLower
      new lower bound of array
    • theUpper
      new upper bound of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to theSize elements, keeping the lower bound unchanged.

    Parameters (2)
    • theSize
      new number of elements
    • theToCopyData
      flag to copy existing data into new array
  • IsDeletable(): boolean

NCollection_Array1_handle_StepShape_FaceBound

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

  • Init(theValue: StepShape_FaceBound): void

    Initialise the items with theValue.

    Parameters (1)
    • theValue
  • Size(): number

    Size query.

  • Length(): number

    Length query (legacy int-returning API).

  • IsEmpty(): boolean

    Return TRUE if array has zero length.

  • Lower(): number

    Lower bound.

  • Upper(): number

    Upper bound.

  • Replaces this array by a copy of theOther array. Bounds and length are copied from theOther. When this array wraps an external (non-owned) buffer:

    • if theOther has the same length, values are copied in place into the external buffer and ownership is unchanged;
    • if theOther has a different length, this array detaches from the external buffer and allocates a fresh owned buffer. Use CopyValues() to preserve this array's bounds.
    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns

    first element

  • Returns

    first element

  • Returns

    last element

  • Returns

    last element

  • Value(theIndex: number): StepShape_FaceBound

    Constant value access.

    Parameters (1)
    • theIndex
  • ChangeValue(theIndex: number): StepShape_FaceBound

    Variable value access.

    Parameters (1)
    • theIndex
  • At(theIndex: number): StepShape_FaceBound

    0-based checked access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • ChangeAt(theIndex: number): StepShape_FaceBound

    0-based checked mutable access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • SetValue(theIndex: number, theItem: StepShape_FaceBound): void

    Set value.

    Parameters (2)
    • theIndex
    • theItem
  • UpdateLowerBound(theLower: number): void

    Changes the lowest bound. Do not move data.

    Parameters (1)
    • theLower
  • UpdateUpperBound(theUpper: number): void

    Changes the upper bound. Do not move data.

    Parameters (1)
    • theUpper
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.

    Parameters (3)
    • theLower
      new lower bound of array
    • theUpper
      new upper bound of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to theSize elements, keeping the lower bound unchanged.

    Parameters (2)
    • theSize
      new number of elements
    • theToCopyData
      flag to copy existing data into new array
  • IsDeletable(): boolean

NCollection_Array1_handle_StepShape_OrientedClosedShell

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

NCollection_Array1_handle_StepShape_OrientedEdge

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

NCollection_Array1_handle_StepVisual_CurveStyleFontPattern

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

NCollection_Array1_handle_StepVisual_PresentationStyleAssignment

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

NCollection_Array1_handle_StepVisual_TessellatedItem

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

NCollection_Array1_handle_StepVisual_TessellatedStructuredItem

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

NCollection_Array1_handle_Storage_CallBack

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

  • Init(theValue: Storage_CallBack): void

    Initialise the items with theValue.

    Parameters (1)
    • theValue
  • Size(): number

    Size query.

  • Length(): number

    Length query (legacy int-returning API).

  • IsEmpty(): boolean

    Return TRUE if array has zero length.

  • Lower(): number

    Lower bound.

  • Upper(): number

    Upper bound.

  • Replaces this array by a copy of theOther array. Bounds and length are copied from theOther. When this array wraps an external (non-owned) buffer:

    • if theOther has the same length, values are copied in place into the external buffer and ownership is unchanged;
    • if theOther has a different length, this array detaches from the external buffer and allocates a fresh owned buffer. Use CopyValues() to preserve this array's bounds.
    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns

    first element

  • Returns

    first element

  • Returns

    last element

  • Returns

    last element

  • Value(theIndex: number): Storage_CallBack

    Constant value access.

    Parameters (1)
    • theIndex
  • ChangeValue(theIndex: number): Storage_CallBack

    Variable value access.

    Parameters (1)
    • theIndex
  • At(theIndex: number): Storage_CallBack

    0-based checked access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • ChangeAt(theIndex: number): Storage_CallBack

    0-based checked mutable access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • SetValue(theIndex: number, theItem: Storage_CallBack): void

    Set value.

    Parameters (2)
    • theIndex
    • theItem
  • UpdateLowerBound(theLower: number): void

    Changes the lowest bound. Do not move data.

    Parameters (1)
    • theLower
  • UpdateUpperBound(theUpper: number): void

    Changes the upper bound. Do not move data.

    Parameters (1)
    • theUpper
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.

    Parameters (3)
    • theLower
      new lower bound of array
    • theUpper
      new upper bound of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to theSize elements, keeping the lower bound unchanged.

    Parameters (2)
    • theSize
      new number of elements
    • theToCopyData
      flag to copy existing data into new array
  • IsDeletable(): boolean

NCollection_Array1_handle_Storage_Schema

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

  • Init(theValue: Storage_Schema): void

    Initialise the items with theValue.

    Parameters (1)
    • theValue
  • Size(): number

    Size query.

  • Length(): number

    Length query (legacy int-returning API).

  • IsEmpty(): boolean

    Return TRUE if array has zero length.

  • Lower(): number

    Lower bound.

  • Upper(): number

    Upper bound.

  • Replaces this array by a copy of theOther array. Bounds and length are copied from theOther. When this array wraps an external (non-owned) buffer:

    • if theOther has the same length, values are copied in place into the external buffer and ownership is unchanged;
    • if theOther has a different length, this array detaches from the external buffer and allocates a fresh owned buffer. Use CopyValues() to preserve this array's bounds.
    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns

    first element

  • Returns

    first element

  • Returns

    last element

  • Returns

    last element

  • Value(theIndex: number): Storage_Schema

    Constant value access.

    Parameters (1)
    • theIndex
  • ChangeValue(theIndex: number): Storage_Schema

    Variable value access.

    Parameters (1)
    • theIndex
  • At(theIndex: number): Storage_Schema

    0-based checked access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • ChangeAt(theIndex: number): Storage_Schema

    0-based checked mutable access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • SetValue(theIndex: number, theItem: Storage_Schema): void

    Set value.

    Parameters (2)
    • theIndex
    • theItem
  • UpdateLowerBound(theLower: number): void

    Changes the lowest bound. Do not move data.

    Parameters (1)
    • theLower
  • UpdateUpperBound(theUpper: number): void

    Changes the upper bound. Do not move data.

    Parameters (1)
    • theUpper
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.

    Parameters (3)
    • theLower
      new lower bound of array
    • theUpper
      new upper bound of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to theSize elements, keeping the lower bound unchanged.

    Parameters (2)
    • theSize
      new number of elements
    • theToCopyData
      flag to copy existing data into new array
  • IsDeletable(): boolean

NCollection_Array1_handle_TCollection_HAsciiString

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

NCollection_Array1_handle_TDF_Attribute

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

  • Init(theValue: TDF_Attribute): void

    Initialise the items with theValue.

    Parameters (1)
    • theValue
  • Size(): number

    Size query.

  • Length(): number

    Length query (legacy int-returning API).

  • IsEmpty(): boolean

    Return TRUE if array has zero length.

  • Lower(): number

    Lower bound.

  • Upper(): number

    Upper bound.

  • Replaces this array by a copy of theOther array. Bounds and length are copied from theOther. When this array wraps an external (non-owned) buffer:

    • if theOther has the same length, values are copied in place into the external buffer and ownership is unchanged;
    • if theOther has a different length, this array detaches from the external buffer and allocates a fresh owned buffer. Use CopyValues() to preserve this array's bounds.
    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns

    first element

  • Returns

    first element

  • Returns

    last element

  • Returns

    last element

  • Value(theIndex: number): TDF_Attribute

    Constant value access.

    Parameters (1)
    • theIndex
  • ChangeValue(theIndex: number): TDF_Attribute

    Variable value access.

    Parameters (1)
    • theIndex
  • At(theIndex: number): TDF_Attribute

    0-based checked access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • ChangeAt(theIndex: number): TDF_Attribute

    0-based checked mutable access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • SetValue(theIndex: number, theItem: TDF_Attribute): void

    Set value.

    Parameters (2)
    • theIndex
    • theItem
  • UpdateLowerBound(theLower: number): void

    Changes the lowest bound. Do not move data.

    Parameters (1)
    • theLower
  • UpdateUpperBound(theUpper: number): void

    Changes the upper bound. Do not move data.

    Parameters (1)
    • theUpper
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.

    Parameters (3)
    • theLower
      new lower bound of array
    • theUpper
      new upper bound of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to theSize elements, keeping the lower bound unchanged.

    Parameters (2)
    • theSize
      new number of elements
    • theToCopyData
      flag to copy existing data into new array
  • IsDeletable(): boolean

NCollection_Array1_int

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

  • Init(theValue: number): void

    Initialise the items with theValue.

    Parameters (1)
    • theValue
  • Size(): number

    Size query.

  • Length(): number

    Length query (legacy int-returning API).

  • IsEmpty(): boolean

    Return TRUE if array has zero length.

  • Lower(): number

    Lower bound.

  • Upper(): number

    Upper bound.

  • Replaces this array by a copy of theOther array. Bounds and length are copied from theOther. When this array wraps an external (non-owned) buffer:

    • if theOther has the same length, values are copied in place into the external buffer and ownership is unchanged;
    • if theOther has a different length, this array detaches from the external buffer and allocates a fresh owned buffer. Use CopyValues() to preserve this array's bounds.
    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • First(): number
    Returns

    first element

  • ChangeFirst(): number
    Returns

    first element

  • Last(): number
    Returns

    last element

  • ChangeLast(): number
    Returns

    last element

  • Value(theIndex: number): number

    Constant value access.

    Parameters (1)
    • theIndex
  • ChangeValue(theIndex: number): number

    Variable value access.

    Parameters (1)
    • theIndex
  • At(theIndex: number): number

    0-based checked access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • ChangeAt(theIndex: number): number

    0-based checked mutable access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • SetValue(theIndex: number, theItem: number): void

    Set value.

    Parameters (2)
    • theIndex
    • theItem
  • UpdateLowerBound(theLower: number): void

    Changes the lowest bound. Do not move data.

    Parameters (1)
    • theLower
  • UpdateUpperBound(theUpper: number): void

    Changes the upper bound. Do not move data.

    Parameters (1)
    • theUpper
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.

    Parameters (3)
    • theLower
      new lower bound of array
    • theUpper
      new upper bound of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to theSize elements, keeping the lower bound unchanged.

    Parameters (2)
    • theSize
      new number of elements
    • theToCopyData
      flag to copy existing data into new array
  • IsDeletable(): boolean

NCollection_Array1_math_ValueAndWeight

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

  • Init(theValue: math_ValueAndWeight): void

    Initialise the items with theValue.

    Parameters (1)
    • theValue
  • Size(): number

    Size query.

  • Length(): number

    Length query (legacy int-returning API).

  • IsEmpty(): boolean

    Return TRUE if array has zero length.

  • Lower(): number

    Lower bound.

  • Upper(): number

    Upper bound.

  • Replaces this array by a copy of theOther array. Bounds and length are copied from theOther. When this array wraps an external (non-owned) buffer:

    • if theOther has the same length, values are copied in place into the external buffer and ownership is unchanged;
    • if theOther has a different length, this array detaches from the external buffer and allocates a fresh owned buffer. Use CopyValues() to preserve this array's bounds.
    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns

    first element

  • Returns

    first element

  • Returns

    last element

  • Returns

    last element

  • Value(theIndex: number): math_ValueAndWeight

    Constant value access.

    Parameters (1)
    • theIndex
  • ChangeValue(theIndex: number): math_ValueAndWeight

    Variable value access.

    Parameters (1)
    • theIndex
  • At(theIndex: number): math_ValueAndWeight

    0-based checked access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • ChangeAt(theIndex: number): math_ValueAndWeight

    0-based checked mutable access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • SetValue(theIndex: number, theItem: math_ValueAndWeight): void

    Set value.

    Parameters (2)
    • theIndex
    • theItem
  • UpdateLowerBound(theLower: number): void

    Changes the lowest bound. Do not move data.

    Parameters (1)
    • theLower
  • UpdateUpperBound(theUpper: number): void

    Changes the upper bound. Do not move data.

    Parameters (1)
    • theUpper
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.

    Parameters (3)
    • theLower
      new lower bound of array
    • theUpper
      new upper bound of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to theSize elements, keeping the lower bound unchanged.

    Parameters (2)
    • theSize
      new number of elements
    • theToCopyData
      flag to copy existing data into new array
  • IsDeletable(): boolean

NCollection_Array1_unsignedchar

The class NCollection_Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples:

Itemtab[100];//anexamplewithaCarray NCollection_Array1<Item>ttab(tab[0],1,100); NCollection_Array1<Item>tttab(ttab(10),10,20);//asliceofttab

If you want to reindex an array from 1 to Length do:

NCollection_Array1<Item>tab1(tab(tab.Lower()),1,tab.Length());

Warning: Programs client of such a class must be independent of the range of the first element. Then, a C++ for loop must be written like this

for(i=A.Lower();i<=A.Upper();i++)

Zero-based (size_t) construction mode: Use NCollection_Array1(size_t theSize) or NCollection_Array1(pointer, size_t) to create a zero-based array (Lower()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variants do NOT own the memory and will not free it on destruction.

intaBuffer[100]; NCollection_Array1<int>aZero(100);//allocates,lower=0 NCollection_Array1<int>aWrap(aBuffer,100);//wrapsaBuffer,lower=0,notowner for(size_ti=0;i<aWrap.Size();++i) aWrap.At(i)=static_cast<int>(i);

Constructors(6)

Instance methods(23)

  • Init(theValue: string): void

    Initialise the items with theValue.

    Parameters (1)
    • theValue
  • Size(): number

    Size query.

  • Length(): number

    Length query (legacy int-returning API).

  • IsEmpty(): boolean

    Return TRUE if array has zero length.

  • Lower(): number

    Lower bound.

  • Upper(): number

    Upper bound.

  • Replaces this array by a copy of theOther array. Bounds and length are copied from theOther. When this array wraps an external (non-owned) buffer:

    • if theOther has the same length, values are copied in place into the external buffer and ownership is unchanged;
    • if theOther has a different length, this array detaches from the external buffer and allocates a fresh owned buffer. Use CopyValues() to preserve this array's bounds.
    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • First(): string
    Returns

    first element

  • ChangeFirst(): string
    Returns

    first element

  • Last(): string
    Returns

    last element

  • ChangeLast(): string
    Returns

    last element

  • Value(theIndex: number): string

    Constant value access.

    Parameters (1)
    • theIndex
  • ChangeValue(theIndex: number): string

    Variable value access.

    Parameters (1)
    • theIndex
  • At(theIndex: number): string

    0-based checked access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • ChangeAt(theIndex: number): string

    0-based checked mutable access independent of Lower()/Upper().

    Parameters (1)
    • theIndex
      0-based index in [0, Size()-1]
  • SetValue(theIndex: number, theItem: string): void

    Set value.

    Parameters (2)
    • theIndex
    • theItem
  • UpdateLowerBound(theLower: number): void

    Changes the lowest bound. Do not move data.

    Parameters (1)
    • theLower
  • UpdateUpperBound(theUpper: number): void

    Changes the upper bound. Do not move data.

    Parameters (1)
    • theUpper
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.

    Parameters (3)
    • theLower
      new lower bound of array
    • theUpper
      new upper bound of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to theSize elements, keeping the lower bound unchanged.

    Parameters (2)
    • theSize
      new number of elements
    • theToCopyData
      flag to copy existing data into new array
  • IsDeletable(): boolean

NCollection_Array2_Extrema_POnCurv

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: Extrema_POnCurv): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_Extrema_POnCurv2d

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: Extrema_POnCurv2d): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_Extrema_POnSurf

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: Extrema_POnSurf): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_Extrema_POnSurfParams

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: Extrema_POnSurfParams): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_StepElement_SurfaceElementPurpose

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: StepElement_SurfaceElementPurpose): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_TopAbs_Orientation

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: TopAbs_Orientation): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_TopoDS_Shape

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: TopoDS_Shape): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_bool

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: boolean): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_char

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: string): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_double

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: number): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_float

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: number): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_Circ2d

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_Circ2d): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_Dir

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_Dir): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_Dir2d

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_Dir2d): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_Lin2d

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_Lin2d): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_Pnt

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_Pnt): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_Pnt2d

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_Pnt2d): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_Vec

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_Vec): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_Vec2d

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_Vec2d): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_XY

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_XY): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_gp_XYZ

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: gp_XYZ): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_Geom_BezierSurface

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: Geom_BezierSurface): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_Geom_Surface

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: Geom_Surface): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_MAT2d_Connexion

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: MAT2d_Connexion): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_NCollection_HArray1_double

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: unknown): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_NCollection_HArray1_int

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: unknown): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_Standard_Transient

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: Standard_Transient): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_StepElement_CurveElementPurposeMember

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: StepElement_CurveElementPurposeMember): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_StepElement_SurfaceElementPurposeMember

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: StepElement_SurfaceElementPurposeMember): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_StepGeom_CartesianPoint

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: StepGeom_CartesianPoint): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_handle_StepGeom_SurfacePatch

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: StepGeom_SurfacePatch): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_Array2_int

Purpose: The class Array2 represents bi-dimensional arrays of fixed size known at run time. The ranges of indices are user defined.
Class allocates one 1D array storing full data (all Rows and Columns) and extra 1D array storing pointers to each Row.
Warning: Programs clients of such class must be independent of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.LowerRow(); i <= A.UpperRow(); i++) for (j = A.LowerCol(); j <= A.UpperCol(); j++)
Zero-based (size_t) construction mode: NCollection_Array2(size_t theNbRows, size_t theNbCols) creates a zero-based array (LowerRow()==0, LowerCol()==0). In this mode At()/ChangeAt() and STL iterators are the preferred access path - they address elements directly without any offset subtraction. Buffer-reuse variant NCollection_Array2(pointer, size_t, size_t) wraps an existing flat row-major buffer and does NOT own the memory.

Constructors(5)

Static methods(2)

  • BeginPosition(theRowLower: number, argNo1: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • argNo1
    • theColLower
    • theColUpper
  • LastPosition(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number): number
    Parameters (4)
    • theRowLower
    • theRowUpper
    • theColLower
    • theColUpper

Instance methods(28)

  • Size(): number

    Size (number of items).

  • Length(): number

    Length (legacy int-returning API).

  • NbRows(): number

    Returns number of rows.

  • NbColumns(): number

    Returns number of columns.

  • RowLength(): number

    Returns length of the row, i.e. number of columns.

  • ColLength(): number

    Returns length of the column, i.e. number of rows.

  • LowerRow(): number

    LowerRow.

  • UpperRow(): number

    UpperRow.

  • LowerCol(): number

    LowerCol.

  • UpperCol(): number

    UpperCol.

  • UpdateLowerRow(theLowerRow: number): void

    Updates lower row.

    Parameters (1)
    • theLowerRow
  • UpdateLowerCol(theLowerCol: number): void

    Updates lower column.

    Parameters (1)
    • theLowerCol
  • UpdateUpperRow(theUpperRow: number): void

    Updates upper row.

    Parameters (1)
    • theUpperRow
  • UpdateUpperCol(theUpperCol: number): void

    Updates upper column.

    Parameters (1)
    • theUpperCol
  • Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Assign(theOther: unknown): unknown

    Replaces this array by a copy of theOther array. Row and column bounds are copied from theOther.

    Parameters (1)
    • theOther
  • Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • CopyValues(theOther: unknown): unknown

    Copies values from theOther array without changing this array bounds. This array should be pre-allocated and have the same dimensions as theOther; otherwise exception Standard_DimensionMismatch is thrown.

    Parameters (1)
    • theOther
  • Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Move(theOther: unknown): unknown

    Move assignment. This array will borrow all the data from theOther. The moved object will be left uninitialized and should not be used anymore.

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • SetValue(theRow: number, theCol: number, theItem: number): void

    SetValue.

    Parameters (3)
    • theRow
    • theCol
    • theItem
  • SetValue(theIndex: number, theItem: unknown): void

    SetValue.

    Parameters (2)
    • theIndex
    • theItem
  • Resize(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theLower: number, theUpper: number, theToCopyData: boolean): void

    Zero-based Resize: resizes to theNbRows x theNbCols, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theLower
    • theUpper
    • theToCopyData
      flag to copy existing data into new array
  • Resize(theSize: number, theToCopyData: boolean): void

    Resizes the array to specified bounds. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies elements in linear (row-major) order. No re-allocation is done if dimensions are unchanged.

    Parameters (2)
    • theSize
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theRowLower: number, theRowUpper: number, theColLower: number, theColUpper: number, theToCopyData: boolean): void

    Resizes the array preserving 2D element layout. When theToCopyData is false, the array is re-allocated without preserving data. When theToCopyData is true, copies min(oldNbRows,newNbRows) x min(oldNbCols,newNbCols) elements from the top-left corner of the old array to the top-left corner of the new, preserving relative (row, col) offsets from lower bounds. Trimming or growing as needed. No re-allocation is done if dimensions are unchanged.

    Parameters (5)
    • theRowLower
      new lower Row of array
    • theRowUpper
      new upper Row of array
    • theColLower
      new lower Column of array
    • theColUpper
      new upper Column of array
    • theToCopyData
      flag to copy existing data into new array
  • ResizeWithTrim(theNbRows: number, theNbCols: number, theToCopyData: boolean): void

    Zero-based ResizeWithTrim: resizes preserving 2D layout, keeping lower bounds unchanged. No re-allocation is done if dimensions are unchanged.

    Parameters (3)
    • theNbRows
      new number of rows
    • theNbCols
      new number of columns
    • theToCopyData
      flag to copy existing data into new array

NCollection_DataMap_TCollection_AsciiString_RWObj_Material

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_AsciiString, theItem: RWObj_Material): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TCollection_AsciiString, theItem: RWObj_Material): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_AsciiString_TCollection_AsciiString

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: NCollection_DataMap_TCollection_AsciiString_TCollection_AsciiString_NCollection_DefaultHasher_TCollection_AsciiString): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: NCollection_DataMap_TCollection_AsciiString_TCollection_AsciiString_NCollection_DefaultHasher_TCollection_AsciiString): NCollection_DataMap_TCollection_AsciiString_TCollection_AsciiString_NCollection_DefaultHasher_TCollection_AsciiString

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_AsciiString_TopoDS_Shape

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_AsciiString, theItem: TopoDS_Shape): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TCollection_AsciiString, theItem: TopoDS_Shape): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_AsciiString_handle_STEPCAFControl_ExternFile

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TCollection_AsciiString_handle_Standard_Transient

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: NCollection_DataMap_TCollection_AsciiString_handle_Standard_Transient_NCollection_DefaultHasher_TCollection_AsciiString): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: NCollection_DataMap_TCollection_AsciiString_handle_Standard_Transient_NCollection_DefaultHasher_TCollection_AsciiString): NCollection_DataMap_TCollection_AsciiString_handle_Standard_Transient_NCollection_DefaultHasher_TCollection_AsciiString

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_AsciiString, theItem: Standard_Transient): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_AsciiString_int

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_AsciiString, theItem: number): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TCollection_AsciiString, theItem: number): number

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TCollection_AsciiString, theItem: number): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TCollection_AsciiString, theItem: number): number

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek(theKey: TCollection_AsciiString): number

    Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_ExtendedString_TCollection_ExtendedString

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TCollection_ExtendedString_double

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_ExtendedString, theItem: number): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TCollection_ExtendedString, theItem: number): number

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TCollection_ExtendedString, theItem: number): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TCollection_ExtendedString, theItem: number): number

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_ExtendedString_handle_CDM_MetaData

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_ExtendedString, theItem: CDM_MetaData): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TCollection_ExtendedString, theItem: CDM_MetaData): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_ExtendedString_handle_NCollection_HArray1_double

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_ExtendedString, theItem: unknown): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TCollection_ExtendedString, theItem: unknown): unknown

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TCollection_ExtendedString, theItem: unknown): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TCollection_ExtendedString, theItem: unknown): unknown

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_ExtendedString_handle_NCollection_HArray1_int

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_ExtendedString, theItem: unknown): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TCollection_ExtendedString, theItem: unknown): unknown

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TCollection_ExtendedString, theItem: unknown): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TCollection_ExtendedString, theItem: unknown): unknown

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_ExtendedString_int

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_ExtendedString, theItem: number): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TCollection_ExtendedString, theItem: number): number

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TCollection_ExtendedString, theItem: number): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TCollection_ExtendedString, theItem: number): number

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TCollection_ExtendedString_uint8_t

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TCollection_ExtendedString, theItem: number): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TCollection_ExtendedString, theItem: number): number

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TCollection_ExtendedString, theItem: number): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TCollection_ExtendedString, theItem: number): number

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound.

    Parameters (1)
    • theKey
  • UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TDF_Label_TDF_Label

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TDF_Label, theItem: TDF_Label): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TDF_Label, theItem: TDF_Label): TDF_Label

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TDF_Label, theItem: TDF_Label): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound(theKey: TDF_Label): boolean

    IsBound.

    Parameters (1)
    • theKey
  • UnBind(theKey: TDF_Label): boolean

    UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TDF_Label_int

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange(theOther: unknown): void

    Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • GetHasher(): unknown

    Returns const reference to the hasher.

  • Assign(theOther: unknown): unknown

    Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TDF_Label, theItem: number): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TDF_Label, theItem: number): number

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TDF_Label, theItem: number): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TDF_Label, theItem: number): number

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound(theKey: TDF_Label): boolean

    IsBound.

    Parameters (1)
    • theKey
  • UnBind(theKey: TDF_Label): boolean

    UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek(theKey: TDF_Label): number

    Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek(theKey: TDF_Label): number

    ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind(theKey: TDF_Label): number

    ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TopoDS_Shape_BOPDS_CoupleOfPaveBlocks_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_BRepGraph_NodeId_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_BRepOffset_Offset_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_BRepTopAdaptor_Tool_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_Bnd_Box2d_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_Bnd_Box_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_HLRTopoBRep_FaceData_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_DataMap_TopoDS_Shape_NCollection_List_TopoDS_Shape_TopTools_ShapeMapHasher_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_List_BRepOffset_Interval_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_List_HLRTopoBRep_VData_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_List_Message_Msg_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_List_TopoDS_Shape_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_List_double_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_List_int_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_Map_TopoDS_Shape_TopTools_ShapeMapHasher_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_Sequence_TopoDS_Shape_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_Sequence_double_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_Sequence_gp_Pnt2d_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_Sequence_gp_Pnt_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_NCollection_Sequence_handle_MAT_BasicElt_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_RWMesh_NodeAttributes_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_TCollection_AsciiString_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_TDF_Label_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_TNaming_ShapesSet_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_TopAbs_State_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_TopoDS_Shape_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_double_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns const reference to the hasher.

  • Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TopoDS_Shape, theItem: number): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TopoDS_Shape, theItem: number): number

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TopoDS_Shape, theItem: number): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TopoDS_Shape, theItem: number): number

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound(theKey: TopoDS_Shape): boolean

    IsBound.

    Parameters (1)
    • theKey
  • UnBind(theKey: TopoDS_Shape): boolean

    UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek(theKey: TopoDS_Shape): number

    Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek(theKey: TopoDS_Shape): number

    ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind(theKey: TopoDS_Shape): number

    ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TopoDS_Shape_gp_Pnt_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns const reference to the hasher.

  • Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TopoDS_Shape, theItem: gp_Pnt): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TopoDS_Shape, theItem: gp_Pnt): gp_Pnt

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TopoDS_Shape, theItem: gp_Pnt): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TopoDS_Shape, theItem: gp_Pnt): gp_Pnt

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound(theKey: TopoDS_Shape): boolean

    IsBound.

    Parameters (1)
    • theKey
  • UnBind(theKey: TopoDS_Shape): boolean

    UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TopoDS_Shape_gp_XYZ_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

  • Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!

    Parameters (1)
    • theOther
      Mutated in place; read the updated value from this argument after the call.
  • Returns const reference to the hasher.

  • Assignment. This method does not change the internal allocator.

    Parameters (1)
    • theOther
  • ReSize(N: number): void

    ReSize.

    Parameters (1)
    • N
  • Bind(theKey: TopoDS_Shape, theItem: gp_XYZ): boolean

    Bind binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    true if Key was not bound already

  • Bound(theKey: TopoDS_Shape, theItem: gp_XYZ): gp_XYZ

    Bound binds Item to Key in map.

    Parameters (2)
    • theKey
      key to add/update
    • theItem
      new item; overrides value previously bound to the key (uses destroy+reconstruct)
    Returns

    pointer to modifiable Item

  • TryBind(theKey: TopoDS_Shape, theItem: gp_XYZ): boolean

    TryBind binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    true if Key was newly bound, false if Key already existed (no replacement)

  • TryBound(theKey: TopoDS_Shape, theItem: gp_XYZ): gp_XYZ

    TryBound binds Item to Key in map only if Key is not yet bound.

    Parameters (2)
    • theKey
      key to add
    • theItem
      item to bind if Key is not yet bound
    Returns

    reference to existing or newly bound Item

  • IsBound(theKey: TopoDS_Shape): boolean

    IsBound.

    Parameters (1)
    • theKey
  • UnBind(theKey: TopoDS_Shape): boolean

    UnBind removes Item Key pair from map.

    Parameters (1)
    • theKey
  • Seek returns pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeSeek returns modifiable pointer to Item by Key. Returns NULL is Key was not bound.

    Parameters (1)
    • theKey
  • ChangeFind returns modifiable Item by Key. Raises if Key was not bound.

    Parameters (1)
    • theKey
  • Clear(doReleaseMemory: boolean): void

    Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.

    Parameters (1)
    • doReleaseMemory
  • Clear(theAllocator: NCollection_BaseAllocator): void

    Clear data and reset allocator.

    Parameters (1)
    • theAllocator

NCollection_DataMap_TopoDS_Shape_handle_BRepTopAdaptor_TopolTool_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_handle_Geom_Surface_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_handle_NCollection_HArray2_TopoDS_Shape_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_handle_Standard_Transient_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_handle_StepBasic_ProductDefinition_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)

NCollection_DataMap_TopoDS_Shape_handle_StepShape_ShapeDefinitionRepresentation_TopTools_ShapeMapHasher

Purpose: The DataMap is a Map to store keys with associated Items. See Map from NCollection for a discussion about the number of buckets.
The DataMap can be seen as an extended array where the Keys are the indices. For this reason the operator () is defined on DataMap to fetch an Item from a Key. So the following syntax can be used :
anItem = aMap(aKey); aMap(aKey) = anItem;
This analogy has its limit. aMap(aKey) = anItem can be done only if aKey was previously bound to an item in the map.

Constructors(4)

Instance methods(15)