OpendTect-6_4
6.4
|
Database for 3D objects. More...
Public Member Functions | |
virtual void | removeAll () |
virtual void | addObject (visBase::DataObject *) |
virtual int | size () const |
virtual int | getFirstIdx (const DataObject *) const |
virtual int | getFirstIdx (int did) const |
visBase::DataObject * | getObject (int) |
const visBase::DataObject * | getObject (int) const |
void | addUTMObject (visBase::VisualObject *) |
void | addInlCrlZObject (visBase::DataObject *) |
virtual void | removeObject (int idx) |
void | setTrcKeyZSampling (const TrcKeyZSampling &) |
const TrcKeyZSampling & | getTrcKeyZSampling () const |
void | showAnnotText (bool) |
bool | isAnnotTextShown () const |
void | showAnnotScale (bool) |
bool | isAnnotScaleShown () const |
void | showAnnotGrid (bool) |
bool | isAnnotGridShown () const |
void | showAnnot (bool) |
bool | isAnnotShown () const |
void | setAnnotText (int dim, const uiString &) |
void | setAnnotFont (const FontData &) |
const FontData & | getAnnotFont () const |
void | setAnnotScale (const TrcKeyZSampling &) |
const TrcKeyZSampling & | getAnnotScale () const |
void | savePropertySettings () |
visBase::PolygonSelection * | getPolySelection () |
void | setPolygonSelector (visBase::PolygonSelection *) |
const Selector< Coord3 > * | getSelector () const |
visBase::SceneColTab * | getSceneColTab () |
void | setSceneColTab (visBase::SceneColTab *) |
Coord3 | getMousePos (bool displayspace) const |
TrcKeyValue | getMousePos () const |
BufferString | getMousePosValue () const |
BufferString | getMousePosString () const |
const MouseCursor * | getMouseCursor () const |
void | passMouseCursor (const MouseCursor &) |
const KeyboardEvent & | getKeyboardEvent () const |
const MouseEvent & | getMouseEvent () const |
void | setEventHandled () |
void | objectMoved (CallBacker *) |
void | setFixedZStretch (float) |
float | getFixedZStretch () const |
void | setTempZStretch (float) |
float | getTempZStretch () const |
void | setZScale (float) |
float | getZScale () const |
float | getApparentVelocity (float zstretch) const |
const mVisTrans * | getTempZStretchTransform () const |
const mVisTrans * | getInlCrl2DisplayTransform () const |
const mVisTrans * | getUTM2DisplayTransform () const |
void | setZAxisTransform (ZAxisTransform *, TaskRunner *) |
ZAxisTransform * | getZAxisTransform () |
const ZAxisTransform * | getZAxisTransform () const |
bool | isRightHandSystem () const |
void | setZDomainInfo (const ZDomain::Info &) |
const ZDomain::Info & | zDomainInfo () const |
void | getAllowedZDomains (BufferString &) const |
const char * | zDomainKey () const |
uiString | zDomainUserName () const |
const char * | zDomainUnitStr (bool withparens=false) const |
int | zDomainUserFactor () const |
const char * | zDomainID () const |
void | setAnnotColor (const Color &) |
const Color | getAnnotColor () const |
void | setMarkerPos (const TrcKeyValue &, int sceneid) |
void | setMarkerSize (float) |
float | getMarkerSize () const |
const Color & | getMarkerColor () const |
void | setMarkerColor (const Color &) |
void | createTopBotImage (bool istop) |
visBase::TopBotImage * | getTopBotImage (bool istop) |
void | fillPar (IOPar &) const |
virtual bool | usePar (const IOPar &) |
Coord3 | getTopBottomIntersection (const visBase::EventInfo &, bool outerface, bool ignoreocclusion) const |
Coord3 | getTopBottomSurveyPos (const visBase::EventInfo &, bool outerface, bool ignoreocclusion, bool inlcrlspace=true) const |
void | setMoreObjectsToDoHint (bool yn) |
bool | getMoreObjectsToDoHint () const |
void | selectPosModeManipObj (int selid) |
Public Member Functions inherited from visBase::Scene | |
Scene () | |
virtual const char * | getClassName () const |
void | setCameraAmbientLight (float) |
float | getCameraAmbientLight () const |
void | setCameraLightIntensity (float) |
float | getCameraLightIntensity () const |
Light * | getDirectionalLight () const |
PolygonOffset * | getPolygonOffset () |
bool | saveCurrentOffsetAsDefault () const |
bool | blockMouseSelection (bool yn) |
Camera * | getCamera () |
const Camera * | getCamera () const |
virtual void | setCamera (Camera *) |
EventCatcher & | eventCatcher () |
int | getUpdateQueueID () const |
int | fixedIdx () const |
float | getPolygonOffsetFactor () const |
float | getPolygonOffsetUnits () const |
void | setName (const uiString &) |
Public Member Functions inherited from visBase::DataObjectGroup | |
DataObjectGroup () | |
void | setSeparate (bool yn=true) |
void | addObject (int id) |
virtual void | insertObject (int idx, DataObject *) |
virtual int | getFirstIdx (const DataObject *) const |
const DataObject * | getObject (int idx) const |
void | setDisplayTransformation (const visBase::Transformation *) |
const visBase::Transformation * | getDisplayTransformation () const |
void | setRightHandSystem (bool) |
void | setPixelDensity (float dpi) |
float | getPixelDensity () const |
Public Member Functions inherited from visBase::DataObject | |
virtual bool | isOK () const |
int | id () const |
void | setID (int nid) |
uiString | name () const |
osg::Node * | osgNode (bool skipswitch=false) |
const osg::Node * | osgNode (bool skipswitch=false) const |
void | enableTraversal (unsigned int mask, bool yn=true) |
bool | isTraversalEnabled (unsigned int mask) const |
SoNode * | getInventorNode () |
const SoNode * | getInventorNode () const |
virtual bool | turnOn (bool yn) |
virtual bool | isOn () const |
bool | isPickable (bool actively=true) const |
void | setPickable (bool actively, bool passively=true) |
virtual bool | rightClickable () const |
virtual bool | selectable () const |
void | select () const |
void | deSelect () const |
void | updateSel () const |
virtual bool | isSelected () const |
virtual NotifierAccess * | selection () |
virtual NotifierAccess * | deSelection () |
virtual NotifierAccess * | rightClicked () |
virtual const TypeSet< int > * | rightClickedPath () const |
virtual const char * | errMsg () const |
bool | serialize (const char *filename, bool binary=false) |
void | setParent (DataObjectGroup *g) |
template<class T > | |
T * | addNodeState (T *ns) |
NodeState * | removeNodeState (NodeState *) |
NodeState * | getNodeState (int idx) |
Public Member Functions inherited from CallBacker | |
CallBacker () | |
CallBacker (const CallBacker &) | |
virtual | ~CallBacker () |
bool | attachCB (NotifierAccess &, const CallBack &, bool onlyifnew=false) |
bool | attachCB (NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) |
void | detachCB (NotifierAccess &, const CallBack &) |
void | detachCB (NotifierAccess *notif, const CallBack &cb) |
bool | isNotifierAttached (NotifierAccess *) const |
Only for debugging purposes, don't use. More... | |
Static Public Member Functions | |
static Scene * | create () mCreateDataObj(Scene) |
static const char * | sKeyZStretch () |
Static Public Member Functions inherited from visBase::Scene | |
static Scene * | create () |
static void | initClass () |
static const char * | getStaticClassName () |
static const char * | sFactoryKeyword () |
static const char * | sKeyOffset () |
static const char * | sKeyFactor () |
static const char * | sKeyUnits () |
static const char * | sKeyLight () |
Static Public Member Functions inherited from visBase::DataObjectGroup | |
static DataObjectGroup * | create () |
static void | initClass () |
static const char * | getStaticClassName () |
static const char * | sFactoryKeyword () |
Static Public Member Functions inherited from visBase::DataObject | |
static int | getID (const osg::Node *) |
static float | getDefaultPixelDensity () |
static void | setVisualizationThread (const void *) |
Call only once from initialization. More... | |
static bool | isVisualizationThread () |
static void | requestSingleRedraw () |
static void | setCommonViewer (osgViewer::CompositeViewer *) |
static osgViewer::CompositeViewer * | getCommonViewer () |
Public Attributes | |
Notifier< Scene > | mouseposchange |
Notifier< Scene > | mousecursorchange |
Notifier< Scene > | keypressed |
Notifier< Scene > | mouseclicked |
Notifier< Scene > | sceneboundingboxupdated |
Public Attributes inherited from visBase::Scene | |
Notifier< Scene > | nameChanged |
Notifier< Scene > | contextIsUp |
Public Attributes inherited from visBase::DataObjectGroup | |
Notifier< DataObjectGroup > | change |
Protected Member Functions | |
~Scene () | |
void | setup () |
void | updateAnnotationText () |
void | updateTransforms (const TrcKeyZSampling &) |
void | mouseCB (CallBacker *) |
void | keyPressCB (CallBacker *) |
visBase::MarkerSet * | createMarkerSet () const |
void | mouseCursorCB (CallBacker *) |
void | togglePosModeManipObjSel () |
void | selChangeCB (CallBacker *) |
int | getImageFromPar (const IOPar &, const char *, visBase::TopBotImage *&) |
Protected Member Functions inherited from visBase::Scene | |
virtual void | runUpdateQueueCB (CallBacker *) |
void | fillOffsetPar (IOPar &) const |
Protected Member Functions inherited from visBase::DataObjectGroup | |
virtual | ~DataObjectGroup () |
Protected Member Functions inherited from visBase::DataObject | |
virtual osg::StateSet * | getStateSet () |
void | doAddNodeState (NodeState *ns) |
virtual void | triggerSel () |
virtual void | triggerDeSel () |
virtual void | triggerRightClick (const EventInfo *=0) |
DataObject () | |
template<class T > | |
T * | setOsgNode (T *t) |
Must be called during construction. More... | |
void | updateNodemask () |
Protected Member Functions inherited from CallBacker | |
void | detachAllNotifiers () |
Call from the destructor of your inherited object. More... | |
Static Protected Member Functions | |
static const Color & | cDefaultMarkerColor () |
static const char * | sKeyShowAnnot () |
static const char * | sKeyShowScale () |
static const char * | sKeyShowGrid () |
static const char * | sKeyAnnotFont () |
static const char * | sKeyAnnotColor () |
static const char * | sKeyMarkerColor () |
static const char * | sKeyShowCube () |
static const char * | sKeyZAxisTransform () |
static const char * | sKeyAppAllowShading () |
static const char * | sKeyTopImageID () |
static const char * | sKeyBotImageID () |
Database for 3D objects.
VisSurvey::Scene
is the database for all 'xxxxDisplay' objects. Use addObject(visBase::SceneObject*)
to add an object to the Scene.
It also manages the size of the survey cube. The ranges in each direction are obtained from SurveyInfo
class.
The display coordinate system is given in [m/m/ms] if the survey's depth is given in time. If the survey's depth is given in meters, the display coordinate system is given as [m/m/m]. The display coordinate system is righthand oriented!
OpenInventor(OI) has difficulties handling real-world coordinates (like xy UTM). Therefore the coordinates given to OI must be transformed from the UTM system to the display coordinate system. This is done by the display transform, which is given to all objects in the UTM system. These object are responsible to transform their coords themselves before giving them to OI.
The visSurvey::Scene has two domains:
1) the UTM coordinate system. It is advised that most objects are here. The objects added to this domain will have their transforms set to the displaytransform which transforms their coords from UTM lefthand (x, y, time[s] or depth[m] ) to display coords (righthand).
2) the InlCrl domain. Here, OI takes care of the transformation between inl/crl/t to display coords, so the objects does not need any own transform.
|
protectedvirtual |
Reimplemented from visBase::Scene.
void visSurvey::Scene::addInlCrlZObject | ( | visBase::DataObject * | ) |
|
virtual |
If the object is a visSurvey::SurveyObject it will ask if it's an inlcrl-object or not. If it's not an visSurvey::SurveyObject, it will be put in displaydomain
Reimplemented from visBase::Scene.
void visSurvey::Scene::addUTMObject | ( | visBase::VisualObject * | ) |
|
staticprotected |
|
static |
|
protected |
void visSurvey::Scene::createTopBotImage | ( | bool | istop | ) |
void visSurvey::Scene::fillPar | ( | IOPar & | ) | const |
void visSurvey::Scene::getAllowedZDomains | ( | BufferString & | ) | const |
const Color visSurvey::Scene::getAnnotColor | ( | ) | const |
const FontData& visSurvey::Scene::getAnnotFont | ( | ) | const |
const TrcKeyZSampling& visSurvey::Scene::getAnnotScale | ( | ) | const |
float visSurvey::Scene::getApparentVelocity | ( | float | zstretch | ) | const |
|
virtual |
|
inlinevirtual |
Reimplemented from visBase::DataObjectGroup.
float visSurvey::Scene::getFixedZStretch | ( | ) | const |
|
protected |
const mVisTrans* visSurvey::Scene::getInlCrl2DisplayTransform | ( | ) | const |
|
inline |
const Color& visSurvey::Scene::getMarkerColor | ( | ) | const |
float visSurvey::Scene::getMarkerSize | ( | ) | const |
bool visSurvey::Scene::getMoreObjectsToDoHint | ( | ) | const |
const MouseCursor* visSurvey::Scene::getMouseCursor | ( | ) | const |
|
inline |
Coord3 visSurvey::Scene::getMousePos | ( | bool | displayspace | ) | const |
TrcKeyValue visSurvey::Scene::getMousePos | ( | ) | const |
BufferString visSurvey::Scene::getMousePosString | ( | ) | const |
BufferString visSurvey::Scene::getMousePosValue | ( | ) | const |
|
virtual |
Reimplemented from visBase::DataObjectGroup.
const visBase::DataObject* visSurvey::Scene::getObject | ( | int | ) | const |
|
inline |
|
inline |
May be NULL
float visSurvey::Scene::getTempZStretch | ( | ) | const |
const mVisTrans* visSurvey::Scene::getTempZStretchTransform | ( | ) | const |
visBase::TopBotImage* visSurvey::Scene::getTopBotImage | ( | bool | istop | ) |
Coord3 visSurvey::Scene::getTopBottomIntersection | ( | const visBase::EventInfo & | , |
bool | outerface, | ||
bool | ignoreocclusion | ||
) | const |
Coord3 visSurvey::Scene::getTopBottomSurveyPos | ( | const visBase::EventInfo & | , |
bool | outerface, | ||
bool | ignoreocclusion, | ||
bool | inlcrlspace = true |
||
) | const |
|
inline |
const mVisTrans* visSurvey::Scene::getUTM2DisplayTransform | ( | ) | const |
ZAxisTransform* visSurvey::Scene::getZAxisTransform | ( | ) |
const ZAxisTransform* visSurvey::Scene::getZAxisTransform | ( | ) | const |
float visSurvey::Scene::getZScale | ( | ) | const |
Returns an anproximate figure how to scale Z relates to XY coordinates in this scene.
bool visSurvey::Scene::isAnnotGridShown | ( | ) | const |
bool visSurvey::Scene::isAnnotScaleShown | ( | ) | const |
bool visSurvey::Scene::isAnnotShown | ( | ) | const |
bool visSurvey::Scene::isAnnotTextShown | ( | ) | const |
|
virtual |
Reimplemented from visBase::DataObjectGroup.
|
protected |
|
protected |
|
protected |
void visSurvey::Scene::objectMoved | ( | CallBacker * | ) |
void visSurvey::Scene::passMouseCursor | ( | const MouseCursor & | ) |
|
virtual |
Reimplemented from visBase::DataObjectGroup.
|
virtual |
Reimplemented from visBase::DataObjectGroup.
void visSurvey::Scene::savePropertySettings | ( | ) |
|
protected |
void visSurvey::Scene::selectPosModeManipObj | ( | int | selid | ) |
void visSurvey::Scene::setAnnotColor | ( | const Color & | ) |
void visSurvey::Scene::setAnnotFont | ( | const FontData & | ) |
void visSurvey::Scene::setAnnotScale | ( | const TrcKeyZSampling & | ) |
void visSurvey::Scene::setAnnotText | ( | int | dim, |
const uiString & | |||
) |
void visSurvey::Scene::setEventHandled | ( | ) |
void visSurvey::Scene::setFixedZStretch | ( | float | ) |
Used to set the z-strecthing according to the user's preference. Is unitless - all entities (i.e. distance vs time) should be handled by zscale.
void visSurvey::Scene::setMarkerColor | ( | const Color & | ) |
void visSurvey::Scene::setMarkerPos | ( | const TrcKeyValue & | , |
int | sceneid | ||
) |
void visSurvey::Scene::setMarkerSize | ( | float | ) |
void visSurvey::Scene::setMoreObjectsToDoHint | ( | bool | yn | ) |
void visSurvey::Scene::setPolygonSelector | ( | visBase::PolygonSelection * | ) |
void visSurvey::Scene::setSceneColTab | ( | visBase::SceneColTab * | ) |
void visSurvey::Scene::setTempZStretch | ( | float | ) |
void visSurvey::Scene::setTrcKeyZSampling | ( | const TrcKeyZSampling & | ) |
|
protected |
void visSurvey::Scene::setZAxisTransform | ( | ZAxisTransform * | , |
TaskRunner * | |||
) |
void visSurvey::Scene::setZDomainInfo | ( | const ZDomain::Info & | ) |
void visSurvey::Scene::setZScale | ( | float | ) |
The zscale should compensate for different entities in xy and z respectively and remain constant through the life of the scene.
void visSurvey::Scene::showAnnot | ( | bool | ) |
void visSurvey::Scene::showAnnotGrid | ( | bool | ) |
void visSurvey::Scene::showAnnotScale | ( | bool | ) |
void visSurvey::Scene::showAnnotText | ( | bool | ) |
|
virtual |
Set directly after creation, othersize it won't have effect
Reimplemented from visBase::DataObjectGroup.
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
static |
|
protected |
|
protected |
|
protected |
|
virtual |
const char* visSurvey::Scene::zDomainID | ( | ) | const |
const ZDomain::Info& visSurvey::Scene::zDomainInfo | ( | ) | const |
const char* visSurvey::Scene::zDomainKey | ( | ) | const |
const char* visSurvey::Scene::zDomainUnitStr | ( | bool | withparens = false | ) | const |
int visSurvey::Scene::zDomainUserFactor | ( | ) | const |
uiString visSurvey::Scene::zDomainUserName | ( | ) | const |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2019