78 return std::numeric_limits<AttributeId>::max();
168template <
typename ValueType>
172template <
typename ValueType,
typename Index>
173class IndexedAttribute;
AttributeWritePolicy
Policy for attempting to write to read-only external buffers.
Definition: AttributeFwd.h:123
AttributeCopyPolicy
Policy for copying attribute that are views onto external buffers.
Definition: AttributeFwd.h:146
uint32_t AttributeId
Identified to be used to access an attribute.
Definition: AttributeFwd.h:73
AttributeUsage
Usage tag indicating how the attribute should behave under mesh transformations.
Definition: AttributeFwd.h:54
AttributeShrinkPolicy
Policy for shrinking external attribute buffers.
Definition: AttributeFwd.h:110
AttributeCreatePolicy
Policy for attribute creation with reserved attribute names.
Definition: AttributeFwd.h:86
AttributeElement
Type of element to which the attribute is attached.
Definition: AttributeFwd.h:26
constexpr AttributeId invalid_attribute_id()
Invalid attribute id.
Definition: AttributeFwd.h:76
AttributeDeletePolicy
Policy for attribute deletion of reserved attribute names.
Definition: AttributeFwd.h:157
AttributeExportPolicy
Policy for exporting attributes that are views onto external buffers.
Definition: AttributeFwd.h:134
AttributeGrowthPolicy
Policy for growing external attribute buffers.
Definition: AttributeFwd.h:96
@ ErrorIfReadOnly
Throws an exception when trying to write to a read-only buffer.
@ String
Mesh attribute is a metadata string (stored as a uint8_t buffer).
@ Position
Mesh attribute must have exactly dim channels.
@ Tangent
Mesh attribute can have dim or dim + 1 channels.
@ CornerIndex
Single channel integer attribute indexing a mesh corner.
@ VertexIndex
Single channel integer attribute indexing a mesh vertex.
@ EdgeIndex
Single channel integer attribute indexing a mesh edge.
@ Normal
Mesh attribute can have dim or dim + 1 channels.
@ FacetIndex
Single channel integer attribute indexing a mesh facet.
@ Color
Mesh attribute can have 1, 2, 3 or 4 channels.
@ UV
Mesh attribute must have exactly 2 channels.
@ Bitangent
Mesh attribute can have dim or dim + 1 channels.
@ IgnoreIfExternal
Ignore external buffers when trying to shrink an attribute.
@ Force
Force creation of reserved attribute names.
@ ErrorIfReserved
Default deletion policy, throw an exception if attribute name is reserved.
@ Value
Values that are not attached to a specific element.
Definition: AttributeFwd.h:42
@ Edge
Per-edge mesh attributes.
Definition: AttributeFwd.h:34
@ Indexed
Indexed mesh attributes.
Definition: AttributeFwd.h:45
@ Facet
Per-facet mesh attributes.
Definition: AttributeFwd.h:31
@ Corner
Per-corner mesh attributes.
Definition: AttributeFwd.h:37
@ Vertex
Per-vertex mesh attributes.
Definition: AttributeFwd.h:28
@ CopyIfUnmanaged
Copy the buffer during export if the attribute points to an unmanaged external buffer.
@ KeepExternalPtr
Keep the raw pointer to the external buffer data. Use with caution.
@ CopyIfExternal
Copy the buffer during export if the attribute points to an external buffer.
@ ErrorIfExternal
Throws an exception when trying to grow an external buffer (even if the new size is.
@ SilentCopy
Silently copy the buffer data if it grows beyond the buffer capacity.
@ WarnAndCopy
Logs a warning and copy the buffer data if it grows beyond the buffer capacity.
@ AllowWithinCapacity
Allow attribute growth as long as it remains within the capacity of the external.
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > Vector
Type alias for one-dimensional column Eigen vectors.
Definition: views.h:79
Main namespace for Lagrange.
Definition: AABBIGL.h:30