| OpendTect 8.0

Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
MarchingCubes2Implicit Class Reference
Geometry

`#include <marchingcubes.h>`

Inheritance diagram for MarchingCubes2Implicit:
[legend]

## Public Member Functions
| MarchingCubes2Implicit (const MarchingCubesSurface &, Array3D< int > &, int originx, int originy, int originz, bool nodistance)
| ~MarchingCubes2Implicit ()
float | threshold () const
uiString | uiMessage () const override
Public Member Functions inherited from ParallelTask
virtual | ~ParallelTask ()
void | doParallel (bool yn)
bool | execute () override
virtual bool | executeParallel (bool parallel)
od_int64 | nrDone () const override
| May be -1, i.e. class does not report nrdone.
od_int64 | totalNr () const override
Public Member Functions inherited from ReportingTask
| ReportingTask (const ReportingTask &)=delete
virtual | ~ReportingTask ()
void | getProgress (const ReportingTask &)
ReportingTask & | operator= (const ReportingTask &)=delete
void | setSimpleMeter (bool yn, int repperc)
int | simpleMeterStep () const
bool | useSimpleMeter () const
Public Member Functions inherited from Task
| Task (const Task &)=delete
virtual | ~Task ()
virtual void | controlWork (Control)
virtual void | enableWorkControl (bool=true)
| Must be called before execute()
virtual uiRetVal | errorWithDetails () const
virtual Control | getState () const
Task & | operator= (const Task &)=delete
virtual uiString | uiNrDoneText () const
bool | workControlEnabled () const
Public Member Functions inherited from NamedCallBacker
| NamedCallBacker (const char *nm=nullptr)
| NamedCallBacker (const NamedCallBacker &)=delete
| ~NamedCallBacker ()
virtual Notifier< NamedCallBacker > & | objectToBeDeleted () const
NamedCallBacker & | operator= (const NamedCallBacker &)=delete
bool | operator== (const NamedCallBacker &oth) const
bool | operator== (const NamedObject &oth) const
Public Member Functions inherited from CallBacker
| CallBacker ()
| CallBacker (const CallBacker &)
virtual | ~CallBacker ()
bool | attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const
bool | attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const
void | detachAllNotifiers () const
| Call from the destructor of your inherited object.
void | detachCB (const NotifierAccess &, const CallBack &) const
void | detachCB (const NotifierAccess *notif, const CallBack &cb) const
virtual bool | isCapsule () const
bool | isNotifierAttached (const NotifierAccess *) const
| Only for debugging purposes, don't use.
CallBacker & | operator= (const CallBacker &)=delete
void | stopReceivingNotifications () const
virtual CallBacker * | trueCaller ()
Public Member Functions inherited from NamedObject
| NamedObject (const char *nm=nullptr)
| NamedObject (const NamedObject &oth)
virtual | ~NamedObject ()
virtual BufferString | getName () const
bool | getNameFromPar (const IOPar &)
const name_type & | name () const override
NamedObject & | operator= (const NamedObject &)
bool | operator== (const NamedObject &oth) const
virtual void | setName (const char *nm)
Public Member Functions inherited from ObjectWithName
virtual | ~ObjectWithName ()
bool | hasName (const char *nm) const
bool | hasName (const name_type &nm) const
void | putNameInPar (IOPar &) const

## Protected Member Functions
bool | doPrepare (int) override
bool | doWork (od_int64, od_int64, int) override
od_int64 | nrDone () const override
od_int64 | nrIterations () const override
bool | processSeeds (const od_int64 *, int nr)
void | setValue (od_int64 offset, int newval, bool checkval)
bool | shouldSetValue (od_int64 offset, int newval)
Protected Member Functions inherited from ParallelTask
| ParallelTask (const char *nm=0)
void | addToNrDone (od_int64 increment)
od_int64 | calculateThreadSize (od_int64 totalnr, int nrthreads, int thread) const
virtual int | maxNrThreads () const
virtual int | minThreadSize () const
void | quickAddToNrDone (od_int64 loopidx)
void | resetNrDone ()
virtual bool | stopAllOnFailure () const
Protected Member Functions inherited from ReportingTask
| ReportingTask (const char *nm=nullptr)
void | incrementProgress ()
ProgressMeter * | progressMeter () const
void | reportProgressFinished ()
void | reportProgressStarted ()
void | resetProgress ()
void | setProgressMeter (ProgressMeter *) override
| Must be called before execute()
void | updateProgressMeter (bool forced=false, od_int64 *totalnr=0)
void | updateReportedName ()
Protected Member Functions inherited from Task
| Task (const char *nm=nullptr)
virtual bool | shouldContinue ()
Protected Member Functions inherited from NamedCallBacker
void | sendDelNotif () const

## Protected Attributes
TypeSet< od_int64 > | activefloodfillers_
Threads::Barrier | barrier_
bool * | newfloodfillers_
bool | nodistance_
od_int64 | nrdefined_
int | originx_
int | originy_
int | originz_
Array3D< int > & | result_
int | size_ [3]
const MarchingCubesSurface & | surface_
Protected Attributes inherited from Task
Control | control_ = Task::Run
Threads::ConditionVar * | workcontrolcondvar_ = nullptr
Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > | delalreadytriggered_
Notifier< NamedCallBacker > | delnotif_
Protected Attributes inherited from NamedObject
BufferString | name_

## Friends
class | MarchingCubes2ImplicitDistGen

## Additional Inherited Members
Public Types inherited from Task
enum | Control { Run , Pause , Stop }
Public Types inherited from ObjectWithName
typedef OD::String | name_type
Static Public Member Functions inherited from ParallelTask
static uiString | sPosFinished ()
static uiString | sTrcFinished ()
Static Public Member Functions inherited from ReportingTask
static PtrMan< ProgressMeter > | getTextProgressMeter (od_ostream &, const IOPar *iop=nullptr)
static bool | needSimpleLogging (const IOPar &)
static const char * | sKeySimpleLogging ()
static const char * | sKeySimpleLoggingStep ()
Static Public Member Functions inherited from Task
static uiString | uiStdNrDoneText ()
Static Public Member Functions inherited from CallBacker
static void | createReceiverForCurrentThread ()
static void | removeReceiverForCurrentThread ()
Public Attributes inherited from ReportingTask
Notifier< ReportingTask > | progressUpdated

## Detailed Description

Fills an Array3D with the distance to a MarchingCubesSurface. Implementation goes in two steps: 1) the array is filled close to the surface (in doPrepare() ) 2) the array is flood filled from there.

<>

## Constructor & Destructor Documentation

## ◆ MarchingCubes2Implicit()

MarchingCubes2Implicit::MarchingCubes2Implicit | ( | const MarchingCubesSurface & | ,
|  | Array3D< int > & | ,
|  | int | originx,
|  | int | originy,
|  | int | originz,
|  | bool | nodistance )

originx .. originz gives the surface location of the array's origin.

Parameters

  originx,originy,originz |
  nodistance | enables faster processing, but the array will only be filled with -1, 0 and 1 depending on the side of the surface

## ◆ ~MarchingCubes2Implicit()

MarchingCubes2Implicit::~MarchingCubes2Implicit | ( |  | ) |

## Member Function Documentation

## ◆ doPrepare()

bool MarchingCubes2Implicit::doPrepare | ( | int | nrthreads | ) |
| override protected virtual

Called once, before any doWork is called.

Reimplemented from ParallelTask.

## ◆ doWork()

bool MarchingCubes2Implicit::doWork | ( | od_int64 | start,
|  | od_int64 | stop,
|  | int | threadidx )
| override protected virtual

The functions that does the job. The function will be called with all intervals from 0 to ParallelTask::nrIterations()-1. The function must be designed to be able to run in parallel.

Parameters

  start | first index
  stop | last index
  threadidx | gives an identifier (between 0 and nr of threads -1) that is unique to each call to doWork.

Implements ParallelTask.

## ◆ nrDone()

od_int64 MarchingCubes2Implicit::nrDone | ( |  | ) | const
| override protected virtual

Note
  nrDone is only used for displaying progress and will be compared to totalNr to show user how large part of the task that is finished.

Reimplemented from Task.

## ◆ nrIterations()

od_int64 MarchingCubes2Implicit::nrIterations | ( |  | ) | const
| override protected virtual

Returns
  the number of times the process should be run.

Implements ParallelTask.

## ◆ processSeeds()

bool MarchingCubes2Implicit::processSeeds | ( | const od_int64 * | ,
|  | int | nr )
| protected

## ◆ setValue()

void MarchingCubes2Implicit::setValue | ( | od_int64 | offset,
|  | int | newval,
|  | bool | checkval )
| protected

## ◆ shouldSetValue()

bool MarchingCubes2Implicit::shouldSetValue | ( | od_int64 | offset,
|  | int | newval )
| protected

## ◆ threshold()

float MarchingCubes2Implicit::threshold | ( |  | ) | const
| inline

## ◆ uiMessage()

uiString MarchingCubes2Implicit::uiMessage | ( |  | ) | const
| inline override virtual

Reimplemented from Task.

## Friends And Related Symbol Documentation

## ◆ MarchingCubes2ImplicitDistGen

friend class MarchingCubes2ImplicitDistGen
| friend

## Member Data Documentation

## ◆ activefloodfillers_

TypeSet<od_int64> MarchingCubes2Implicit::activefloodfillers_
| protected

## ◆ barrier_

Threads::Barrier MarchingCubes2Implicit::barrier_
| mutable protected

## ◆ newfloodfillers_

bool* MarchingCubes2Implicit::newfloodfillers_
| protected

## ◆ nodistance_

bool MarchingCubes2Implicit::nodistance_
| protected

## ◆ nrdefined_

od_int64 MarchingCubes2Implicit::nrdefined_
| protected

## ◆ originx_

int MarchingCubes2Implicit::originx_
| protected

## ◆ originy_

int MarchingCubes2Implicit::originy_
| protected

## ◆ originz_

int MarchingCubes2Implicit::originz_
| protected

## ◆ result_

Array3D<int>& MarchingCubes2Implicit::result_
| protected

## ◆ size_

int MarchingCubes2Implicit::size_[3]
| protected

## ◆ surface_

const MarchingCubesSurface& MarchingCubes2Implicit::surface_
| protected

Generated at
for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2025