IOLink C# 1.11.0
Loading...
Searching...
No Matches
IOLink.Region4u64 Class Reference

A multi-dimensional region defined by its origin and its size. More...

Inheritance diagram for IOLink.Region4u64:

Public Member Functions

 Region4u64 (global::System.IntPtr cPtr, bool cMemoryOwn)
 
void Dispose ()
 
override bool Equals (object obj)
 
 Region4u64 ()
 Create an empty region.
 
 Region4u64 (Vector4u64 origin, Vector4u64 size)
 Create a region with given origin and size.
 
uint GetDimensionCount ()
 Return number of dimension of this region.
 
Vector4u64 GetOrigin ()
 Return region's origin.
 
Vector4u64 GetSize ()
 return size of region
 
uint GetElementCount ()
 Return number of elements (pixel, voxel, samples) contained in the region. For Integer-indexed-regions, it return product of each dimensions. This method has no sense for Float-indexed-regions and thus return 0.
 
Vector4u64 GetMin ()
 return min region coordinates
 
Vector4u64 GetMax ()
 return max region coordinates
 
bool GetEmpty ()
 Indicates if region is empty.
 
bool Contains (Region4u64 other)
 Returns if the current region contains the given one.
 
bool Contains (Vector4u64 position)
 Returns if the given region contains the given position vector.
 
bool Intersect (Region4u64 other)
 Returns if the given region intersects the given position vector.
 
Region4u64 Intersection (Region4u64 other)
 Returns the intersection region between current and given one.
 
Region4u64 ExtractSliceFromAxis (uint dimension, ulong origin)
 Returns a region of size one along one axis.
 
 Region4u64 (RegionXu64 other)
 
string ToString ()
 Return a string representation.
 
 Region4u64 (Region4u64 other)
 

Static Public Member Functions

static global::System.Runtime.InteropServices.HandleRef getCPtr (Region4u64 obj)
 
static global::System.Runtime.InteropServices.HandleRef swigRelease (Region4u64 obj)
 
static bool operator== (Region4u64 v1, Region4u64 v2)
 
static bool operator!= (Region4u64 v1, Region4u64 v2)
 
static bool InternalEqual (Region4u64 v1, Region4u64 v2)
 

Protected Member Functions

virtual void Dispose (bool disposing)
 

Protected Attributes

bool swigCMemOwn
 

Properties

uint DimensionCount [get]
 The number of dimensions of this Region
 
Vector4u64 Origin [get]
 The origin of the region.
 
Vector4u64 Size [get]
 The number of element in this Region along each dimension.
 
Vector4u64 Min [get]
 The point of the region the closest to the coordinate system's origin.
 
Vector4u64 Max [get]
 The point of the region the furthest to the coordinate system's origin.
 
uint ElementCount [get]
 The number of elements in this region.
 
bool IsEmpty [get]
 Checks if the region has no element in it.
 

Detailed Description

A multi-dimensional region defined by its origin and its size.

Origin is always the left-bottom corner of the region.

Parameters
TThe type of region indexers
NThe dimension of the region.

Region definition is different according to its indexer type. Float-indexed-regions are defined from origin point (Org) to Max = Org + region size. Integer-indexed-regions are defined from Org to Max = Org + region size - 1

Up-boundaries are not included for integer-indexers-regions (except when size is 0 and region is a point).

Up-boundaries are included for float-indexers-regions.

Aliases can be used to made this class more practical to use. They use the following convention: RegionNX

Where N is the dimension and X the type. The types currently available are:

  • F for single precision floats.
  • D for double precision floats.
  • U64 for uint64_t.

Examples:

  • Region2u64: 2 dimensional uint64_t region.

Constructor & Destructor Documentation

◆ Region4u64()

IOLink.Region4u64.Region4u64 ( Vector4u64  origin,
Vector4u64  size 
)
inline

Create a region with given origin and size.

Parameters
originvector containing region origin
sizevector containing region size

Member Function Documentation

◆ Contains() [1/2]

bool IOLink.Region4u64.Contains ( Region4u64  other)
inline

Returns if the current region contains the given one.

Parameters
otherregion to test if it is contained into current one
Returns
if the given region is contained into current one

◆ Contains() [2/2]

bool IOLink.Region4u64.Contains ( Vector4u64  position)
inline

Returns if the given region contains the given position vector.

Parameters
positionpoint to test if it is contained into current one
Returns
if the given position is contained into current region

◆ ExtractSliceFromAxis()

Region4u64 IOLink.Region4u64.ExtractSliceFromAxis ( uint  dimension,
ulong  origin 
)
inline

Returns a region of size one along one axis.

Parameters
dimensionaxis on which the slice must be selected
originposition of slice in given dimension
Returns
the slice at given position for given dimension
Exceptions
InvalidArgumentif dimension or origin are out of range

e.g. a 3D region {{0, 0, 0}, {5, 6, 7}}

  • extractSliceFromAxis(0, 3) returns 3D region {{3, 0, 0}, {1, 6, 7}}
  • extractSliceFromAxis(1, 4) returns 3D region {{0, 4, 0}, {5, 1, 7}}
  • extractSliceFromAxis(2, 5) returns 3D region {{0, 0, 5}, {5, 6, 1}}

e.g. a 3D region with non-null origin { {2, 3, 4}, {5, 6, 7}}

extractSliceFromAxis(0, 3) returns 3D region {{5, 3, 4}, {1, 6, 7}}

◆ GetEmpty()

bool IOLink.Region4u64.GetEmpty ( )
inline

Indicates if region is empty.

Returns
if region is empty

◆ GetMax()

Vector4u64 IOLink.Region4u64.GetMax ( )
inline

return max region coordinates

Returns
max region vector

◆ GetMin()

Vector4u64 IOLink.Region4u64.GetMin ( )
inline

return min region coordinates

Returns
min region vector

◆ GetSize()

Vector4u64 IOLink.Region4u64.GetSize ( )
inline

return size of region

Returns
size vector of the region

◆ Intersect()

bool IOLink.Region4u64.Intersect ( Region4u64  other)
inline

Returns if the given region intersects the given position vector.

Parameters
otherregion to test if it intersects with current one
Returns
if the given region intersects current region

◆ Intersection()

Region4u64 IOLink.Region4u64.Intersection ( Region4u64  other)
inline

Returns the intersection region between current and given one.

Parameters
otherregion
Returns
intersection region if it intersects or empty region otherwise

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