MeshLib C Docs
Loading...
Searching...
No Matches
MRCNCMachineSettings.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRVector2.h>
4#include <MRCMisc/common.h>
5#include <MRCMisc/exports.h>
6
7#include <stdbool.h>
8#include <stddef.h>
9#include <stdint.h>
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
15typedef struct MR_Vector3f MR_Vector3f; // Defined in `#include <MRCMesh/MRVector3.h>`.
16typedef struct MR_std_optional_MR_Vector2f MR_std_optional_MR_Vector2f; // Defined in `#include <MRCMisc/std_optional_MR_Vector2f.h>`.
17typedef struct MR_std_vector_MR_CNCMachineSettings_RotationAxisName MR_std_vector_MR_CNCMachineSettings_RotationAxisName; // Defined in `#include <MRCMisc/std_vector_MR_CNCMachineSettings_RotationAxisName.h>`.
18
19
23
24// enumeration of axes of rotation
26enum // MR_CNCMachineSettings_RotationAxisName
27{
31};
32
36
41
44
47
51
54
57
62
65
66// rotationAxis length will be more then 0.01
71
76
77// rotationLimits = {min, max}
78// valid range -180 <= min < max <= 180
83
88
89// duplicated values will be removed (ABAAC - > ABC)
94
99
100// set feedrate idle. valid range - [0, 100000]
101// 0 - feedrate idle set as maximum feedrate on any action, or 100 if feedrate is not set in any action
105
109
114
119
124
129
130#ifdef __cplusplus
131} // extern "C"
132#endif
@ MR_CNCMachineSettings_RotationAxisName_B
Definition MRCNCMachineSettings.h:29
@ MR_CNCMachineSettings_RotationAxisName_C
Definition MRCNCMachineSettings.h:30
@ MR_CNCMachineSettings_RotationAxisName_A
Definition MRCNCMachineSettings.h:28
MRC_API const MR_CNCMachineSettings * MR_CNCMachineSettings_OffsetPtr(const MR_CNCMachineSettings *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_CNCMachineSettings * MR_CNCMachineSettings_OffsetMutablePtr(MR_CNCMachineSettings *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API void MR_CNCMachineSettings_Destroy(const MR_CNCMachineSettings *_this)
Destroys a heap-allocated instance of MR_CNCMachineSettings. Does nothing if the pointer is null.
struct MR_CNCMachineSettings MR_CNCMachineSettings
Definition MRCNCMachineSettings.h:22
MRC_API int32_t MR_CNCMachineSettings_getAxesCount(void)
Generated from a method of class MR::CNCMachineSettings named getAxesCount.
struct MR_std_vector_MR_CNCMachineSettings_RotationAxisName MR_std_vector_MR_CNCMachineSettings_RotationAxisName
Definition MRCNCMachineSettings.h:17
MRC_API MR_CNCMachineSettings * MR_CNCMachineSettings_ConstructFromAnother(MR_PassBy _other_pass_by, MR_CNCMachineSettings *_other)
MRC_API const MR_std_optional_MR_Vector2f * MR_CNCMachineSettings_getRotationLimits(const MR_CNCMachineSettings *_this, MR_CNCMachineSettings_RotationAxisName paramName)
MRC_API void MR_CNCMachineSettings_setRotationOrder(MR_CNCMachineSettings *_this, const MR_std_vector_MR_CNCMachineSettings_RotationAxisName *rotationAxesOrder)
MRC_API void MR_CNCMachineSettings_setHomePosition(MR_CNCMachineSettings *_this, const MR_Vector3f *homePosition)
MRC_API MR_CNCMachineSettings * MR_CNCMachineSettings_DefaultConstruct(void)
MRC_API const MR_Vector3f * MR_CNCMachineSettings_getHomePosition(const MR_CNCMachineSettings *_this)
int32_t MR_CNCMachineSettings_RotationAxisName
Definition MRCNCMachineSettings.h:25
MRC_API bool MR_equal_MR_CNCMachineSettings(MR_CNCMachineSettings *_this, const MR_CNCMachineSettings *rhs)
MRC_API void MR_CNCMachineSettings_setFeedrateIdle(MR_CNCMachineSettings *_this, float feedrateIdle)
MRC_API const MR_std_vector_MR_CNCMachineSettings_RotationAxisName * MR_CNCMachineSettings_getRotationOrder(const MR_CNCMachineSettings *_this)
MRC_API const MR_Vector3f * MR_CNCMachineSettings_getRotationAxis(const MR_CNCMachineSettings *_this, MR_CNCMachineSettings_RotationAxisName paramName)
MRC_API MR_CNCMachineSettings * MR_CNCMachineSettings_AssignFromAnother(MR_CNCMachineSettings *_this, MR_PassBy _other_pass_by, MR_CNCMachineSettings *_other)
MRC_API void MR_CNCMachineSettings_setRotationLimits(MR_CNCMachineSettings *_this, MR_CNCMachineSettings_RotationAxisName paramName, const MR_Vector2f *rotationLimits)
MRC_API void MR_CNCMachineSettings_DestroyArray(const MR_CNCMachineSettings *_this)
Destroys a heap-allocated array of MR_CNCMachineSettings. Does nothing if the pointer is null.
MRC_API MR_CNCMachineSettings * MR_CNCMachineSettings_DefaultConstructArray(size_t num_elems)
MRC_API bool MR_not_equal_MR_CNCMachineSettings(MR_CNCMachineSettings *_this, const MR_CNCMachineSettings *rhs)
MRC_API void MR_CNCMachineSettings_setRotationAxis(MR_CNCMachineSettings *_this, MR_CNCMachineSettings_RotationAxisName paramName, const MR_Vector3f *rotationAxis)
MRC_API float MR_CNCMachineSettings_getFeedrateIdle(const MR_CNCMachineSettings *_this)
struct MR_std_optional_MR_Vector2f MR_std_optional_MR_Vector2f
Definition MRCNCMachineSettings.h:16
MR_PassBy
Definition common.h:19
#define MRC_API
Definition exports.h:11
Definition MRVector2.h:44
Definition MRVector3.h:51