Enzo
Loading...
Searching...
No Matches
enzo::geo::Camera Class Reference

Camera primitive with only primitive-level attributes. More...

#include <Camera.h>

Inheritance diagram for enzo::geo::Camera:
enzo::geo::Primitive

Public Member Functions

 Camera (std::string_view path="/camera")
 
 Camera (const Camera &other)
 
Cameraoperator= (const Camera &rhs)
 
PrimType getType () const override
 
std::shared_ptr< Primitiveclone () const override
 
TransformClass transformType () const override
 
void applyTransform (const Matrix4 &mat, TransformClass transformClass) override
 
Matrix4 getTransform () const
 
void setTransform (const Matrix4 &xform)
 
- Public Member Functions inherited from enzo::geo::Primitive
 Primitive (std::string_view path="/prim")
 
 Primitive (const Primitive &other)
 
Primitiveoperator= (const Primitive &rhs)
 
void applyTransform (const Transform &transform, TransformClass transformClass)
 
virtual bool canMerge () const
 
virtual void merge (std::shared_ptr< Primitive > other)
 
void incrementVersion ()
 
virtual bool hasPoints () const
 
Offset getNumPoints () const
 
virtual PointOffsets getPoints ()
 
virtual bool isValidPoint (Offset offset) const
 
virtual void deletePoints (const std::vector< Offset > &pointOffsets)
 
virtual void defragment ()
 Compacts storage, removing entries marked invalid so offsets are contiguous again.
 
attr::AttributeHandle< intT > addIntAttribute (attr::AttributeOwner owner, std::string name, bool intrinsic=false)
 
attr::AttributeHandleBool addBoolAttribute (attr::AttributeOwner owner, std::string name, bool intrinsic=false, bool isPrivate=false)
 
attr::AttributeHandle< Vector3 > addVector3Attribute (attr::AttributeOwner owner, std::string name, bool intrinsic=false)
 
attr::AttributeHandle< Matrix4 > addMatrix4Attribute (attr::AttributeOwner owner, std::string name, bool intrinsic=false)
 
std::shared_ptr< attr::AttributegetAttribByName (attr::AttributeOwner owner, std::string name, bool includeIntrinsics=false)
 
std::shared_ptr< const attr::AttributegetAttribByName (attr::AttributeOwner owner, std::string name, bool includeIntrinsics=false) const
 Const counterpart of getAttribByName.
 
const size_t getNumAttributes (const attr::AttributeOwner owner) const
 
std::weak_ptr< const attr::AttributegetAttributeByIndex (attr::AttributeOwner owner, unsigned int index) const
 
bool attributeExists (attr::AttributeOwner owner, std::string name)
 
attr::AttributeHandleBool createGroup (attr::AttributeOwner owner, std::string name)
 Creates a group on the given owner.
 
void addToGroup (attr::AttributeOwner owner, const std::string &name, const std::vector< Offset > &offsets)
 Marks the given offsets as members of the group.
 
std::shared_ptr< attr::AttributegetGroupByName (attr::AttributeOwner owner, const std::string &name) const
 Looks up a group by name.
 
size_t getNumGroups (attr::AttributeOwner owner) const
 Returns how many groups live on the given owner.
 
std::weak_ptr< const attr::AttributegetGroupByIndex (attr::AttributeOwner owner, unsigned int index) const
 Returns the group at the given index in the owner's group store.
 
attr::AttributeHandleBool createPointGroup (std::string name)
 Creates a point group.
 
attr::AttributeHandleBool createPrimitiveGroup (std::string name)
 Creates a primitive group.
 
void addToPointGroup (const std::string &name, const std::vector< Offset > &offsets)
 Marks the given offsets as members of the point group.
 
void addToPrimitiveGroup (const std::string &name, const std::vector< Offset > &offsets)
 Marks the given offsets as members of the primitive group.
 
String getPath () const
 
void setPath (const String &path)
 

Additional Inherited Members

- Protected Member Functions inherited from enzo::geo::Primitive
virtual attr::attribVector & getAttributeStore (const attr::AttributeOwner &owner)
 
virtual const attr::attribVector & getAttributeStore (const attr::AttributeOwner &owner) const
 
virtual attr::attribVector & getGroupStore (const attr::AttributeOwner &owner)
 
virtual const attr::attribVector & getGroupStore (const attr::AttributeOwner &owner) const
 
attr::attribVector deepCopyAttributes (attr::attribVector source)
 
size_t getElementCount (const attr::AttributeOwner &owner) const
 Returns the number of elements in the given owner's store.
 
- Protected Attributes inherited from enzo::geo::Primitive
std::string path_ = "/prim"
 
attr::attribVector pointAttributes_
 
attr::attribVector primitiveAttributes_
 
attr::attribVector pointGroups_
 
attr::attribVector primitiveGroups_
 

Detailed Description

Camera primitive with only primitive-level attributes.

Unlike Mesh, Camera has no points, vertices, or faces. It stores a 4x4 transform matrix as a primitive attribute.

Member Function Documentation

◆ applyTransform()

void enzo::geo::Camera::applyTransform ( const Matrix4 & mat,
TransformClass transformClass )
overridevirtual

Implements enzo::geo::Primitive.

◆ clone()

std::shared_ptr< Primitive > enzo::geo::Camera::clone ( ) const
inlineoverridevirtual

Implements enzo::geo::Primitive.

◆ getType()

PrimType enzo::geo::Camera::getType ( ) const
inlineoverridevirtual

Implements enzo::geo::Primitive.

◆ transformType()

TransformClass enzo::geo::Camera::transformType ( ) const
inlineoverridevirtual

Implements enzo::geo::Primitive.


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