载入中...
搜索中...
未找到
eve::procgen::TerrainMultiTileWorkspace类 参考

Owning script-safe collection of height tiles with atomic multi-tile operations. Tiles are copied on insertion and never retain caller rasters. The workspace is one mutable owner, move-only, and caller-thread affine. It invokes no callbacks and exposes only copied outputs. 更多...

#include <TerrainMultiTile.h>

类

struct  Impl
 

Public 成员函数

 TerrainMultiTileWorkspace ()
 Terrain multi tile workspace.
 
 ~TerrainMultiTileWorkspace ()
 Terrain multi tile workspace.
 
 TerrainMultiTileWorkspace (TerrainMultiTileWorkspace &&) noexcept
 Terrain multi tile workspace.
 
TerrainMultiTileWorkspace & operator= (TerrainMultiTileWorkspace &&) noexcept
 Operator =.
 
 TerrainMultiTileWorkspace (const TerrainMultiTileWorkspace &)=delete
 
TerrainMultiTileWorkspace & operator= (const TerrainMultiTileWorkspace &)=delete
 
Result< int > addTile (const std::string &name, const Heightmap &heightmap, double originX, double originZ, double width, double depth, bool worldMap=false)
 Copy a uniquely named tile into the workspace atomically.
 
Result< int > stamp (const Heightmap &stamp, const TerrainStampSettings &settings, const Heightmap &localMask, const Heightmap &globalMask, bool worldMapOperation=false)
 Apply a stamp transaction to owned tiles; failure preserves tiles and the prior report.
 
Result< int > stitch (const std::string &terrainA, const std::string &terrainB, const TerrainHeightStitchSettings &settings={})
 Stitch two named owned tiles and append one undoable all-tile snapshot.
 
Result< int > copyTile (const std::string &name, Heightmap &output) const
 Copy a named current tile into a matching caller-owned output.
 
Result< int > undo ()
 Restore the previous all-tile snapshot atomically.
 
Result< int > redo ()
 Restore the next all-tile snapshot atomically.
 
int getTileCount () const noexcept
 Number of owned tiles.
 
int getLastAffectedTiles () const noexcept
 Affected tile count from the last successful operation, or zero before one.
 
int getLastChangedSamples () const noexcept
 Changed sample count from the last successful operation, or zero before one.
 
int getLastMappingCount () const noexcept
 Number of affected-pixel mappings from the last successful operation.
 
int getOperationCount () const noexcept
 Successful stamp count including any redo suffix.
 
int getAppliedCount () const noexcept
 Applied successful stamp count at the current history cursor.
 

详细描述

Owning script-safe collection of height tiles with atomic multi-tile operations. Tiles are copied on insertion and never retain caller rasters. The workspace is one mutable owner, move-only, and caller-thread affine. It invokes no callbacks and exposes only copied outputs.

在文件 TerrainMultiTile.h 第 128 行定义.

构造及析构函数说明

◆ TerrainMultiTileWorkspace() [1/3]

eve::procgen::TerrainMultiTileWorkspace::TerrainMultiTileWorkspace ( )

Terrain multi tile workspace.

在文件 TerrainMultiTile.cpp 第 389 行定义.

◆ ~TerrainMultiTileWorkspace()

eve::procgen::TerrainMultiTileWorkspace::~TerrainMultiTileWorkspace ( )
default

Terrain multi tile workspace.

◆ TerrainMultiTileWorkspace() [2/3]

eve::procgen::TerrainMultiTileWorkspace::TerrainMultiTileWorkspace ( TerrainMultiTileWorkspace &&  )
defaultnoexcept

Terrain multi tile workspace.

◆ TerrainMultiTileWorkspace() [3/3]

eve::procgen::TerrainMultiTileWorkspace::TerrainMultiTileWorkspace ( const TerrainMultiTileWorkspace &  )
delete

成员函数说明

◆ addTile()

Result< int > eve::procgen::TerrainMultiTileWorkspace::addTile ( const std::string &  name,
const Heightmap &  heightmap,
double  originX,
double  originZ,
double  width,
double  depth,
bool  worldMap = false 
)

Copy a uniquely named tile into the workspace atomically.

在文件 TerrainMultiTile.cpp 第 394 行定义.

引用了 depth, eve::Diagnostic::error(), eve::Result< T >::failure(), finite, eve::InvalidArgument, name, eve::procgen::raster_detail::validRaster() , 以及 width.

◆ copyTile()

Result< int > eve::procgen::TerrainMultiTileWorkspace::copyTile ( const std::string &  name,
Heightmap &  output 
) const

◆ getAppliedCount()

int eve::procgen::TerrainMultiTileWorkspace::getAppliedCount ( ) const
noexcept

Applied successful stamp count at the current history cursor.

在文件 TerrainMultiTile.cpp 第 524 行定义.

◆ getLastAffectedTiles()

int eve::procgen::TerrainMultiTileWorkspace::getLastAffectedTiles ( ) const
noexcept

Affected tile count from the last successful operation, or zero before one.

在文件 TerrainMultiTile.cpp 第 486 行定义.

◆ getLastChangedSamples()

int eve::procgen::TerrainMultiTileWorkspace::getLastChangedSamples ( ) const
noexcept

Changed sample count from the last successful operation, or zero before one.

在文件 TerrainMultiTile.cpp 第 487 行定义.

◆ getLastMappingCount()

int eve::procgen::TerrainMultiTileWorkspace::getLastMappingCount ( ) const
noexcept

Number of affected-pixel mappings from the last successful operation.

在文件 TerrainMultiTile.cpp 第 488 行定义.

◆ getOperationCount()

int eve::procgen::TerrainMultiTileWorkspace::getOperationCount ( ) const
noexcept

Successful stamp count including any redo suffix.

在文件 TerrainMultiTile.cpp 第 521 行定义.

◆ getTileCount()

int eve::procgen::TerrainMultiTileWorkspace::getTileCount ( ) const
noexcept

Number of owned tiles.

在文件 TerrainMultiTile.cpp 第 485 行定义.

◆ operator=() [1/2]

TerrainMultiTileWorkspace & eve::procgen::TerrainMultiTileWorkspace::operator= ( const TerrainMultiTileWorkspace &  )
delete

◆ operator=() [2/2]

TerrainMultiTileWorkspace & eve::procgen::TerrainMultiTileWorkspace::operator= ( TerrainMultiTileWorkspace &&  )
defaultnoexcept

Operator =.

◆ redo()

Result< int > eve::procgen::TerrainMultiTileWorkspace::redo ( )

Restore the next all-tile snapshot atomically.

在文件 TerrainMultiTile.cpp 第 506 行定义.

引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), eve::InvalidArgument, size, eve::Result< T >::success() , 以及 t.

◆ stamp()

Result< int > eve::procgen::TerrainMultiTileWorkspace::stamp ( const Heightmap &  stamp,
const TerrainStampSettings &  settings,
const Heightmap &  localMask,
const Heightmap &  globalMask,
bool  worldMapOperation = false 
)

Apply a stamp transaction to owned tiles; failure preserves tiles and the prior report.

在文件 TerrainMultiTile.cpp 第 423 行定义.

引用了 eve::Diagnostic::error(), eve::Result< T >::failure() , 以及 eve::InvalidArgument.

◆ stitch()

Result< int > eve::procgen::TerrainMultiTileWorkspace::stitch ( const std::string &  terrainA,
const std::string &  terrainB,
const TerrainHeightStitchSettings &  settings = {} 
)

Stitch two named owned tiles and append one undoable all-tile snapshot.

在文件 TerrainMultiTile.cpp 第 458 行定义.

引用了 a, b, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::InvalidArgument, name, eve::procgen::TerrainHeightTile::name, settings , 以及 eve::procgen::stitchTerrainHeightmaps().

◆ undo()

Result< int > eve::procgen::TerrainMultiTileWorkspace::undo ( )

Restore the previous all-tile snapshot atomically.

在文件 TerrainMultiTile.cpp 第 491 行定义.

引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), eve::InvalidArgument, size, eve::Result< T >::success() , 以及 t.


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