Real-time dynamic fusion session: source A sticks to surface B with adjustable params. 更多...
#include <MeshAdhereLive.h>
Public 成员函数 | |
| Result< void > | activateResult (const MeshBuild &sourceA, const MeshBuild &surfaceB) |
| Activate with owning copies of A (movable) and B (surface). | |
| bool | isActive () const noexcept |
| std::uint64_t | revision () const noexcept |
| Result< void > | setParamsResult (const MeshContactBlendParams ¶ms) |
| const MeshContactBlendParams & | params () const noexcept |
| Result< void > | setSoftSnapPositionsResult (bool enabled) noexcept |
| Soft position snap defaults true for dynamic fusion. | |
| Result< void > | setSurfaceResult (const MeshBuild &surfaceB) |
| Replace surface B (e.g. after pose change baked into mesh space). Marks dirty. | |
| Result< void > | setSourceResult (const MeshBuild &sourceA) |
| Replace source A baseline. Marks dirty. | |
| Result< std::uint64_t > | evaluateResult (bool force=false) |
| Recompute derived mesh when dirty (or force). | |
| bool | isDirty () const noexcept |
| const MeshBuild * | derivedMesh () const noexcept |
Borrow derived mesh; null until first successful evaluate. @ownership Borrowed from this session; callers must not delete the pointer. @lifetime Valid until the next successful evaluateResult, bakeToMeshResult, removeSetup, or destruction of this session. | |
| Result< MeshBuild > | derivedMeshResult () const |
| Owning snapshot of the current derived mesh (session stays active). | |
| const MeshBuild * | sourceMesh () const noexcept |
Borrow immutable source A baseline; null when inactive or empty. @ownership Borrowed from this session; callers must not delete the pointer. @lifetime Valid until setSourceResult, removeSetup, bakeToMeshResult, or destruction of this session. | |
| void | removeSetup () noexcept |
| Drop derived state and restore inactive; keeps no derived publication. | |
| Result< MeshBuild > | bakeToMeshResult () |
| Freeze current derived (evaluating if dirty) into an owning MeshBuild and deactivate. | |
详细描述
Real-time dynamic fusion session: source A sticks to surface B with adjustable params.
Owns copies of A/B baselines. Derived display mesh is recomputed on dirty evaluate. Bake is optional freeze; RemoveSetup restores the A baseline. Owner-thread only; no callbacks.
在文件 MeshAdhereLive.h 第 19 行定义.
成员函数说明
◆ activateResult()
| Result< void > eve::procgen::MeshAdhereLive::activateResult | ( | const MeshBuild & | sourceA, |
| const MeshBuild & | surfaceB | ||
| ) |
Activate with owning copies of A (movable) and B (surface).
在文件 MeshAdhereLive.cpp 第 14 行定义.
引用了 eve::procgen::MeshContactBlendParams::edgeRadius, eve::procgen::MeshBuild::empty(), eve::Diagnostic::error(), eve::Result< T >::failure(), eve::procgen::MeshContactBlendParams::falloff, eve::InvalidArgument, eve::procgen::MeshContactBlendParams::materialBlend, eve::procgen::MeshContactBlendParams::materialRadius, eve::procgen::MeshContactBlendParams::normalsBlend, eve::procgen::MeshContactBlendParams::softSnapPositions, eve::procgen::MeshContactBlendParams::strength , 以及 eve::Result< T >::success().
◆ bakeToMeshResult()
Freeze current derived (evaluating if dirty) into an owning MeshBuild and deactivate.
在文件 MeshAdhereLive.cpp 第 136 行定义.
引用了 evaluateResult(), eve::Result< T >::failure(), removeSetup() , 以及 eve::Result< T >::success().
◆ derivedMesh()
|
noexcept |
Borrow derived mesh; null until first successful evaluate. @ownership Borrowed from this session; callers must not delete the pointer. @lifetime Valid until the next successful evaluateResult, bakeToMeshResult, removeSetup, or destruction of this session.
在文件 MeshAdhereLive.cpp 第 106 行定义.
◆ derivedMeshResult()
Owning snapshot of the current derived mesh (session stays active).
- 返回
- Copy of derived after a prior successful evaluate, or a diagnostic if inactive/empty.
- 注解
- Does not evaluate; call
evaluateResultfirst whenisDirty().
在文件 MeshAdhereLive.cpp 第 110 行定义.
引用了 eve::procgen::MeshBuild::empty(), eve::Diagnostic::error(), eve::Result< T >::failure(), eve::PreconditionViolation , 以及 eve::Result< T >::success().
◆ evaluateResult()
| Result< std::uint64_t > eve::procgen::MeshAdhereLive::evaluateResult | ( | bool | force = false | ) |
Recompute derived mesh when dirty (or force).
- 返回
- Applied revision, or diagnostic without publishing a partial derived mesh.
在文件 MeshAdhereLive.cpp 第 92 行定义.
引用了 eve::procgen::MeshBuild::empty(), eve::Diagnostic::error(), eve::Result< T >::failure(), eve::procgen::meshContactBlendAgainstSurfaceResult(), eve::PreconditionViolation , 以及 eve::Result< T >::success().
被这些函数引用 bakeToMeshResult().
◆ isActive()
|
inlinenoexcept |
在文件 MeshAdhereLive.h 第 23 行定义.
◆ isDirty()
|
inlinenoexcept |
在文件 MeshAdhereLive.h 第 41 行定义.
◆ params()
|
inlinenoexcept |
在文件 MeshAdhereLive.h 第 27 行定义.
被这些函数引用 setParamsResult().
◆ removeSetup()
|
noexcept |
Drop derived state and restore inactive; keeps no derived publication.
在文件 MeshAdhereLive.cpp 第 126 行定义.
被这些函数引用 bakeToMeshResult().
◆ revision()
|
inlinenoexcept |
在文件 MeshAdhereLive.h 第 24 行定义.
◆ setParamsResult()
| Result< void > eve::procgen::MeshAdhereLive::setParamsResult | ( | const MeshContactBlendParams & | params | ) |
◆ setSoftSnapPositionsResult()
|
noexcept |
Soft position snap defaults true for dynamic fusion.
在文件 MeshAdhereLive.cpp 第 54 行定义.
引用了 enabled, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::PreconditionViolation , 以及 eve::Result< T >::success().
◆ setSourceResult()
Replace source A baseline. Marks dirty.
在文件 MeshAdhereLive.cpp 第 78 行定义.
引用了 eve::procgen::MeshBuild::empty(), eve::Diagnostic::error(), eve::Result< T >::failure(), eve::InvalidArgument, eve::PreconditionViolation , 以及 eve::Result< T >::success().
◆ setSurfaceResult()
Replace surface B (e.g. after pose change baked into mesh space). Marks dirty.
在文件 MeshAdhereLive.cpp 第 64 行定义.
引用了 eve::procgen::MeshBuild::empty(), eve::Diagnostic::error(), eve::Result< T >::failure(), eve::InvalidArgument, eve::PreconditionViolation , 以及 eve::Result< T >::success().
◆ sourceMesh()
|
noexcept |
Borrow immutable source A baseline; null when inactive or empty. @ownership Borrowed from this session; callers must not delete the pointer. @lifetime Valid until setSourceResult, removeSetup, bakeToMeshResult, or destruction of this session.
在文件 MeshAdhereLive.cpp 第 122 行定义.
该类的文档由以下文件生成:
- src/modules/procgen/mesh/MeshAdhereLive.h
- src/modules/procgen/mesh/MeshAdhereLive.cpp