libSBML C API  5.18.0
Transformation_t Class Reference

Detailed Description

render Implementation of a 3D transformation matrix.

The Transformation_t class represents a 3D transformation which normally is a 4x4 matrix. Since the last row is always 0 0 0 1 for affine transformations, we leave out those values and store the matrix as an array of 4x3 columns

Public Member Functions

Transformation_tTransformation_clone (const Transformation_t *t)
 Creates and returns a deep copy of this Transformation_t object. More...
 
Transformation_tTransformation_createEllipse (unsigned int level, unsigned int version, unsigned int pkgVersion)
 Creates a new Ellipse_t (Transformation_t) using the given SBML Level, Version and “render” package version. More...
 
Transformation_tTransformation_createImage (unsigned int level, unsigned int version, unsigned int pkgVersion)
 Creates a new Image_t (Transformation_t) using the given SBML Level, Version and “render” package version. More...
 
Transformation_tTransformation_createLineEnding (unsigned int level, unsigned int version, unsigned int pkgVersion)
 Creates a new LineEnding_t (Transformation_t) using the given SBML Level, Version and “render” package version. More...
 
Transformation_tTransformation_createPolygon (unsigned int level, unsigned int version, unsigned int pkgVersion)
 Creates a new Polygon_t (Transformation_t) using the given SBML Level, Version and “render” package version. More...
 
Transformation_tTransformation_createRectangle (unsigned int level, unsigned int version, unsigned int pkgVersion)
 Creates a new Rectangle_t (Transformation_t) using the given SBML Level, Version and “render” package version. More...
 
Transformation_tTransformation_createRenderCurve (unsigned int level, unsigned int version, unsigned int pkgVersion)
 Creates a new RenderCurve_t (Transformation_t) using the given SBML Level, Version and “render” package version. More...
 
Transformation_tTransformation_createRenderGroup (unsigned int level, unsigned int version, unsigned int pkgVersion)
 Creates a new RenderGroup_t (Transformation_t) using the given SBML Level, Version and “render” package version. More...
 
Transformation_tTransformation_createText (unsigned int level, unsigned int version, unsigned int pkgVersion)
 Creates a new Text_t (Transformation_t) using the given SBML Level, Version and “render” package version. More...
 
void Transformation_free (Transformation_t *t)
 Frees this Transformation_t object. More...
 
char * Transformation_getName (const Transformation_t *t)
 Returns the value of the "name" attribute of this Transformation_t. More...
 
int Transformation_hasRequiredAttributes (const Transformation_t *t)
 Predicate returning 1 (true) if all the required attributes for this Transformation_t object have been set. More...
 
int Transformation_isEllipse (const Transformation_t *t)
 Predicate returning 1 if this Transformation_t is of type Ellipse_t. More...
 
int Transformation_isImage (const Transformation_t *t)
 Predicate returning 1 if this Transformation_t is of type Image_t. More...
 
int Transformation_isLineEnding (const Transformation_t *t)
 Predicate returning 1 if this Transformation_t is of type LineEnding_t. More...
 
int Transformation_isPolygon (const Transformation_t *t)
 Predicate returning 1 if this Transformation_t is of type Polygon_t. More...
 
int Transformation_isRectangle (const Transformation_t *t)
 Predicate returning 1 if this Transformation_t is of type Rectangle_t. More...
 
int Transformation_isRenderCurve (const Transformation_t *t)
 Predicate returning 1 if this Transformation_t is of type RenderCurve_t. More...
 
int Transformation_isRenderGroup (const Transformation_t *t)
 Predicate returning 1 if this Transformation_t is of type RenderGroup_t. More...
 
int Transformation_isSetName (const Transformation_t *t)
 Predicate returning 1 (true) if this Transformation_t's "name" attribute is set. More...
 
int Transformation_isSetTranform (const Transformation_t *t)
 Predicate returning 1 (true) if this Transformation_t's "transform" attribute is set. More...
 
int Transformation_isText (const Transformation_t *t)
 Predicate returning 1 if this Transformation_t is of type Text_t. More...
 
int Transformation_setName (Transformation_t *t, const char *name)
 Sets the value of the "name" attribute of this Transformation_t. More...
 
int Transformation_setTransform (Transformation_t *t, double *transform)
 Sets the value of the "transform" attribute of this Transformation_t. More...
 
int Transformation_unsetName (Transformation_t *t)
 Unsets the value of the "name" attribute of this Transformation_t. More...
 

Member Function Documentation

Transformation_t * Transformation_clone ( const Transformation_t t)

Creates and returns a deep copy of this Transformation_t object.

Parameters
tthe Transformation_t structure.
Returns
a (deep) copy of this Transformation_t object.
Warning
The pointer that is returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the element will not be reflected in any resulting SBML document unless the element is added to an SBML Document. Even in this case, the element's deletion is still the responsibility of the caller with two exceptions: if it is used as the "disownedItem" in the ListOf_appendAndOwn() or ListOf_insertAndOwn() functions. All other functions in libsbml add a copy of the element, and do not transfer ownership of the pointer.
Transformation_t * Transformation_createEllipse ( unsigned int  level,
unsigned int  version,
unsigned int  pkgVersion 
)

Creates a new Ellipse_t (Transformation_t) using the given SBML Level, Version and “render” package version.

Parameters
levelan unsigned int, the SBML Level to assign to this Transformation_t.
versionan unsigned int, the SBML Version to assign to this Transformation_t.
pkgVersionan unsigned int, the SBML Render Version to assign to this Transformation_t.
Note
Attempting to add an object to an SBMLDocument_t having a different combination of SBML Level, Version and XML namespaces than the object itself will result in an error at the time a caller attempts to make the addition. A parent object must have compatible Level, Version and XML namespaces. (Strictly speaking, a parent may also have more XML namespaces than a child, but the reverse is not permitted.) The restriction is necessary to ensure that an SBML model has a consistent overall structure. This requires callers to manage their objects carefully, but the benefit is increased flexibility in how models can be created by permitting callers to create objects bottom-up if desired. In situations where objects are not yet attached to parents (e.g., SBMLDocument_t), knowledge of the intented SBML Level and Version help libSBML determine such things as whether it is valid to assign a particular value to an attribute. For packages, this means that the parent object to which this package element is being added must have been created with the package namespace, or that the package namespace was added to it, even if that parent is not a package object itself.
Warning
The pointer that is returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the element will not be reflected in any resulting SBML document unless the element is added to an SBML Document. Even in this case, the element's deletion is still the responsibility of the caller with two exceptions: if it is used as the "disownedItem" in the ListOf_appendAndOwn() or ListOf_insertAndOwn() functions. All other functions in libsbml add a copy of the element, and do not transfer ownership of the pointer.
Transformation_t * Transformation_createImage ( unsigned int  level,
unsigned int  version,
unsigned int  pkgVersion 
)

Creates a new Image_t (Transformation_t) using the given SBML Level, Version and “render” package version.

Parameters
levelan unsigned int, the SBML Level to assign to this Transformation_t.
versionan unsigned int, the SBML Version to assign to this Transformation_t.
pkgVersionan unsigned int, the SBML Render Version to assign to this Transformation_t.
Note
Attempting to add an object to an SBMLDocument_t having a different combination of SBML Level, Version and XML namespaces than the object itself will result in an error at the time a caller attempts to make the addition. A parent object must have compatible Level, Version and XML namespaces. (Strictly speaking, a parent may also have more XML namespaces than a child, but the reverse is not permitted.) The restriction is necessary to ensure that an SBML model has a consistent overall structure. This requires callers to manage their objects carefully, but the benefit is increased flexibility in how models can be created by permitting callers to create objects bottom-up if desired. In situations where objects are not yet attached to parents (e.g., SBMLDocument_t), knowledge of the intented SBML Level and Version help libSBML determine such things as whether it is valid to assign a particular value to an attribute. For packages, this means that the parent object to which this package element is being added must have been created with the package namespace, or that the package namespace was added to it, even if that parent is not a package object itself.
Warning
The pointer that is returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the element will not be reflected in any resulting SBML document unless the element is added to an SBML Document. Even in this case, the element's deletion is still the responsibility of the caller with two exceptions: if it is used as the "disownedItem" in the ListOf_appendAndOwn() or ListOf_insertAndOwn() functions. All other functions in libsbml add a copy of the element, and do not transfer ownership of the pointer.
Transformation_t * Transformation_createLineEnding ( unsigned int  level,
unsigned int  version,
unsigned int  pkgVersion 
)

Creates a new LineEnding_t (Transformation_t) using the given SBML Level, Version and “render” package version.

Parameters
levelan unsigned int, the SBML Level to assign to this Transformation_t.
versionan unsigned int, the SBML Version to assign to this Transformation_t.
pkgVersionan unsigned int, the SBML Render Version to assign to this Transformation_t.
Note
Attempting to add an object to an SBMLDocument_t having a different combination of SBML Level, Version and XML namespaces than the object itself will result in an error at the time a caller attempts to make the addition. A parent object must have compatible Level, Version and XML namespaces. (Strictly speaking, a parent may also have more XML namespaces than a child, but the reverse is not permitted.) The restriction is necessary to ensure that an SBML model has a consistent overall structure. This requires callers to manage their objects carefully, but the benefit is increased flexibility in how models can be created by permitting callers to create objects bottom-up if desired. In situations where objects are not yet attached to parents (e.g., SBMLDocument_t), knowledge of the intented SBML Level and Version help libSBML determine such things as whether it is valid to assign a particular value to an attribute. For packages, this means that the parent object to which this package element is being added must have been created with the package namespace, or that the package namespace was added to it, even if that parent is not a package object itself.
Warning
The pointer that is returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the element will not be reflected in any resulting SBML document unless the element is added to an SBML Document. Even in this case, the element's deletion is still the responsibility of the caller with two exceptions: if it is used as the "disownedItem" in the ListOf_appendAndOwn() or ListOf_insertAndOwn() functions. All other functions in libsbml add a copy of the element, and do not transfer ownership of the pointer.
Transformation_t * Transformation_createPolygon ( unsigned int  level,
unsigned int  version,
unsigned int  pkgVersion 
)

Creates a new Polygon_t (Transformation_t) using the given SBML Level, Version and “render” package version.

Parameters
levelan unsigned int, the SBML Level to assign to this Transformation_t.
versionan unsigned int, the SBML Version to assign to this Transformation_t.
pkgVersionan unsigned int, the SBML Render Version to assign to this Transformation_t.
Note
Attempting to add an object to an SBMLDocument_t having a different combination of SBML Level, Version and XML namespaces than the object itself will result in an error at the time a caller attempts to make the addition. A parent object must have compatible Level, Version and XML namespaces. (Strictly speaking, a parent may also have more XML namespaces than a child, but the reverse is not permitted.) The restriction is necessary to ensure that an SBML model has a consistent overall structure. This requires callers to manage their objects carefully, but the benefit is increased flexibility in how models can be created by permitting callers to create objects bottom-up if desired. In situations where objects are not yet attached to parents (e.g., SBMLDocument_t), knowledge of the intented SBML Level and Version help libSBML determine such things as whether it is valid to assign a particular value to an attribute. For packages, this means that the parent object to which this package element is being added must have been created with the package namespace, or that the package namespace was added to it, even if that parent is not a package object itself.
Warning
The pointer that is returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the element will not be reflected in any resulting SBML document unless the element is added to an SBML Document. Even in this case, the element's deletion is still the responsibility of the caller with two exceptions: if it is used as the "disownedItem" in the ListOf_appendAndOwn() or ListOf_insertAndOwn() functions. All other functions in libsbml add a copy of the element, and do not transfer ownership of the pointer.
Transformation_t * Transformation_createRectangle ( unsigned int  level,
unsigned int  version,
unsigned int  pkgVersion 
)

Creates a new Rectangle_t (Transformation_t) using the given SBML Level, Version and “render” package version.

Parameters
levelan unsigned int, the SBML Level to assign to this Transformation_t.
versionan unsigned int, the SBML Version to assign to this Transformation_t.
pkgVersionan unsigned int, the SBML Render Version to assign to this Transformation_t.
Note
Attempting to add an object to an SBMLDocument_t having a different combination of SBML Level, Version and XML namespaces than the object itself will result in an error at the time a caller attempts to make the addition. A parent object must have compatible Level, Version and XML namespaces. (Strictly speaking, a parent may also have more XML namespaces than a child, but the reverse is not permitted.) The restriction is necessary to ensure that an SBML model has a consistent overall structure. This requires callers to manage their objects carefully, but the benefit is increased flexibility in how models can be created by permitting callers to create objects bottom-up if desired. In situations where objects are not yet attached to parents (e.g., SBMLDocument_t), knowledge of the intented SBML Level and Version help libSBML determine such things as whether it is valid to assign a particular value to an attribute. For packages, this means that the parent object to which this package element is being added must have been created with the package namespace, or that the package namespace was added to it, even if that parent is not a package object itself.
Warning
The pointer that is returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the element will not be reflected in any resulting SBML document unless the element is added to an SBML Document. Even in this case, the element's deletion is still the responsibility of the caller with two exceptions: if it is used as the "disownedItem" in the ListOf_appendAndOwn() or ListOf_insertAndOwn() functions. All other functions in libsbml add a copy of the element, and do not transfer ownership of the pointer.
Transformation_t * Transformation_createRenderCurve ( unsigned int  level,
unsigned int  version,
unsigned int  pkgVersion 
)

Creates a new RenderCurve_t (Transformation_t) using the given SBML Level, Version and “render” package version.

Parameters
levelan unsigned int, the SBML Level to assign to this Transformation_t.
versionan unsigned int, the SBML Version to assign to this Transformation_t.
pkgVersionan unsigned int, the SBML Render Version to assign to this Transformation_t.
Note
Attempting to add an object to an SBMLDocument_t having a different combination of SBML Level, Version and XML namespaces than the object itself will result in an error at the time a caller attempts to make the addition. A parent object must have compatible Level, Version and XML namespaces. (Strictly speaking, a parent may also have more XML namespaces than a child, but the reverse is not permitted.) The restriction is necessary to ensure that an SBML model has a consistent overall structure. This requires callers to manage their objects carefully, but the benefit is increased flexibility in how models can be created by permitting callers to create objects bottom-up if desired. In situations where objects are not yet attached to parents (e.g., SBMLDocument_t), knowledge of the intented SBML Level and Version help libSBML determine such things as whether it is valid to assign a particular value to an attribute. For packages, this means that the parent object to which this package element is being added must have been created with the package namespace, or that the package namespace was added to it, even if that parent is not a package object itself.
Warning
The pointer that is returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the element will not be reflected in any resulting SBML document unless the element is added to an SBML Document. Even in this case, the element's deletion is still the responsibility of the caller with two exceptions: if it is used as the "disownedItem" in the ListOf_appendAndOwn() or ListOf_insertAndOwn() functions. All other functions in libsbml add a copy of the element, and do not transfer ownership of the pointer.
Transformation_t * Transformation_createRenderGroup ( unsigned int  level,
unsigned int  version,
unsigned int  pkgVersion 
)

Creates a new RenderGroup_t (Transformation_t) using the given SBML Level, Version and “render” package version.

Parameters
levelan unsigned int, the SBML Level to assign to this Transformation_t.
versionan unsigned int, the SBML Version to assign to this Transformation_t.
pkgVersionan unsigned int, the SBML Render Version to assign to this Transformation_t.
Note
Attempting to add an object to an SBMLDocument_t having a different combination of SBML Level, Version and XML namespaces than the object itself will result in an error at the time a caller attempts to make the addition. A parent object must have compatible Level, Version and XML namespaces. (Strictly speaking, a parent may also have more XML namespaces than a child, but the reverse is not permitted.) The restriction is necessary to ensure that an SBML model has a consistent overall structure. This requires callers to manage their objects carefully, but the benefit is increased flexibility in how models can be created by permitting callers to create objects bottom-up if desired. In situations where objects are not yet attached to parents (e.g., SBMLDocument_t), knowledge of the intented SBML Level and Version help libSBML determine such things as whether it is valid to assign a particular value to an attribute. For packages, this means that the parent object to which this package element is being added must have been created with the package namespace, or that the package namespace was added to it, even if that parent is not a package object itself.
Warning
The pointer that is returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the element will not be reflected in any resulting SBML document unless the element is added to an SBML Document. Even in this case, the element's deletion is still the responsibility of the caller with two exceptions: if it is used as the "disownedItem" in the ListOf_appendAndOwn() or ListOf_insertAndOwn() functions. All other functions in libsbml add a copy of the element, and do not transfer ownership of the pointer.
Transformation_t * Transformation_createText ( unsigned int  level,
unsigned int  version,
unsigned int  pkgVersion 
)

Creates a new Text_t (Transformation_t) using the given SBML Level, Version and “render” package version.

Parameters
levelan unsigned int, the SBML Level to assign to this Transformation_t.
versionan unsigned int, the SBML Version to assign to this Transformation_t.
pkgVersionan unsigned int, the SBML Render Version to assign to this Transformation_t.
Note
Attempting to add an object to an SBMLDocument_t having a different combination of SBML Level, Version and XML namespaces than the object itself will result in an error at the time a caller attempts to make the addition. A parent object must have compatible Level, Version and XML namespaces. (Strictly speaking, a parent may also have more XML namespaces than a child, but the reverse is not permitted.) The restriction is necessary to ensure that an SBML model has a consistent overall structure. This requires callers to manage their objects carefully, but the benefit is increased flexibility in how models can be created by permitting callers to create objects bottom-up if desired. In situations where objects are not yet attached to parents (e.g., SBMLDocument_t), knowledge of the intented SBML Level and Version help libSBML determine such things as whether it is valid to assign a particular value to an attribute. For packages, this means that the parent object to which this package element is being added must have been created with the package namespace, or that the package namespace was added to it, even if that parent is not a package object itself.
Warning
The pointer that is returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the element will not be reflected in any resulting SBML document unless the element is added to an SBML Document. Even in this case, the element's deletion is still the responsibility of the caller with two exceptions: if it is used as the "disownedItem" in the ListOf_appendAndOwn() or ListOf_insertAndOwn() functions. All other functions in libsbml add a copy of the element, and do not transfer ownership of the pointer.
void Transformation_free ( Transformation_t t)

Frees this Transformation_t object.

Parameters
tthe Transformation_t structure.
char * Transformation_getName ( const Transformation_t t)

Returns the value of the "name" attribute of this Transformation_t.

Parameters
tthe Transformation_t structure whose name is sought.
Returns
the value of the "name" attribute of this Transformation_t as a pointer to a string.
Warning
The string returned by this function is owned by the caller, who is responsible for deleting it. Any changes made to the string will not be reflected in any resulting SBML document unless the string is added to an SBML Document. Even in this case, the string should be deleted, as adding a string to an SBML Document adds a copy of the string, and does not transfer ownership of that string.
int Transformation_hasRequiredAttributes ( const Transformation_t t)

Predicate returning 1 (true) if all the required attributes for this Transformation_t object have been set.

Parameters
tthe Transformation_t structure.
Returns
1 (true) to indicate that all the required attributes of this Transformation_t have been set, otherwise 0 (false) is returned.
Note
The required attributes for the Transformation_t object are:
  • "transform"
int Transformation_isEllipse ( const Transformation_t t)

Predicate returning 1 if this Transformation_t is of type Ellipse_t.

Parameters
tthe Transformation_t structure.
Returns
1 if this Transformation_t is of type Ellipse_t, 0 otherwise
int Transformation_isImage ( const Transformation_t t)

Predicate returning 1 if this Transformation_t is of type Image_t.

Parameters
tthe Transformation_t structure.
Returns
1 if this Transformation_t is of type Image_t, 0 otherwise
int Transformation_isLineEnding ( const Transformation_t t)

Predicate returning 1 if this Transformation_t is of type LineEnding_t.

Parameters
tthe Transformation_t structure.
Returns
1 if this Transformation_t is of type LineEnding_t, 0 otherwise
int Transformation_isPolygon ( const Transformation_t t)

Predicate returning 1 if this Transformation_t is of type Polygon_t.

Parameters
tthe Transformation_t structure.
Returns
1 if this Transformation_t is of type Polygon_t, 0 otherwise
int Transformation_isRectangle ( const Transformation_t t)

Predicate returning 1 if this Transformation_t is of type Rectangle_t.

Parameters
tthe Transformation_t structure.
Returns
1 if this Transformation_t is of type Rectangle_t, 0 otherwise
int Transformation_isRenderCurve ( const Transformation_t t)

Predicate returning 1 if this Transformation_t is of type RenderCurve_t.

Parameters
tthe Transformation_t structure.
Returns
1 if this Transformation_t is of type RenderCurve_t, 0 otherwise
int Transformation_isRenderGroup ( const Transformation_t t)

Predicate returning 1 if this Transformation_t is of type RenderGroup_t.

Parameters
tthe Transformation_t structure.
Returns
1 if this Transformation_t is of type RenderGroup_t, 0 otherwise
int Transformation_isSetName ( const Transformation_t t)

Predicate returning 1 (true) if this Transformation_t's "name" attribute is set.

Parameters
tthe Transformation_t structure.
Returns
1 (true) if this Transformation_t's "name" attribute has been set, otherwise 0 (false) is returned.
int Transformation_isSetTranform ( const Transformation_t t)

Predicate returning 1 (true) if this Transformation_t's "transform" attribute is set.

Parameters
tthe Transformation_t structure.
Returns
1 (true) if this Transformation_t's "transform" attribute has been set, otherwise 0 (false) is returned.
int Transformation_isText ( const Transformation_t t)

Predicate returning 1 if this Transformation_t is of type Text_t.

Parameters
tthe Transformation_t structure.
Returns
1 if this Transformation_t is of type Text_t, 0 otherwise
int Transformation_setName ( Transformation_t t,
const char *  name 
)

Sets the value of the "name" attribute of this Transformation_t.

Parameters
tthe Transformation_t structure.
nameconst char * value of the "name" attribute to be set.
Returns
integer value indicating success/failure of the function. The value is drawn from the enumeration OperationReturnValues_t. The possible values returned by this function are: Calling this function with name = NULL or an empty string is equivalent to calling Transformation_unsetName().
int Transformation_setTransform ( Transformation_t t,
double *  transform 
)

Sets the value of the "transform" attribute of this Transformation_t.

Parameters
tthe Transformation_t structure.
transformdouble * array of the "transform" attribute to be set.
Returns
integer value indicating success/failure of the function. The value is drawn from the enumeration OperationReturnValues_t. The possible values returned by this function are:
int Transformation_unsetName ( Transformation_t t)

Unsets the value of the "name" attribute of this Transformation_t.

Parameters
tthe Transformation_t structure.
Returns
integer value indicating success/failure of the function. The value is drawn from the enumeration OperationReturnValues_t. The possible values returned by this function are: