MeshLib C Docs
Loading...
Searching...
No Matches
MRLine.h File Reference
#include <MRCMesh/MRVector2.h>
#include <MRCMesh/MRVector3.h>
#include <MRCMisc/exports.h>
#include <stddef.h>

Go to the source code of this file.

Typedefs

typedef struct MR_std_istream MR_std_istream
 
typedef struct MR_std_ostream MR_std_ostream
 
typedef struct MR_Line2f MR_Line2f
 
typedef struct MR_Line2d MR_Line2d
 
typedef struct MR_Line3f MR_Line3f
 
typedef struct MR_Line3d MR_Line3d
 

Functions

MRC_API const MR_Vector2fMR_Line2f_Get_p (const MR_Line2f *_this)
 
MRC_API void MR_Line2f_Set_p (MR_Line2f *_this, MR_Vector2f value)
 
MRC_API MR_Vector2fMR_Line2f_GetMutable_p (MR_Line2f *_this)
 
MRC_API const MR_Vector2fMR_Line2f_Get_d (const MR_Line2f *_this)
 
MRC_API void MR_Line2f_Set_d (MR_Line2f *_this, MR_Vector2f value)
 
MRC_API MR_Vector2fMR_Line2f_GetMutable_d (MR_Line2f *_this)
 
MRC_API MR_Line2fMR_Line2f_DefaultConstruct (void)
 
MRC_API MR_Line2fMR_Line2f_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_Line2fMR_Line2f_OffsetPtr (const MR_Line2f *ptr, ptrdiff_t i)
 
MRC_API MR_Line2fMR_Line2f_OffsetMutablePtr (MR_Line2f *ptr, ptrdiff_t i)
 
MRC_API MR_Line2fMR_Line2f_ConstructFromAnother (const MR_Line2f *_other)
 
MRC_API MR_Line2fMR_Line2f_Construct (const MR_Vector2f *p, const MR_Vector2f *d)
 
MRC_API void MR_Line2f_Destroy (const MR_Line2f *_this)
 Destroys a heap-allocated instance of MR_Line2f. Does nothing if the pointer is null.
 
MRC_API void MR_Line2f_DestroyArray (const MR_Line2f *_this)
 Destroys a heap-allocated array of MR_Line2f. Does nothing if the pointer is null.
 
MRC_API MR_Line2fMR_Line2f_AssignFromAnother (MR_Line2f *_this, const MR_Line2f *_other)
 
MRC_API MR_Vector2f MR_Line2f_call (const MR_Line2f *_this, float param)
 
MRC_API float MR_Line2f_distanceSq (const MR_Line2f *_this, const MR_Vector2f *x)
 
MRC_API MR_Line2fMR_neg_MR_Line2f (const MR_Line2f *_this)
 
MRC_API const MR_Line2fMR_pos_MR_Line2f (const MR_Line2f *_this)
 
MRC_API MR_Line2fMR_Line2f_normalized (const MR_Line2f *_this)
 
MRC_API MR_Vector2f MR_Line2f_project (const MR_Line2f *_this, const MR_Vector2f *x)
 
MRC_API MR_std_ostreamMR_print_MR_Line2f (MR_std_ostream *s, const MR_Line2f *l)
 
MRC_API MR_std_istreamMR_input_MR_Line2f (MR_std_istream *s, MR_Line2f *l)
 
MRC_API const MR_Vector2dMR_Line2d_Get_p (const MR_Line2d *_this)
 
MRC_API void MR_Line2d_Set_p (MR_Line2d *_this, MR_Vector2d value)
 
MRC_API MR_Vector2dMR_Line2d_GetMutable_p (MR_Line2d *_this)
 
MRC_API const MR_Vector2dMR_Line2d_Get_d (const MR_Line2d *_this)
 
MRC_API void MR_Line2d_Set_d (MR_Line2d *_this, MR_Vector2d value)
 
MRC_API MR_Vector2dMR_Line2d_GetMutable_d (MR_Line2d *_this)
 
MRC_API MR_Line2dMR_Line2d_DefaultConstruct (void)
 
MRC_API MR_Line2dMR_Line2d_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_Line2dMR_Line2d_OffsetPtr (const MR_Line2d *ptr, ptrdiff_t i)
 
MRC_API MR_Line2dMR_Line2d_OffsetMutablePtr (MR_Line2d *ptr, ptrdiff_t i)
 
MRC_API MR_Line2dMR_Line2d_ConstructFromAnother (const MR_Line2d *_other)
 
MRC_API MR_Line2dMR_Line2d_Construct (const MR_Vector2d *p, const MR_Vector2d *d)
 
MRC_API void MR_Line2d_Destroy (const MR_Line2d *_this)
 Destroys a heap-allocated instance of MR_Line2d. Does nothing if the pointer is null.
 
MRC_API void MR_Line2d_DestroyArray (const MR_Line2d *_this)
 Destroys a heap-allocated array of MR_Line2d. Does nothing if the pointer is null.
 
MRC_API MR_Line2dMR_Line2d_AssignFromAnother (MR_Line2d *_this, const MR_Line2d *_other)
 
MRC_API MR_Vector2d MR_Line2d_call (const MR_Line2d *_this, double param)
 
MRC_API double MR_Line2d_distanceSq (const MR_Line2d *_this, const MR_Vector2d *x)
 
MRC_API MR_Line2dMR_neg_MR_Line2d (const MR_Line2d *_this)
 
MRC_API const MR_Line2dMR_pos_MR_Line2d (const MR_Line2d *_this)
 
MRC_API MR_Line2dMR_Line2d_normalized (const MR_Line2d *_this)
 
MRC_API MR_Vector2d MR_Line2d_project (const MR_Line2d *_this, const MR_Vector2d *x)
 
MRC_API MR_std_ostreamMR_print_MR_Line2d (MR_std_ostream *s, const MR_Line2d *l)
 
MRC_API MR_std_istreamMR_input_MR_Line2d (MR_std_istream *s, MR_Line2d *l)
 
MRC_API const MR_Vector3fMR_Line3f_Get_p (const MR_Line3f *_this)
 
MRC_API void MR_Line3f_Set_p (MR_Line3f *_this, MR_Vector3f value)
 
MRC_API MR_Vector3fMR_Line3f_GetMutable_p (MR_Line3f *_this)
 
MRC_API const MR_Vector3fMR_Line3f_Get_d (const MR_Line3f *_this)
 
MRC_API void MR_Line3f_Set_d (MR_Line3f *_this, MR_Vector3f value)
 
MRC_API MR_Vector3fMR_Line3f_GetMutable_d (MR_Line3f *_this)
 
MRC_API MR_Line3fMR_Line3f_DefaultConstruct (void)
 
MRC_API MR_Line3fMR_Line3f_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_Line3fMR_Line3f_OffsetPtr (const MR_Line3f *ptr, ptrdiff_t i)
 
MRC_API MR_Line3fMR_Line3f_OffsetMutablePtr (MR_Line3f *ptr, ptrdiff_t i)
 
MRC_API MR_Line3fMR_Line3f_ConstructFromAnother (const MR_Line3f *_other)
 
MRC_API MR_Line3fMR_Line3f_Construct (const MR_Vector3f *p, const MR_Vector3f *d)
 
MRC_API MR_Line3fMR_Line3f_Construct_MR_Vector3d (const MR_Line3d *l)
 
MRC_API void MR_Line3f_Destroy (const MR_Line3f *_this)
 Destroys a heap-allocated instance of MR_Line3f. Does nothing if the pointer is null.
 
MRC_API void MR_Line3f_DestroyArray (const MR_Line3f *_this)
 Destroys a heap-allocated array of MR_Line3f. Does nothing if the pointer is null.
 
MRC_API MR_Line3fMR_Line3f_AssignFromAnother (MR_Line3f *_this, const MR_Line3f *_other)
 
MRC_API MR_Vector3f MR_Line3f_call (const MR_Line3f *_this, float param)
 
MRC_API float MR_Line3f_distanceSq (const MR_Line3f *_this, const MR_Vector3f *x)
 
MRC_API MR_Line3fMR_neg_MR_Line3f (const MR_Line3f *_this)
 
MRC_API const MR_Line3fMR_pos_MR_Line3f (const MR_Line3f *_this)
 
MRC_API MR_Line3fMR_Line3f_normalized (const MR_Line3f *_this)
 
MRC_API MR_Vector3f MR_Line3f_project (const MR_Line3f *_this, const MR_Vector3f *x)
 
MRC_API MR_std_ostreamMR_print_MR_Line3f (MR_std_ostream *s, const MR_Line3f *l)
 
MRC_API MR_std_istreamMR_input_MR_Line3f (MR_std_istream *s, MR_Line3f *l)
 
MRC_API const MR_Vector3dMR_Line3d_Get_p (const MR_Line3d *_this)
 
MRC_API void MR_Line3d_Set_p (MR_Line3d *_this, MR_Vector3d value)
 
MRC_API MR_Vector3dMR_Line3d_GetMutable_p (MR_Line3d *_this)
 
MRC_API const MR_Vector3dMR_Line3d_Get_d (const MR_Line3d *_this)
 
MRC_API void MR_Line3d_Set_d (MR_Line3d *_this, MR_Vector3d value)
 
MRC_API MR_Vector3dMR_Line3d_GetMutable_d (MR_Line3d *_this)
 
MRC_API MR_Line3dMR_Line3d_DefaultConstruct (void)
 
MRC_API MR_Line3dMR_Line3d_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_Line3dMR_Line3d_OffsetPtr (const MR_Line3d *ptr, ptrdiff_t i)
 
MRC_API MR_Line3dMR_Line3d_OffsetMutablePtr (MR_Line3d *ptr, ptrdiff_t i)
 
MRC_API MR_Line3dMR_Line3d_ConstructFromAnother (const MR_Line3d *_other)
 
MRC_API MR_Line3dMR_Line3d_Construct (const MR_Vector3d *p, const MR_Vector3d *d)
 
MRC_API void MR_Line3d_Destroy (const MR_Line3d *_this)
 Destroys a heap-allocated instance of MR_Line3d. Does nothing if the pointer is null.
 
MRC_API void MR_Line3d_DestroyArray (const MR_Line3d *_this)
 Destroys a heap-allocated array of MR_Line3d. Does nothing if the pointer is null.
 
MRC_API MR_Line3dMR_Line3d_AssignFromAnother (MR_Line3d *_this, const MR_Line3d *_other)
 
MRC_API MR_Vector3d MR_Line3d_call (const MR_Line3d *_this, double param)
 
MRC_API double MR_Line3d_distanceSq (const MR_Line3d *_this, const MR_Vector3d *x)
 
MRC_API MR_Line3dMR_neg_MR_Line3d (const MR_Line3d *_this)
 
MRC_API const MR_Line3dMR_pos_MR_Line3d (const MR_Line3d *_this)
 
MRC_API MR_Line3dMR_Line3d_normalized (const MR_Line3d *_this)
 
MRC_API MR_Vector3d MR_Line3d_project (const MR_Line3d *_this, const MR_Vector3d *x)
 
MRC_API MR_std_ostreamMR_print_MR_Line3d (MR_std_ostream *s, const MR_Line3d *l)
 
MRC_API MR_std_istreamMR_input_MR_Line3d (MR_std_istream *s, MR_Line3d *l)
 

Typedef Documentation

◆ MR_Line2d

typedef struct MR_Line2d MR_Line2d

2- or 3-dimensional line: cross( x - p, d ) = 0 Generated from class MR::Line2d. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_Line2f

typedef struct MR_Line2f MR_Line2f

2- or 3-dimensional line: cross( x - p, d ) = 0 Generated from class MR::Line2f. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_Line3d

typedef struct MR_Line3d MR_Line3d

2- or 3-dimensional line: cross( x - p, d ) = 0 Generated from class MR::Line3d. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_Line3f

typedef struct MR_Line3f MR_Line3f

2- or 3-dimensional line: cross( x - p, d ) = 0 Generated from class MR::Line3f. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

◆ MR_std_istream

◆ MR_std_ostream

Function Documentation

◆ MR_input_MR_Line2d()

MRC_API MR_std_istream * MR_input_MR_Line2d ( MR_std_istream * s,
MR_Line2d * l )

Generated from function MR::operator>>. Parameter s can not be null. It is a single object. Parameter l can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_input_MR_Line2f()

MRC_API MR_std_istream * MR_input_MR_Line2f ( MR_std_istream * s,
MR_Line2f * l )

Generated from function MR::operator>>. Parameter s can not be null. It is a single object. Parameter l can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_input_MR_Line3d()

MRC_API MR_std_istream * MR_input_MR_Line3d ( MR_std_istream * s,
MR_Line3d * l )

Generated from function MR::operator>>. Parameter s can not be null. It is a single object. Parameter l can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_input_MR_Line3f()

MRC_API MR_std_istream * MR_input_MR_Line3f ( MR_std_istream * s,
MR_Line3f * l )

Generated from function MR::operator>>. Parameter s can not be null. It is a single object. Parameter l can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line2d_AssignFromAnother()

MRC_API MR_Line2d * MR_Line2d_AssignFromAnother ( MR_Line2d * _this,
const MR_Line2d * _other )

Generated from method MR::Line2d::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_Line2d_call()

MRC_API MR_Vector2d MR_Line2d_call ( const MR_Line2d * _this,
double param )

returns point on the line, where param=0 returns p and param=1 returns p+d Generated from method MR::Line2d::operator(). Parameter _this can not be null. It is a single object.

◆ MR_Line2d_Construct()

MRC_API MR_Line2d * MR_Line2d_Construct ( const MR_Vector2d * p,
const MR_Vector2d * d )

Generated from constructor MR::Line2d::Line2d. Parameter p can not be null. It is a single object. The reference to the parameter p might be preserved in the constructed object. Parameter d can not be null. It is a single object. The reference to the parameter d might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2d_Destroy() to free it when you're done using it.

◆ MR_Line2d_ConstructFromAnother()

MRC_API MR_Line2d * MR_Line2d_ConstructFromAnother ( const MR_Line2d * _other)

Generated from constructor MR::Line2d::Line2d. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2d_Destroy() to free it when you're done using it.

◆ MR_Line2d_DefaultConstruct()

MRC_API MR_Line2d * MR_Line2d_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2d_Destroy() to free it when you're done using it.

◆ MR_Line2d_DefaultConstructArray()

MRC_API MR_Line2d * MR_Line2d_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_Line2d_DestroyArray(). Use MR_Line2d_OffsetMutablePtr() and MR_Line2d_OffsetPtr() to access the array elements.

◆ MR_Line2d_Destroy()

MRC_API void MR_Line2d_Destroy ( const MR_Line2d * _this)

Destroys a heap-allocated instance of MR_Line2d. Does nothing if the pointer is null.

◆ MR_Line2d_DestroyArray()

MRC_API void MR_Line2d_DestroyArray ( const MR_Line2d * _this)

Destroys a heap-allocated array of MR_Line2d. Does nothing if the pointer is null.

◆ MR_Line2d_distanceSq()

MRC_API double MR_Line2d_distanceSq ( const MR_Line2d * _this,
const MR_Vector2d * x )

returns squared distance from given point to this line Generated from method MR::Line2d::distanceSq. Parameter _this can not be null. It is a single object. Parameter x can not be null. It is a single object.

◆ MR_Line2d_Get_d()

MRC_API const MR_Vector2d * MR_Line2d_Get_d ( const MR_Line2d * _this)

Returns a pointer to a member variable of class MR::Line2d named d. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line2d_Get_p()

MRC_API const MR_Vector2d * MR_Line2d_Get_p ( const MR_Line2d * _this)

Returns a pointer to a member variable of class MR::Line2d named p. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line2d_GetMutable_d()

MRC_API MR_Vector2d * MR_Line2d_GetMutable_d ( MR_Line2d * _this)

Returns a mutable pointer to a member variable of class MR::Line2d named d. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line2d_GetMutable_p()

MRC_API MR_Vector2d * MR_Line2d_GetMutable_p ( MR_Line2d * _this)

Returns a mutable pointer to a member variable of class MR::Line2d named p. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line2d_normalized()

MRC_API MR_Line2d * MR_Line2d_normalized ( const MR_Line2d * _this)

returns same line represented with unit d-vector Generated from method MR::Line2d::normalized. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2d_Destroy() to free it when you're done using it.

◆ MR_Line2d_OffsetMutablePtr()

MRC_API MR_Line2d * MR_Line2d_OffsetMutablePtr ( MR_Line2d * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_Line2d_OffsetPtr()

MRC_API const MR_Line2d * MR_Line2d_OffsetPtr ( const MR_Line2d * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_Line2d_project()

MRC_API MR_Vector2d MR_Line2d_project ( const MR_Line2d * _this,
const MR_Vector2d * x )

finds the closest point on line Generated from method MR::Line2d::project. Parameter _this can not be null. It is a single object. Parameter x can not be null. It is a single object.

◆ MR_Line2d_Set_d()

MRC_API void MR_Line2d_Set_d ( MR_Line2d * _this,
MR_Vector2d value )

Modifies a member variable of class MR::Line2d named d. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element d. When this function is called, this object will drop object references it had previously in d.

◆ MR_Line2d_Set_p()

MRC_API void MR_Line2d_Set_p ( MR_Line2d * _this,
MR_Vector2d value )

Modifies a member variable of class MR::Line2d named p. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element p. When this function is called, this object will drop object references it had previously in p.

◆ MR_Line2f_AssignFromAnother()

MRC_API MR_Line2f * MR_Line2f_AssignFromAnother ( MR_Line2f * _this,
const MR_Line2f * _other )

Generated from method MR::Line2f::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_Line2f_call()

MRC_API MR_Vector2f MR_Line2f_call ( const MR_Line2f * _this,
float param )

returns point on the line, where param=0 returns p and param=1 returns p+d Generated from method MR::Line2f::operator(). Parameter _this can not be null. It is a single object.

◆ MR_Line2f_Construct()

MRC_API MR_Line2f * MR_Line2f_Construct ( const MR_Vector2f * p,
const MR_Vector2f * d )

Generated from constructor MR::Line2f::Line2f. Parameter p can not be null. It is a single object. The reference to the parameter p might be preserved in the constructed object. Parameter d can not be null. It is a single object. The reference to the parameter d might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2f_Destroy() to free it when you're done using it.

◆ MR_Line2f_ConstructFromAnother()

MRC_API MR_Line2f * MR_Line2f_ConstructFromAnother ( const MR_Line2f * _other)

Generated from constructor MR::Line2f::Line2f. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2f_Destroy() to free it when you're done using it.

◆ MR_Line2f_DefaultConstruct()

MRC_API MR_Line2f * MR_Line2f_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2f_Destroy() to free it when you're done using it.

◆ MR_Line2f_DefaultConstructArray()

MRC_API MR_Line2f * MR_Line2f_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_Line2f_DestroyArray(). Use MR_Line2f_OffsetMutablePtr() and MR_Line2f_OffsetPtr() to access the array elements.

◆ MR_Line2f_Destroy()

MRC_API void MR_Line2f_Destroy ( const MR_Line2f * _this)

Destroys a heap-allocated instance of MR_Line2f. Does nothing if the pointer is null.

◆ MR_Line2f_DestroyArray()

MRC_API void MR_Line2f_DestroyArray ( const MR_Line2f * _this)

Destroys a heap-allocated array of MR_Line2f. Does nothing if the pointer is null.

◆ MR_Line2f_distanceSq()

MRC_API float MR_Line2f_distanceSq ( const MR_Line2f * _this,
const MR_Vector2f * x )

returns squared distance from given point to this line Generated from method MR::Line2f::distanceSq. Parameter _this can not be null. It is a single object. Parameter x can not be null. It is a single object.

◆ MR_Line2f_Get_d()

MRC_API const MR_Vector2f * MR_Line2f_Get_d ( const MR_Line2f * _this)

Returns a pointer to a member variable of class MR::Line2f named d. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line2f_Get_p()

MRC_API const MR_Vector2f * MR_Line2f_Get_p ( const MR_Line2f * _this)

Returns a pointer to a member variable of class MR::Line2f named p. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line2f_GetMutable_d()

MRC_API MR_Vector2f * MR_Line2f_GetMutable_d ( MR_Line2f * _this)

Returns a mutable pointer to a member variable of class MR::Line2f named d. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line2f_GetMutable_p()

MRC_API MR_Vector2f * MR_Line2f_GetMutable_p ( MR_Line2f * _this)

Returns a mutable pointer to a member variable of class MR::Line2f named p. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line2f_normalized()

MRC_API MR_Line2f * MR_Line2f_normalized ( const MR_Line2f * _this)

returns same line represented with unit d-vector Generated from method MR::Line2f::normalized. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2f_Destroy() to free it when you're done using it.

◆ MR_Line2f_OffsetMutablePtr()

MRC_API MR_Line2f * MR_Line2f_OffsetMutablePtr ( MR_Line2f * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_Line2f_OffsetPtr()

MRC_API const MR_Line2f * MR_Line2f_OffsetPtr ( const MR_Line2f * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_Line2f_project()

MRC_API MR_Vector2f MR_Line2f_project ( const MR_Line2f * _this,
const MR_Vector2f * x )

finds the closest point on line Generated from method MR::Line2f::project. Parameter _this can not be null. It is a single object. Parameter x can not be null. It is a single object.

◆ MR_Line2f_Set_d()

MRC_API void MR_Line2f_Set_d ( MR_Line2f * _this,
MR_Vector2f value )

Modifies a member variable of class MR::Line2f named d. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element d. When this function is called, this object will drop object references it had previously in d.

◆ MR_Line2f_Set_p()

MRC_API void MR_Line2f_Set_p ( MR_Line2f * _this,
MR_Vector2f value )

Modifies a member variable of class MR::Line2f named p. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element p. When this function is called, this object will drop object references it had previously in p.

◆ MR_Line3d_AssignFromAnother()

MRC_API MR_Line3d * MR_Line3d_AssignFromAnother ( MR_Line3d * _this,
const MR_Line3d * _other )

Generated from method MR::Line3d::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_Line3d_call()

MRC_API MR_Vector3d MR_Line3d_call ( const MR_Line3d * _this,
double param )

returns point on the line, where param=0 returns p and param=1 returns p+d Generated from method MR::Line3d::operator(). Parameter _this can not be null. It is a single object.

◆ MR_Line3d_Construct()

MRC_API MR_Line3d * MR_Line3d_Construct ( const MR_Vector3d * p,
const MR_Vector3d * d )

Generated from constructor MR::Line3d::Line3d. Parameter p can not be null. It is a single object. The reference to the parameter p might be preserved in the constructed object. Parameter d can not be null. It is a single object. The reference to the parameter d might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3d_Destroy() to free it when you're done using it.

◆ MR_Line3d_ConstructFromAnother()

MRC_API MR_Line3d * MR_Line3d_ConstructFromAnother ( const MR_Line3d * _other)

Generated from constructor MR::Line3d::Line3d. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3d_Destroy() to free it when you're done using it.

◆ MR_Line3d_DefaultConstruct()

MRC_API MR_Line3d * MR_Line3d_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3d_Destroy() to free it when you're done using it.

◆ MR_Line3d_DefaultConstructArray()

MRC_API MR_Line3d * MR_Line3d_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_Line3d_DestroyArray(). Use MR_Line3d_OffsetMutablePtr() and MR_Line3d_OffsetPtr() to access the array elements.

◆ MR_Line3d_Destroy()

MRC_API void MR_Line3d_Destroy ( const MR_Line3d * _this)

Destroys a heap-allocated instance of MR_Line3d. Does nothing if the pointer is null.

◆ MR_Line3d_DestroyArray()

MRC_API void MR_Line3d_DestroyArray ( const MR_Line3d * _this)

Destroys a heap-allocated array of MR_Line3d. Does nothing if the pointer is null.

◆ MR_Line3d_distanceSq()

MRC_API double MR_Line3d_distanceSq ( const MR_Line3d * _this,
const MR_Vector3d * x )

returns squared distance from given point to this line Generated from method MR::Line3d::distanceSq. Parameter _this can not be null. It is a single object. Parameter x can not be null. It is a single object.

◆ MR_Line3d_Get_d()

MRC_API const MR_Vector3d * MR_Line3d_Get_d ( const MR_Line3d * _this)

Returns a pointer to a member variable of class MR::Line3d named d. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line3d_Get_p()

MRC_API const MR_Vector3d * MR_Line3d_Get_p ( const MR_Line3d * _this)

Returns a pointer to a member variable of class MR::Line3d named p. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line3d_GetMutable_d()

MRC_API MR_Vector3d * MR_Line3d_GetMutable_d ( MR_Line3d * _this)

Returns a mutable pointer to a member variable of class MR::Line3d named d. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line3d_GetMutable_p()

MRC_API MR_Vector3d * MR_Line3d_GetMutable_p ( MR_Line3d * _this)

Returns a mutable pointer to a member variable of class MR::Line3d named p. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line3d_normalized()

MRC_API MR_Line3d * MR_Line3d_normalized ( const MR_Line3d * _this)

returns same line represented with unit d-vector Generated from method MR::Line3d::normalized. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3d_Destroy() to free it when you're done using it.

◆ MR_Line3d_OffsetMutablePtr()

MRC_API MR_Line3d * MR_Line3d_OffsetMutablePtr ( MR_Line3d * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_Line3d_OffsetPtr()

MRC_API const MR_Line3d * MR_Line3d_OffsetPtr ( const MR_Line3d * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_Line3d_project()

MRC_API MR_Vector3d MR_Line3d_project ( const MR_Line3d * _this,
const MR_Vector3d * x )

finds the closest point on line Generated from method MR::Line3d::project. Parameter _this can not be null. It is a single object. Parameter x can not be null. It is a single object.

◆ MR_Line3d_Set_d()

MRC_API void MR_Line3d_Set_d ( MR_Line3d * _this,
MR_Vector3d value )

Modifies a member variable of class MR::Line3d named d. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element d. When this function is called, this object will drop object references it had previously in d.

◆ MR_Line3d_Set_p()

MRC_API void MR_Line3d_Set_p ( MR_Line3d * _this,
MR_Vector3d value )

Modifies a member variable of class MR::Line3d named p. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element p. When this function is called, this object will drop object references it had previously in p.

◆ MR_Line3f_AssignFromAnother()

MRC_API MR_Line3f * MR_Line3f_AssignFromAnother ( MR_Line3f * _this,
const MR_Line3f * _other )

Generated from method MR::Line3f::operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.

◆ MR_Line3f_call()

MRC_API MR_Vector3f MR_Line3f_call ( const MR_Line3f * _this,
float param )

returns point on the line, where param=0 returns p and param=1 returns p+d Generated from method MR::Line3f::operator(). Parameter _this can not be null. It is a single object.

◆ MR_Line3f_Construct()

MRC_API MR_Line3f * MR_Line3f_Construct ( const MR_Vector3f * p,
const MR_Vector3f * d )

Generated from constructor MR::Line3f::Line3f. Parameter p can not be null. It is a single object. The reference to the parameter p might be preserved in the constructed object. Parameter d can not be null. It is a single object. The reference to the parameter d might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3f_Destroy() to free it when you're done using it.

◆ MR_Line3f_Construct_MR_Vector3d()

MRC_API MR_Line3f * MR_Line3f_Construct_MR_Vector3d ( const MR_Line3d * l)

Generated from constructor MR::Line3f::Line3f. Parameter l can not be null. It is a single object. The reference to the parameter l might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3f_Destroy() to free it when you're done using it.

◆ MR_Line3f_ConstructFromAnother()

MRC_API MR_Line3f * MR_Line3f_ConstructFromAnother ( const MR_Line3f * _other)

Generated from constructor MR::Line3f::Line3f. Parameter _other can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3f_Destroy() to free it when you're done using it.

◆ MR_Line3f_DefaultConstruct()

MRC_API MR_Line3f * MR_Line3f_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3f_Destroy() to free it when you're done using it.

◆ MR_Line3f_DefaultConstructArray()

MRC_API MR_Line3f * MR_Line3f_DefaultConstructArray ( size_t num_elems)

Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_Line3f_DestroyArray(). Use MR_Line3f_OffsetMutablePtr() and MR_Line3f_OffsetPtr() to access the array elements.

◆ MR_Line3f_Destroy()

MRC_API void MR_Line3f_Destroy ( const MR_Line3f * _this)

Destroys a heap-allocated instance of MR_Line3f. Does nothing if the pointer is null.

◆ MR_Line3f_DestroyArray()

MRC_API void MR_Line3f_DestroyArray ( const MR_Line3f * _this)

Destroys a heap-allocated array of MR_Line3f. Does nothing if the pointer is null.

◆ MR_Line3f_distanceSq()

MRC_API float MR_Line3f_distanceSq ( const MR_Line3f * _this,
const MR_Vector3f * x )

returns squared distance from given point to this line Generated from method MR::Line3f::distanceSq. Parameter _this can not be null. It is a single object. Parameter x can not be null. It is a single object.

◆ MR_Line3f_Get_d()

MRC_API const MR_Vector3f * MR_Line3f_Get_d ( const MR_Line3f * _this)

Returns a pointer to a member variable of class MR::Line3f named d. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line3f_Get_p()

MRC_API const MR_Vector3f * MR_Line3f_Get_p ( const MR_Line3f * _this)

Returns a pointer to a member variable of class MR::Line3f named p. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line3f_GetMutable_d()

MRC_API MR_Vector3f * MR_Line3f_GetMutable_d ( MR_Line3f * _this)

Returns a mutable pointer to a member variable of class MR::Line3f named d. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line3f_GetMutable_p()

MRC_API MR_Vector3f * MR_Line3f_GetMutable_p ( MR_Line3f * _this)

Returns a mutable pointer to a member variable of class MR::Line3f named p. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_Line3f_normalized()

MRC_API MR_Line3f * MR_Line3f_normalized ( const MR_Line3f * _this)

returns same line represented with unit d-vector Generated from method MR::Line3f::normalized. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3f_Destroy() to free it when you're done using it.

◆ MR_Line3f_OffsetMutablePtr()

MRC_API MR_Line3f * MR_Line3f_OffsetMutablePtr ( MR_Line3f * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_Line3f_OffsetPtr()

MRC_API const MR_Line3f * MR_Line3f_OffsetPtr ( const MR_Line3f * ptr,
ptrdiff_t i )

Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.

◆ MR_Line3f_project()

MRC_API MR_Vector3f MR_Line3f_project ( const MR_Line3f * _this,
const MR_Vector3f * x )

finds the closest point on line Generated from method MR::Line3f::project. Parameter _this can not be null. It is a single object. Parameter x can not be null. It is a single object.

◆ MR_Line3f_Set_d()

MRC_API void MR_Line3f_Set_d ( MR_Line3f * _this,
MR_Vector3f value )

Modifies a member variable of class MR::Line3f named d. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element d. When this function is called, this object will drop object references it had previously in d.

◆ MR_Line3f_Set_p()

MRC_API void MR_Line3f_Set_p ( MR_Line3f * _this,
MR_Vector3f value )

Modifies a member variable of class MR::Line3f named p. Parameter _this can not be null. It is a single object. The reference to the parameter value might be preserved in this object in element p. When this function is called, this object will drop object references it had previously in p.

◆ MR_neg_MR_Line2d()

MRC_API MR_Line2d * MR_neg_MR_Line2d ( const MR_Line2d * _this)

returns same line represented with flipped direction of d-vector Generated from method MR::Line2d::operator-. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2d_Destroy() to free it when you're done using it.

◆ MR_neg_MR_Line2f()

MRC_API MR_Line2f * MR_neg_MR_Line2f ( const MR_Line2f * _this)

returns same line represented with flipped direction of d-vector Generated from method MR::Line2f::operator-. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line2f_Destroy() to free it when you're done using it.

◆ MR_neg_MR_Line3d()

MRC_API MR_Line3d * MR_neg_MR_Line3d ( const MR_Line3d * _this)

returns same line represented with flipped direction of d-vector Generated from method MR::Line3d::operator-. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3d_Destroy() to free it when you're done using it.

◆ MR_neg_MR_Line3f()

MRC_API MR_Line3f * MR_neg_MR_Line3f ( const MR_Line3f * _this)

returns same line represented with flipped direction of d-vector Generated from method MR::Line3f::operator-. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_Line3f_Destroy() to free it when you're done using it.

◆ MR_pos_MR_Line2d()

MRC_API const MR_Line2d * MR_pos_MR_Line2d ( const MR_Line2d * _this)

returns same representation Generated from method MR::Line2d::operator+. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_pos_MR_Line2f()

MRC_API const MR_Line2f * MR_pos_MR_Line2f ( const MR_Line2f * _this)

returns same representation Generated from method MR::Line2f::operator+. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_pos_MR_Line3d()

MRC_API const MR_Line3d * MR_pos_MR_Line3d ( const MR_Line3d * _this)

returns same representation Generated from method MR::Line3d::operator+. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_pos_MR_Line3f()

MRC_API const MR_Line3f * MR_pos_MR_Line3f ( const MR_Line3f * _this)

returns same representation Generated from method MR::Line3f::operator+. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_print_MR_Line2d()

MRC_API MR_std_ostream * MR_print_MR_Line2d ( MR_std_ostream * s,
const MR_Line2d * l )

Generated from function MR::operator<<. Parameter s can not be null. It is a single object. Parameter l can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_print_MR_Line2f()

MRC_API MR_std_ostream * MR_print_MR_Line2f ( MR_std_ostream * s,
const MR_Line2f * l )

Generated from function MR::operator<<. Parameter s can not be null. It is a single object. Parameter l can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_print_MR_Line3d()

MRC_API MR_std_ostream * MR_print_MR_Line3d ( MR_std_ostream * s,
const MR_Line3d * l )

Generated from function MR::operator<<. Parameter s can not be null. It is a single object. Parameter l can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.

◆ MR_print_MR_Line3f()

MRC_API MR_std_ostream * MR_print_MR_Line3f ( MR_std_ostream * s,
const MR_Line3f * l )

Generated from function MR::operator<<. Parameter s can not be null. It is a single object. Parameter l can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it.