MeshLink
Computational geometry access
MeshLinkTransform Class Reference

Storage for MeshLink Transform data. More...

#include <MeshAssociativity.h>

Public Member Functions

 MeshLinkTransform ()
 Default constructor. More...
 
 MeshLinkTransform (MLINT xid, std::string &name, std::string &contents, MeshAssociativity &meshAssoc)
 
virtual void setAref (MLINT aref)
 Set the MeshLinkAttribute AttID referenced by this MeshLinkTransform. More...
 
bool hasAref () const
 Whether the MeshLinkTransform has a MeshLinkAttribute AttID reference defined. More...
 
MLINT getAref () const
 Get the MeshLinkAttribute AttID referenced by this MeshLinkTransform. More...
 
MLINT getXID () const
 Get the XID of this MeshLinkTransform. More...
 
const std::string & getName () const
 Get the name attribute of this MeshLinkTransform. More...
 
const std::string & getContents () const
 Get the contents of this MeshLinkTransform. More...
 
bool isValid () const
 
void getQuaternion (MLREAL xform_quaternion[4][4]) const
 Get the transform quaternion. More...
 

Private Attributes

MLINT xid_
 The XID of this transform. More...
 
std::string name_
 The name of this transform. More...
 
MLINT aref_
 The attribute reference ID (AttID) More...
 
std::string contents_
 The application-defined contents of the transform, from the MeshLink file. More...
 
MLREAL xform_ [4][4]
 The quaternion transform. More...
 
bool is_valid_
 Whether this transform is valid. More...
 

Friends

class MeshAssociativity
 

Detailed Description

Storage for MeshLink Transform data.

MeshElementLinkages reference a transform through an XREF attribute which is the integer ID of the MeshLinkTransform associated with the entity.

MeshLink transforms define an affine transform from one position to another. Access to transforms by an application are through MeshElementLinkage.getTransform and MeshAssociativity.getTransformByID.

Definition at line 105 of file MeshAssociativity.h.

Constructor & Destructor Documentation

◆ MeshLinkTransform() [1/2]

MeshLinkTransform::MeshLinkTransform ( )

Default constructor.

◆ MeshLinkTransform() [2/2]

MeshLinkTransform::MeshLinkTransform ( MLINT  xid,
std::string &  name,
std::string &  contents,
MeshAssociativity meshAssoc 
)

Constructor for an transform with a unique transform ID (AttID) and name. The transform's definition is given by its contents.

Member Function Documentation

◆ getAref()

MLINT MeshLinkTransform::getAref ( ) const

Get the MeshLinkAttribute AttID referenced by this MeshLinkTransform.

◆ getContents()

const std::string& MeshLinkTransform::getContents ( ) const

Get the contents of this MeshLinkTransform.

◆ getName()

const std::string& MeshLinkTransform::getName ( ) const

Get the name attribute of this MeshLinkTransform.

◆ getQuaternion()

void MeshLinkTransform::getQuaternion ( MLREAL  xform_quaternion[4][4]) const

Get the transform quaternion.

Parameters
[out]4x4matrix of the transform quaternion

◆ getXID()

MLINT MeshLinkTransform::getXID ( ) const

Get the XID of this MeshLinkTransform.

◆ hasAref()

bool MeshLinkTransform::hasAref ( ) const

Whether the MeshLinkTransform has a MeshLinkAttribute AttID reference defined.

◆ isValid()

bool MeshLinkTransform::isValid ( ) const
inline

Whether this transform is valid. A transform may be invalid if it's content does not define a valid transformation.

Definition at line 139 of file MeshAssociativity.h.

◆ setAref()

virtual void MeshLinkTransform::setAref ( MLINT  aref)
virtual

Set the MeshLinkAttribute AttID referenced by this MeshLinkTransform.

Parameters
arefthe attribute reference ID (AttID) for this transform

Friends And Related Function Documentation

◆ MeshAssociativity

friend class MeshAssociativity
friend

Definition at line 107 of file MeshAssociativity.h.

Member Data Documentation

◆ aref_

MLINT MeshLinkTransform::aref_
private

The attribute reference ID (AttID)

Definition at line 152 of file MeshAssociativity.h.

◆ contents_

std::string MeshLinkTransform::contents_
private

The application-defined contents of the transform, from the MeshLink file.

Definition at line 154 of file MeshAssociativity.h.

◆ is_valid_

bool MeshLinkTransform::is_valid_
private

Whether this transform is valid.

Definition at line 158 of file MeshAssociativity.h.

◆ name_

std::string MeshLinkTransform::name_
private

The name of this transform.

Definition at line 150 of file MeshAssociativity.h.

◆ xform_

MLREAL MeshLinkTransform::xform_[4][4]
private

The quaternion transform.

Definition at line 156 of file MeshAssociativity.h.

◆ xid_

MLINT MeshLinkTransform::xid_
private

The XID of this transform.

Definition at line 148 of file MeshAssociativity.h.


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