Ion
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ion::gfxutils::PlanarShapeSpec Struct Reference

Planar shape. More...

#include "shapeutils.h"

Inheritance diagram for ion::gfxutils::PlanarShapeSpec:
Collaboration diagram for ion::gfxutils::PlanarShapeSpec:

Public Types

enum  PlaneNormal {
  kPositiveX,
  kNegativeX,
  kPositiveY,
  kNegativeY,
  kPositiveZ,
  kNegativeZ
}
 This enum specifies the principal Cartesian plane containing the rectangle by its directed normal. More...
 
enum  VertexType {
  kPosition,
  kPositionTexCoords,
  kPositionNormal,
  kPositionTexCoordsNormal
}
 This enum is used to specify what per-vertex attributes should be included in a Shape. More...
 

Public Member Functions

 PlanarShapeSpec ()
 

Public Attributes

PlaneNormal plane_normal
 
base::AllocatorPtr allocator
 
math::Point3f translation
 The order of operations is: scale, then rotate, then translate. More...
 
float scale
 
math::Matrix3f rotation
 
VertexType vertex_type
 
gfx::BufferObject::UsageMode usage_mode
 UsageMode for all created BufferObject instances. More...
 

Detailed Description

Planar shape.

This struct defines common enums and settings for planar i.e., flat shapes. It can't be used to generate geometry directly, as it only serves as a base class for other objects below.

Definition at line 139 of file shapeutils.h.

Member Enumeration Documentation

This enum specifies the principal Cartesian plane containing the rectangle by its directed normal.

Note that this affects the orientation of the rectangle, the direction of its normal, and the orientation of its S/T texture coordinates, as commented below.

Enumerator
kPositiveX 
kNegativeX 
kPositiveY 
kNegativeY 
kPositiveZ 
kNegativeZ 

Definition at line 144 of file shapeutils.h.

This enum is used to specify what per-vertex attributes should be included in a Shape.

Only the three geometric attributes available in the global registry ("aVertex", "aNormal", and "aTexCoords") are supported.

Enumerator
kPosition 
kPositionTexCoords 
kPositionNormal 
kPositionTexCoordsNormal 

Definition at line 44 of file shapeutils.h.

Constructor & Destructor Documentation

ion::gfxutils::PlanarShapeSpec::PlanarShapeSpec ( )
inline

Definition at line 152 of file shapeutils.h.

Member Data Documentation

PlaneNormal ion::gfxutils::PlanarShapeSpec::plane_normal

Definition at line 153 of file shapeutils.h.

math::Matrix3f ion::gfxutils::ShapeSpec::rotation
inherited

Definition at line 59 of file shapeutils.h.

float ion::gfxutils::ShapeSpec::scale
inherited

Definition at line 58 of file shapeutils.h.

math::Point3f ion::gfxutils::ShapeSpec::translation
inherited

The order of operations is: scale, then rotate, then translate.

Definition at line 57 of file shapeutils.h.

gfx::BufferObject::UsageMode ion::gfxutils::ShapeSpec::usage_mode
inherited

UsageMode for all created BufferObject instances.

This also affects whether data is considered wipeable. (gfx::BufferObject::kStaticDraw).

Definition at line 63 of file shapeutils.h.

VertexType ion::gfxutils::ShapeSpec::vertex_type
inherited

Definition at line 60 of file shapeutils.h.


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