WarpTwin
Documentation for WarpTwin models and classes.
Loading...
Searching...
No Matches
Joint.h
Go to the documentation of this file.
1/******************************************************************************
2* Copyright (c) ATTX INC 2025. All Rights Reserved.
3*
4* This software and associated documentation (the "Software") are the
5* proprietary and confidential information of ATTX, INC. The Software is
6* furnished under a license agreement between ATTX and the user organization
7* and may be used or copied only in accordance with the terms of the agreement.
8* Refer to 'license/attx_license.adoc' for standard license terms.
9*
10* EXPORT CONTROL NOTICE: THIS SOFTWARE MAY INCLUDE CONTENT CONTROLLED UNDER THE
11* INTERNATIONAL TRAFFIC IN ARMS REGULATIONS (ITAR) OR THE EXPORT ADMINISTRATION
12* REGULATIONS (EAR99). No part of the Software may be used, reproduced, or
13* transmitted in any form or by any means, for any purpose, without the express
14* written permission of ATTX, INC.
15******************************************************************************/
16/*
17Joint header file
18
19Alex Reynolds
20*/
21#ifndef FRAMES_JOINT_H
22#define FRAMES_JOINT_H
23
24#include "core/Matrix.hpp"
25
26namespace warptwin {
27
34
45 class Joint {
46 public:
49 Joint();
50
53 Joint(joint_type_e joint_type);
54
59 Joint(bool x_free, bool y_free, bool z_free);
60
65 void setFreeAxes(bool x_free, bool y_free, bool z_free);
66
69 void setJointType(joint_type_e joint_type);
70
72 const clockwerk::Matrix<3, 3>& freedom() const {return _freedom;}
74
77 void jointType(joint_type_e joint_type) {_joint_type = joint_type;}
78 protected:
80
84 };
85
86}
87
88#endif
Matrix math implementation.
Definition Matrix.hpp:55
clockwerk::Matrix< 3, 3 > _dependency
Definition Joint.h:83
void jointType(joint_type_e joint_type)
Definition Joint.h:77
const clockwerk::Matrix< 3, 3 > & dependency() const
Definition Joint.h:73
Joint()
Default constructor for the joint object.
Definition Joint.cpp:19
warptwin::joint_type_e jointType() const
Getter/setter for joint type.
Definition Joint.h:76
const clockwerk::Matrix< 3, 3 > & freedom() const
Functions to return freedom or dependency matrix.
Definition Joint.h:72
joint_type_e _joint_type
Definition Joint.h:79
clockwerk::Matrix< 3, 3 > _freedom
Freedom and dependency matrix.
Definition Joint.h:82
void setFreeAxes(bool x_free, bool y_free, bool z_free)
Function to set the axes free on this joint.
Definition Joint.cpp:41
void setJointType(joint_type_e joint_type)
Function to set the joint type.
Definition Joint.cpp:59
Class to propagate CR3BP dynamics in characteristic units.
Definition statistics.hpp:22
joint_type_e
Definition Joint.h:28
@ MIXED
Definition Joint.h:30
@ FULLY_FREE
Definition Joint.h:31
@ NOT_SET
Definition Joint.h:29
@ FULLY_LOCKED
Definition Joint.h:32