15 #include "vissurveymod.h" 28 template <
class T>
class Array3D;
30 namespace Attrib {
class SelSpec; }
37 class VolumeRenderScalarField;
38 class OrthogonalSlice;
39 class TextureChannel2RGBA;
64 int addSlice(
int dim);
66 void showVolRen(
bool yn);
67 bool isVolRenShown()
const;
71 bool updateisosurface =
true);
73 void removeChild(
int displayid);
77 int getNrIsoSurfaces();
80 float defaultIsoValue()
const;
97 char seedAboveIsovalue(
100 void setSeedAboveIsovalue(
110 void showManipulator(
bool yn);
111 bool isManipulatorShown()
const;
112 bool isManipulated()
const;
113 bool canResetManipulation()
const;
114 void resetManipulation();
115 void acceptManipulation();
123 void setSelSpecs(
int attrib,
127 int nrAttribs()
const;
128 bool canAddAttrib(
int nrattribstoadd=1)
const;
130 bool canRemoveAttrib()
const;
131 bool removeAttrib(
int attrib);
132 bool swapAttribs(
int attrib0,
int attrib1);
133 void enableAttrib(
int attrib,
bool yn);
134 bool isAttribEnabled(
int attrib)
const;
135 void setAttribTransparency(
int attrib,
unsigned char);
136 unsigned char getAttribTransparency(
int attrib)
const;
149 float getValue(
int attrib,
const Coord3&)
const;
156 bool dragmode=
false);
157 bool setDataVolume(
int attrib,
169 {
return SurveyObject::getMousePosInfo(ei,iop);}
174 void getTreeObjectInfo(
uiString&)
const;
180 void setColTabSequence(
int attrib,
182 bool canSetColTabSequence()
const;
186 virtual bool allowsPicks()
const;
190 static bool canUseVolRenShading();
191 void allowShading(
bool yn);
192 bool usesShading()
const;
199 void setRightHandSystem(
bool yn);
205 bool writeVolume(
int attrib,
const char* fnm)
const;
207 void setDisplayTransformation(
const mVisTrans*);
209 bool canEnableTextureInterpolation()
const;
210 bool textureInterpolationEnabled()
const;
211 void enableTextureInterpolation(
bool);
216 {
return "InDepthVolResize"; }
223 bool updateSeedBasedSurface(
int,
TaskRunner* = 0);
225 void updateIsoSurfColor();
229 bool isSelected()
const;
231 void setScene(
Scene*);
232 void updateAttribEnabling();
233 void getObjectInfoText(
uiString& info,
262 void updateDraggerLimits(
bool dragmode=
false);
272 void updateRanges(
bool updateic,
bool updatez);
303 static const char* sKeyVolumeID();
304 static const char* sKeyInline();
305 static const char* sKeyCrossLine();
307 static const char* sKeyVolRen();
308 static const char* sKeyNrSlices();
309 static const char* sKeySlice();
310 static const char* sKeyTexture();
312 static const char* sKeyNrIsoSurfaces();
313 static const char* sKeyIsoValueStart();
314 static const char* sKeyIsoOnStart();
315 static const char* sKeySurfMode();
316 static const char* sKeySeedsMid();
317 static const char* sKeySeedsAboveIsov();
ObjectSet< visBase::OrthogonalSlice > slices_
Definition: visvolumedisplay.h:242
#define mExpClass(module)
Definition: commondefs.h:157
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
void turnOn(int flag)
Overrides the envirnonment variable.
ConstRefMan< mVisTrans > displaytrans_
Definition: visvolumedisplay.h:301
visBase::TextureChannel2RGBA * texchannel2rgba_
Definition: visvolumedisplay.h:238
TrcKeyZSampling csfromsession_
Definition: visvolumedisplay.h:292
bool allowMaterialEdit() const
Definition: visvolumedisplay.h:185
Definition of a mouse cursor, can be either a predefined shape (from the enum, or a file...
Definition: mousecursor.h:24
Notifier< VolumeDisplay > boxMoving
Definition: visvolumedisplay.h:221
ConstRefMan< RegularSeisDataPack > cache_
Definition: visvolumedisplay.h:285
bool operator==(const ArrayNDInfo &a1, const ArrayNDInfo &a2)
Definition: arrayndinfo.h:51
Slice that cuts orthogonal through a VolumeData.
Definition: visvolorthoslice.h:27
A series of color control points able to give an (interpolated) color for every position [0...
Definition: coltabsequence.h:37
Definition: visboxdragger.h:28
Interface class for Notifier. See comments there.
Definition: notify.h:20
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:200
static const char * sKeyVolPlaneKey()
Definition: visvolumedisplay.h:214
bool pickable() const
Definition: visvolumedisplay.h:226
static int cCrossLine()
Definition: visvolumedisplay.h:61
ZAxisTransformer * datatransformer_
Definition: visvolumedisplay.h:277
bool selectable() const
Definition: visvolumedisplay.h:228
#define mDefaultFactoryInstantiation(baseclss, clss, keywrd, usernm)
Definition: factory.h:287
VolumeDataPack for 2D and 3D seismic data.
Definition: seisdatapack.h:42
bool canDuplicate() const
Definition: visvolumedisplay.h:187
static int cInLine()
Definition: visvolumedisplay.h:60
Definition: uistring.h:88
bool rightClickable() const
Definition: visvolumedisplay.h:227
static ID SeisID()
Cube/Block (N1xN2xN3) data: 3.
TypeSet< char > sections_
Definition: visvolumedisplay.h:257
static const char * sKeyVolDepthKey()
Definition: visvolumedisplay.h:213
Maps data values to color sequence positions: [0,1].
Definition: coltabmapper.h:33
bool keepdraggerinsidetexture_
Definition: visvolumedisplay.h:263
Used for displaying a polyline, preview for a random line created throught well path.
Definition: visarrowdisplay.h:18
BufferString sliceposition_
Definition: visvolumedisplay.h:290
Definition: vistexturechannel2rgba.h:33
Class to help setup a callback handling.
Definition: notify.h:121
Definition: marchingcubes.h:80
Definition: groupedid.h:40
visBase::BoxDragger * boxdragger_
Definition: visvolumedisplay.h:236
3D point or vector
Definition: commontypes.h:57
VisualObjectImpl
Definition: visobject.h:123
Definition: vismarchingcubessurface.h:29
Definition: visvolumedisplay.h:279
ZAxisTransform * datatransform_
Definition: visvolumedisplay.h:276
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
bool isOn(int flag=0xffff)
Class that can execute a task.
Definition: task.h:193
Definition: visvolumedisplay.h:244
#define mVisTrans
Definition: visdata.h:25
char mode_
Definition: visvolumedisplay.h:251
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:32
TypeSet< Attrib::SelSpec > * as_
Definition: visvolumedisplay.h:284
Definition: vismaterial.h:36
Database for 3D objects.
Definition: vissurvscene.h:74
bool ismanip_
Definition: visvolumedisplay.h:298
bool canHaveMultipleAttribs() const
Definition: visvolumedisplay.h:126
float isovalue_
Definition: visvolumedisplay.h:250
uiString toUiString(const DBKey &ky)
Definition: dbkey.h:117
const uiString & errMsg() const
Definition: visvolumedisplay.h:203
bool hasPosModeManipulator() const
Definition: visvolumedisplay.h:109
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:187
ObjectSet< AttribData > attribs_
Definition: visvolumedisplay.h:288
ObjectSet< visBase::MarchingCubesSurface > isosurfaces_
Definition: visvolumedisplay.h:243
TypeSet< IsosurfaceSetting > isosurfsettings_
Definition: visvolumedisplay.h:256
Definition: visannot.h:40
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
BufferString errmsg_
Definition: horizontracker.h:117
BufferString slicename_
Definition: visvolumedisplay.h:291
virtual DataPackMgr::ID getDataPackMgrID() const
Definition: visvolumedisplay.h:164
visBase::EventCatcher * eventcatcher_
Definition: visvolumedisplay.h:295
Base class for all 'Display' objects.
Definition: vissurvobj.h:54
Definition: visevent.h:40
NotifierAccess * getMovementNotifier()
Definition: visvolumedisplay.h:116
AttribFormat
Definition: vissurvobj.h:178
Specifies an attribute selection (ID or output number of NN).
Definition: attribsel.h:43
Full key to any object in the OpendTect data store.
Definition: dbkey.h:36
Definition: groupedid.h:41
TrcKeyZSampling texturecs_
Definition: visvolumedisplay.h:265
bool isInlCrl() const
Definition: visvolumedisplay.h:58
bool onoffstatus_
Definition: visvolumedisplay.h:299
Definition: visvolrenscalarfield.h:37
static int cTimeSlice()
Definition: visvolumedisplay.h:62
void getMousePosInfo(const visBase::EventInfo &ei, IOPar &iop) const
Definition: visvolumedisplay.h:167
TrcKeyZSampling draggerstartcs_
Definition: visvolumedisplay.h:264
Array3D ( Subclass of ArrayND ) is a three dimensional array.
Definition: arraynd.h:149
char seedsaboveisoval_
Definition: visvolumedisplay.h:252
static const char * sKeyInDepthVolResize()
Definition: visvolumedisplay.h:215
bool isinited_
Definition: visvolumedisplay.h:297
visBase::VolumeRenderScalarField * scalarfield_
Definition: visvolumedisplay.h:237
Definition: visevent.h:83
NotifierAccess * getManipulationNotifier()
Definition: visvolumedisplay.h:117
Semblance Attribute.
Definition: attribdataholder.h:21
const MouseCursor * getMouseCursor() const
Definition: visvolumedisplay.h:230
MouseCursor mousecursor_
Definition: visvolumedisplay.h:294
Definition: visvolumedisplay.h:48
DBKey seedsid_
Definition: visvolumedisplay.h:253