|
Blender V5.0
|
#include <BKE_curves.hh>
Classes | |
| struct | EvaluatedOffsets |
Public Attributes | |
| const ImplicitSharingInfo * | curve_offsets_sharing_info = nullptr |
| const ImplicitSharingInfo * | custom_knots_sharing_info = nullptr |
| std::array< int, CURVE_TYPES_NUM > | type_counts |
| SharedCache< EvaluatedOffsets > | evaluated_offsets_cache |
| SharedCache< bool > | has_cyclic_curve_cache |
| SharedCache< Vector< curves::nurbs::BasisCache > > | nurbs_basis_cache |
| SharedCache< Vector< float3 > > | evaluated_position_cache |
| SharedCache< Bounds< float3 > > | bounds_cache |
| SharedCache< Bounds< float3 > > | bounds_with_radius_cache |
| SharedCache< Vector< float > > | evaluated_length_cache |
| SharedCache< Vector< float3 > > | evaluated_tangent_cache |
| SharedCache< Vector< float3 > > | evaluated_normal_cache |
| SharedCache< std::optional< int > > | max_material_index_cache |
| SharedCache< Vector< int > > | custom_knot_offsets_cache |
| std::unique_ptr< bake::BakeMaterialsList > | bake_materials |
| bool | check_type_counts = true |
Contains derived data, caches, and other information not saved in files.
Definition at line 74 of file BKE_curves.hh.
| std::unique_ptr<bake::BakeMaterialsList> blender::bke::CurvesGeometryRuntime::bake_materials |
Stores weak references to material data blocks.
Definition at line 139 of file BKE_curves.hh.
|
mutable |
A cache of bounds shared between data-blocks with unchanged positions. When data changes affect the bounds, the cache is "un-shared" with other geometries. See SharedCache comments.
Definition at line 113 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::bounds_min_max(), blender::bke::CurvesGeometry::tag_positions_changed(), and blender::bke::CurvesGeometry::translate().
|
mutable |
Definition at line 114 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::bounds_min_max(), blender::bke::CurvesGeometry::tag_positions_changed(), and blender::bke::CurvesGeometry::tag_radii_changed().
| bool blender::bke::CurvesGeometryRuntime::check_type_counts = true |
Type counts have to be set eagerly after each operation. It's checked with asserts that the type counts are correct when accessed. However, this check is expensive and shouldn't be done all the time because it makes debug builds unusable in some situations that would be fine otherwise.
Definition at line 147 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::tag_topology_changed().
| const ImplicitSharingInfo* blender::bke::CurvesGeometryRuntime::curve_offsets_sharing_info = nullptr |
Implicit sharing user count for CurvesGeometry::curve_offsets.
Definition at line 77 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::blend_read(), blender::bke::CurvesGeometry::blend_write(), blender::bke::CurvesGeometry::count_memory(), and blender::bke::CurvesGeometry::resize().
|
mutable |
Offsets of custom knots in CurvesGeometry::custom_knots for each curve in CurvesGeometry. For curves with no custom knots next offset value stays the same.
Definition at line 136 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::tag_topology_changed().
| const ImplicitSharingInfo* blender::bke::CurvesGeometryRuntime::custom_knots_sharing_info = nullptr |
Implicit sharing user count for CurvesGeometry::custom_knots.
Definition at line 80 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::blend_read(), blender::bke::CurvesGeometry::blend_write(), and blender::bke::CurvesGeometry::count_memory().
|
mutable |
Cache of lengths along each evaluated curve for each evaluated point. If a curve is cyclic, it needs one more length value to correspond to the last segment, so in order to make slicing this array for a curve fast, an extra float is stored for every curve.
Definition at line 121 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::tag_positions_changed().
|
mutable |
Normal direction vectors for each evaluated point.
Definition at line 127 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::evaluated_normals(), blender::bke::CurvesGeometry::tag_normals_changed(), and blender::bke::CurvesGeometry::tag_positions_changed().
|
mutable |
Definition at line 96 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::tag_topology_changed().
|
mutable |
Cache of evaluated positions for all curves. The positions span will be used directly rather than the cache when all curves are poly type.
Definition at line 106 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::tag_positions_changed().
|
mutable |
Direction of the curve at each evaluated point.
Definition at line 124 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::tag_positions_changed().
|
mutable |
Definition at line 98 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::tag_topology_changed().
|
mutable |
The maximum of the "material_index" attribute.
Definition at line 130 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::material_index_max(), blender::bke::CurvesGeometry::tag_material_index_changed(), and blender::bke::CurvesGeometry::tag_topology_changed().
|
mutable |
Definition at line 100 of file BKE_curves.hh.
Referenced by blender::bke::CurvesGeometry::tag_topology_changed().
| std::array<int, CURVE_TYPES_NUM> blender::bke::CurvesGeometryRuntime::type_counts |
The cached number of curves with each type. Unlike other caches here, this is not computed lazily, since it is needed so often and types are not adjusted much anyway.
Definition at line 86 of file BKE_curves.hh.