载入中...
搜索中...
未找到
eve::fluids::ISurfaceConstraint类 参考abstract

Backend-neutral contract for mesh-surface binding and traversal. 更多...

#include <SurfaceFluidContracts.h>

类 eve::fluids::ISurfaceConstraint 继承关系图:
eve::fluids::FluidSurfaceConstraintAdapter

Public 成员函数

virtual ~ISurfaceConstraint ()=default
 Releases the borrowed-constraint adapter.
 
virtual eve::Result< void > build (const std::vector< glm::vec3 > &positions, const std::vector< std::uint32_t > &indices, const std::vector< glm::vec2 > &uvs={})=0
 Builds topology and pose state from owning caller data.
 
virtual eve::Result< void > setTransform (const glm::mat4 &transform)=0
 Applies a rigid pose while preserving the previous pose.
 
virtual eve::Result< void > setDeformedPositions (const std::vector< glm::vec3 > &worldPositions)=0
 Applies a deformed pose with the existing topology.
 
virtual bool isValid () const noexcept=0
 Returns whether topology and poses are currently valid.
 
virtual eve::Result< SurfaceSample > evaluate (const SurfaceLocation &location, eve::Duration poseDelta) const =0
 Evaluates a material-space location in the current pose.
 
virtual eve::Result< SurfaceLocation > project (const glm::vec3 &worldPosition, float maxDistance) const =0
 Projects a world point to the nearest material-space location.
 
virtual eve::Result< SurfaceWalkResult > walk (const SurfaceLocation &start, const glm::vec3 &displacement, int maxCrossings=16) const =0
 Walks a material-space location over triangle adjacency.
 

详细描述

Backend-neutral contract for mesh-surface binding and traversal.

在文件 SurfaceFluidContracts.h 第 50 行定义.

构造及析构函数说明

◆ ~ISurfaceConstraint()

virtual eve::fluids::ISurfaceConstraint::~ISurfaceConstraint ( )
virtualdefault

Releases the borrowed-constraint adapter.

成员函数说明

◆ build()

virtual eve::Result< void > eve::fluids::ISurfaceConstraint::build ( const std::vector< glm::vec3 > &  positions,
const std::vector< std::uint32_t > &  indices,
const std::vector< glm::vec2 > &  uvs = {} 
)
pure virtual

Builds topology and pose state from owning caller data.

在 eve::fluids::FluidSurfaceConstraintAdapter 内被实现.

◆ evaluate()

virtual eve::Result< SurfaceSample > eve::fluids::ISurfaceConstraint::evaluate ( const SurfaceLocation &  location,
eve::Duration  poseDelta 
) const
pure virtual

Evaluates a material-space location in the current pose.

在 eve::fluids::FluidSurfaceConstraintAdapter 内被实现.

◆ isValid()

virtual bool eve::fluids::ISurfaceConstraint::isValid ( ) const
pure virtualnoexcept

Returns whether topology and poses are currently valid.

在 eve::fluids::FluidSurfaceConstraintAdapter 内被实现.

◆ project()

virtual eve::Result< SurfaceLocation > eve::fluids::ISurfaceConstraint::project ( const glm::vec3 &  worldPosition,
float  maxDistance 
) const
pure virtual

Projects a world point to the nearest material-space location.

在 eve::fluids::FluidSurfaceConstraintAdapter 内被实现.

◆ setDeformedPositions()

virtual eve::Result< void > eve::fluids::ISurfaceConstraint::setDeformedPositions ( const std::vector< glm::vec3 > &  worldPositions)
pure virtual

Applies a deformed pose with the existing topology.

在 eve::fluids::FluidSurfaceConstraintAdapter 内被实现.

◆ setTransform()

virtual eve::Result< void > eve::fluids::ISurfaceConstraint::setTransform ( const glm::mat4 &  transform)
pure virtual

Applies a rigid pose while preserving the previous pose.

在 eve::fluids::FluidSurfaceConstraintAdapter 内被实现.

◆ walk()

virtual eve::Result< SurfaceWalkResult > eve::fluids::ISurfaceConstraint::walk ( const SurfaceLocation &  start,
const glm::vec3 &  displacement,
int  maxCrossings = 16 
) const
pure virtual

Walks a material-space location over triangle adjacency.

在 eve::fluids::FluidSurfaceConstraintAdapter 内被实现.


该类的文档由以下文件生成: