MeshLib Java Docs
Loading...
Searching...
No Matches
Inheritance diagram for meshlib.Box3i64:

Public Member Functions

 Box3i64 (java.lang.foreign.MemorySegment segment, java.lang.Object owner)
Box3i64 copy ()
void set (Box3i64 other)
meshlib.Vector3i64 min ()
void setMin (meshlib.Vector3i64 value)
meshlib.Vector3i64 max ()
void setMax (meshlib.Vector3i64 value)
 Box3i64 ()
 Box3i64 (meshlib.Vector3i64 min, meshlib.Vector3i64 max)
 Box3i64 (meshlib.NoInit _1)
meshlib.Vector3i64 index (int e)
meshlib.Vector3i64 index_mut (int e)
boolean valid ()
meshlib.Vector3i64 center ()
meshlib.Vector3i64 corner (meshlib.Vector3b c)
meshlib.Vector3i64 size ()
long diagonal ()
long volume ()
void include (meshlib.Vector3i64 pt)
void include (meshlib.Box3i64 b)
boolean contains (meshlib.Vector3i64 pt)
boolean contains (meshlib.Box3i64 otherbox)
meshlib.Vector3i64 getBoxClosestPointTo (meshlib.Vector3i64 pt)
boolean intersects (meshlib.Box3i64 b)
meshlib.Box3i64 intersection (meshlib.Box3i64 b)
meshlib.Box3i64 intersect (meshlib.Box3i64 b)
long getDistanceSq (meshlib.Box3i64 b)
long getDistanceSq (meshlib.Vector3i64 pt)
meshlib.Vector3i64 getProjection (meshlib.Vector3i64 pt)
meshlib.Box3i64 expanded (meshlib.Vector3i64 expansion)
meshlib.Box3i64 insignificantlyExpanded ()
boolean opEqual (meshlib.Box3i64 a)
boolean opNotEqual (meshlib.Box3i64 a)
Public Member Functions inherited from meshlib.CppStruct
final java.lang.foreign.MemorySegment rawPointer ()

Static Public Member Functions

static meshlib.Box3i64 fromMinAndSize (meshlib.Vector3i64 min, meshlib.Vector3i64 size)
static meshlib.Vector3b getMinBoxCorner (meshlib.Vector3i64 n)
static meshlib.Vector3b getMaxBoxCorner (meshlib.Vector3i64 n)
static int elements ()

Static Public Attributes

static final java.lang.foreign.StructLayout LAYOUT = meshlib.Ffi.structLayout(new java.lang.String[]{"min", "max"}, new java.lang.foreign.MemoryLayout[]{meshlib.Vector3i64.LAYOUT, meshlib.Vector3i64.LAYOUT})
static final long OFF_min = LAYOUT.byteOffset(java.lang.foreign.MemoryLayout.PathElement.groupElement("min"))
static final long OFF_max = LAYOUT.byteOffset(java.lang.foreign.MemoryLayout.PathElement.groupElement("max"))

Additional Inherited Members

Protected Member Functions inherited from meshlib.CppStruct
 CppStruct (java.lang.foreign.MemorySegment segment, java.lang.Object owner)
Protected Attributes inherited from meshlib.CppStruct
final java.lang.foreign.MemorySegment segment

Detailed Description

Box given by its min- and max- corners Generated from class MR::Box3i64.

Has the same layout as the C++ struct, the fields are accessed in place in native memory.

Constructor & Destructor Documentation

◆ Box3i64() [1/4]

meshlib.Box3i64.Box3i64 ( java.lang.foreign.MemorySegment segment,
java.lang.Object owner )

Wraps a segment holding the struct. owner is kept alive as long as this wrapper is. Not for normal use.

◆ Box3i64() [2/4]

meshlib.Box3i64.Box3i64 ( )

create invalid box by default

Calls MR_Box3i64_DefaultConstruct().

◆ Box3i64() [3/4]

meshlib.Box3i64.Box3i64 ( meshlib.Vector3i64 min,
meshlib.Vector3i64 max )

Generated from constructor MR::Box3i64::Box3i64. The reference to the parameter min might be preserved in the constructed object. The reference to the parameter max might be preserved in the constructed object.

Calls MR_Box3i64_Construct_2().

◆ Box3i64() [4/4]

meshlib.Box3i64.Box3i64 ( meshlib.NoInit _1)

If the compiler supports requires, use that instead of std::enable_if here. Not (only) because it looks cooler, but because of a bug in our binding generator that makes it choke on it: https://github.com/MeshInspector/mrbind/issues/19 Generated from constructor MR::Box3i64::Box3i64. The reference to the parameter _1 might be preserved in the constructed object.

Calls MR_Box3i64_Construct_1().

Member Function Documentation

◆ center()

meshlib.Vector3i64 meshlib.Box3i64.center ( )

computes center of the box Generated from method MR::Box3i64::center.

Calls MR_Box3i64_center().

◆ contains() [1/2]

boolean meshlib.Box3i64.contains ( meshlib.Box3i64 otherbox)

checks whether given box is fully inside (the surfaces may touch) of this box Generated from method MR::Box3i64::contains.

Calls MR_Box3i64_contains_MR_Box3i64().

◆ contains() [2/2]

boolean meshlib.Box3i64.contains ( meshlib.Vector3i64 pt)

checks whether given point is inside (including the surface) of this box Generated from method MR::Box3i64::contains.

Calls MR_Box3i64_contains_MR_Vector3i64().

◆ copy()

Box3i64 meshlib.Box3i64.copy ( )

A copy of the struct, in its own memory.

◆ corner()

meshlib.Vector3i64 meshlib.Box3i64.corner ( meshlib.Vector3b c)

returns the corner of this box as specified by given bool-vector: 0 element in (c) means take min's coordinate, 1 element in (c) means take max's coordinate Generated from method MR::Box3i64::corner.

Calls MR_Box3i64_corner().

◆ diagonal()

long meshlib.Box3i64.diagonal ( )

computes length from min to max Generated from method MR::Box3i64::diagonal.

Calls MR_Box3i64_diagonal().

◆ elements()

int meshlib.Box3i64.elements ( )
static

Returns a pointer to a member variable of class MR::Box3i64 named elements.

Calls MR_Box3i64_Get_elements().

◆ expanded()

meshlib.Box3i64 meshlib.Box3i64.expanded ( meshlib.Vector3i64 expansion)

decreases min and increased max on given value Generated from method MR::Box3i64::expanded.

Calls MR_Box3i64_expanded().

◆ fromMinAndSize()

meshlib.Box3i64 meshlib.Box3i64.fromMinAndSize ( meshlib.Vector3i64 min,
meshlib.Vector3i64 size )
static

Generated from method MR::Box3i64::fromMinAndSize.

Calls MR_Box3i64_fromMinAndSize().

◆ getBoxClosestPointTo()

meshlib.Vector3i64 meshlib.Box3i64.getBoxClosestPointTo ( meshlib.Vector3i64 pt)

returns closest point in the box to given point Generated from method MR::Box3i64::getBoxClosestPointTo.

Calls MR_Box3i64_getBoxClosestPointTo().

◆ getDistanceSq() [1/2]

long meshlib.Box3i64.getDistanceSq ( meshlib.Box3i64 b)

returns squared distance between this box and given one; returns zero if the boxes touch or intersect Generated from method MR::Box3i64::getDistanceSq.

Calls MR_Box3i64_getDistanceSq_MR_Box3i64().

◆ getDistanceSq() [2/2]

long meshlib.Box3i64.getDistanceSq ( meshlib.Vector3i64 pt)

returns squared distance between this box and given point; returns zero if the point is inside or on the boundary of the box Generated from method MR::Box3i64::getDistanceSq.

Calls MR_Box3i64_getDistanceSq_MR_Vector3i64().

◆ getMaxBoxCorner()

meshlib.Vector3b meshlib.Box3i64.getMaxBoxCorner ( meshlib.Vector3i64 n)
static

considering all planes with given normal and arbitrary shift: dot(n,x) = d finds the box's corner for which d is maximal Generated from method MR::Box3i64::getMaxBoxCorner.

Calls MR_Box3i64_getMaxBoxCorner().

◆ getMinBoxCorner()

meshlib.Vector3b meshlib.Box3i64.getMinBoxCorner ( meshlib.Vector3i64 n)
static

considering all planes with given normal and arbitrary shift: dot(n,x) = d finds the box's corner for which d is minimal Generated from method MR::Box3i64::getMinBoxCorner.

Calls MR_Box3i64_getMinBoxCorner().

◆ getProjection()

meshlib.Vector3i64 meshlib.Box3i64.getProjection ( meshlib.Vector3i64 pt)

returns the closest point on the box to the given point for points outside the box this is equivalent to getBoxClosestPointTo Generated from method MR::Box3i64::getProjection.

Calls MR_Box3i64_getProjection().

◆ include() [1/2]

void meshlib.Box3i64.include ( meshlib.Box3i64 b)

minimally increases the box to include another box Generated from method MR::Box3i64::include.

Calls MR_Box3i64_include_MR_Box3i64().

◆ include() [2/2]

void meshlib.Box3i64.include ( meshlib.Vector3i64 pt)

minimally increases the box to include given point Generated from method MR::Box3i64::include.

Calls MR_Box3i64_include_MR_Vector3i64().

◆ index()

meshlib.Vector3i64 meshlib.Box3i64.index ( int e)

min/max access by 0/1 index Generated from method MR::Box3i64::operator[].

Calls MR_Box3i64_index().

◆ index_mut()

meshlib.Vector3i64 meshlib.Box3i64.index_mut ( int e)

Generated from method MR::Box3i64::operator[].

Calls MR_Box3i64_index_mut().

◆ insignificantlyExpanded()

meshlib.Box3i64 meshlib.Box3i64.insignificantlyExpanded ( )

decreases min and increases max to their closest representable value Generated from method MR::Box3i64::insignificantlyExpanded.

Calls MR_Box3i64_insignificantlyExpanded().

◆ intersect()

meshlib.Box3i64 meshlib.Box3i64.intersect ( meshlib.Box3i64 b)

Generated from method MR::Box3i64::intersect.

Calls MR_Box3i64_intersect().

◆ intersection()

meshlib.Box3i64 meshlib.Box3i64.intersection ( meshlib.Box3i64 b)

computes intersection between this and other box Generated from method MR::Box3i64::intersection.

Calls MR_Box3i64_intersection().

◆ intersects()

boolean meshlib.Box3i64.intersects ( meshlib.Box3i64 b)

checks whether this box intersects or touches given box Generated from method MR::Box3i64::intersects.

Calls MR_Box3i64_intersects().

◆ max()

meshlib.Vector3i64 meshlib.Box3i64.max ( )

◆ min()

meshlib.Vector3i64 meshlib.Box3i64.min ( )

◆ opEqual()

boolean meshlib.Box3i64.opEqual ( meshlib.Box3i64 a)

Generated from method MR::Box3i64::operator==.

Calls MR_equal_MR_Box3i64().

◆ opNotEqual()

boolean meshlib.Box3i64.opNotEqual ( meshlib.Box3i64 a)

Generated from method MR::Box3i64::operator!=.

Calls MR_not_equal_MR_Box3i64().

◆ set()

void meshlib.Box3i64.set ( Box3i64 other)

Overwrites the contents with those of another struct.

◆ setMax()

void meshlib.Box3i64.setMax ( meshlib.Vector3i64 value)

◆ setMin()

void meshlib.Box3i64.setMin ( meshlib.Vector3i64 value)

◆ size()

meshlib.Vector3i64 meshlib.Box3i64.size ( )

computes size of the box in all dimensions Generated from method MR::Box3i64::size.

Calls MR_Box3i64_size().

◆ valid()

boolean meshlib.Box3i64.valid ( )

true if the box contains at least one point Generated from method MR::Box3i64::valid.

Calls MR_Box3i64_valid().

◆ volume()

long meshlib.Box3i64.volume ( )

computes the volume of this box Generated from method MR::Box3i64::volume.

Calls MR_Box3i64_volume().

Member Data Documentation

◆ LAYOUT

final java.lang.foreign.StructLayout meshlib.Box3i64.LAYOUT = meshlib.Ffi.structLayout(new java.lang.String[]{"min", "max"}, new java.lang.foreign.MemoryLayout[]{meshlib.Vector3i64.LAYOUT, meshlib.Vector3i64.LAYOUT})
static

The native layout of the struct.

◆ OFF_max

final long meshlib.Box3i64.OFF_max = LAYOUT.byteOffset(java.lang.foreign.MemoryLayout.PathElement.groupElement("max"))
static

◆ OFF_min

final long meshlib.Box3i64.OFF_min = LAYOUT.byteOffset(java.lang.foreign.MemoryLayout.PathElement.groupElement("min"))
static

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