Open Inventor Release 2023.2.3
 
Loading...
Searching...
No Matches
SbKernel3i32.h
Go to the documentation of this file.
1/*=======================================================================
2 *** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
3 *** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
4 *** ***
5 *** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
6 *** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
7 *** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
8 *** ***
9 *** RESTRICTED RIGHTS LEGEND ***
10 *** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
11 *** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
12 *** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
13 *** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
14 *** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
15 *** ***
16 *** COPYRIGHT (C) 1996-2024 BY FEI S.A.S, ***
17 *** BORDEAUX, FRANCE ***
18 *** ALL RIGHTS RESERVED ***
19**=======================================================================*/
20/*=======================================================================
21** Author : Martial Papillon (oct 2014)
22**=======================================================================*/
23
24#ifndef _SB_KERNEL_3I32_H_
25#define _SB_KERNEL_3I32_H_
26
27#include <ImageViz/SoImageViz.h>
28#include <Inventor/SbVec.h>
29#include <Inventor/SbDataType.h>
30class SoDEPRECATED SbKernel3i32
45{
46public:
51
56 SbKernel3i32(size_t numCols, size_t numRows, size_t numSlices);
57
63
68
74
78 size_t getNumRows() const;
79
83 size_t getNumCols() const;
84
88 size_t getNumSlices() const;
89
91
100 void setSize(size_t numCols, size_t numRows, size_t numSlices);
101 void setSize(const SbVec3i32& dimension);
103
110 int32_t getValue(int indexCol, int indexRow, int indexSlice) const;
111
118 void setValue(int indexCol, int indexRow, int indexSlice, int32_t value);
119
131 int32_t& operator()(int i, int j, int k);
132
144 const int32_t& operator()(int i, int j, int k) const ;
145
149 friend int operator ==(const SbKernel3i32 &k1, const SbKernel3i32 &k2);
150
154 friend int operator !=(const SbKernel3i32 &k1, const SbKernel3i32 &k2)
155 { return !(k1 == k2); }
156
157private:
159 std::vector<int32_t> m_kernelsValues;
160 size_t m_numRows;
161 size_t m_numCols;
162 size_t m_numSlices;
163};
164
165#endif
int operator==(const className &f) const
Returns TRUE if otherField is of the same type and has the same value as this field.
int operator!=(const className &f) const
Returns FALSE if otherField is of the same type and has the same value as this field.
Definition SoSubField.h:249
<a href="IconLegend.html"><img src="extIP.gif" alt="ImageViz" border="0"></a> Integer 3D-Kernel for ...
~SbKernel3i32()
Destructor.
void setSize(size_t numCols, size_t numRows, size_t numSlices)
Set the size of the kernel.
int32_t getValue(int indexCol, int indexRow, int indexSlice) const
Returns the value of the kernel at position (i, j, k).
void setSize(const SbVec3i32 &dimension)
SbKernel3i32()
Default constructor.
void setValue(int indexCol, int indexRow, int indexSlice, int32_t value)
Sets the value of the kernel at position (i, j, k).
const int32_t & operator()(int i, int j, int k) const
Accesor operator.
SbKernel3i32(const SbVec3i32 &size)
Constructor defining the size of the kernel.
SbKernel3i32(size_t numCols, size_t numRows, size_t numSlices)
Constructor defining the size of the kernel.
size_t getNumCols() const
Returns the number of columns.
SbVec3i32 getSize() const
Returns the size of the kernel.
size_t getNumRows() const
Returns the number of rows.
size_t getNumSlices() const
Returns the number of slices.
int32_t & operator()(int i, int j, int k)
L-value accesor operator.
3D vector class.
Definition SbVec.h:1517
size_t size() const