| OpendTect 8.0

Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | List of all members
visBase::GeomIndexedShape Class Reference
visBase

`#include <visgeomindexedshape.h>`

Inheritance diagram for visBase::GeomIndexedShape:
[legend]

## Classes
class | ColorHandler

## Public Types
enum | GeomShapeType { Triangle , PolyLine , PolyLine3D }
Public Types inherited from ObjectWithName
typedef OD::String | name_type

## Public Member Functions
void | addNodeState (visBase::NodeState *)
void | enableColTab (bool)
bool | getAttribPositions (DataPointSet &, visBase::Transformation *extratrans, TaskRunner *) const
const char * | getClassName () const override
const ColTab::MapperSetup * | getDataMapper () const
const ColTab::Sequence * | getDataSequence () const
const visBase::Transformation * | getDisplayTransformation () const override
VertexShape * | getVertexShape ()
const VertexShape * | getVertexShape () const
bool | isColTabEnabled () const
void | setAttribData (const DataPointSet &, TaskRunner *)
void | setColorBindType (VertexShape::BindType)
void | setDataMapper (const ColTab::MapperSetup &, TaskRunner *)
void | setDataSequence (const ColTab::Sequence &)
void | setDisplayTransformation (const visBase::Transformation *) override
void | setGeometryShapeType (GeomShapeType shapetype, Geometry::PrimitiveSet::PrimitiveType pstype=Geometry::PrimitiveSet::TriangleStrip)
void | setLineStyle (const OD::LineStyle &)
void | setMaterial (Material *) override
void | setNormalBindType (VertexShape::BindType)
void | setPixelDensity (float) override
void | setRenderMode (RenderMode)
void | setSurface (Geometry::IndexedShape *, TaskRunner *=nullptr)
void | setTextureChannels (TextureChannels *)
bool | touch (bool forall, bool createnew=true, TaskRunner *=nullptr)
void | updateMaterialFrom (const Material *)
void | useOsgNormal (bool)
Public Member Functions inherited from visBase::VisualObjectImpl
virtual void | fillPar (IOPar &) const
const Material * | getMaterial () const
Material * | getMaterial () override
bool | isRightHandSystem () const override
NotifierAccess * | materialChange ()
void | readLock ()
void | readUnLock ()
void | setLockable ()
void | setMaterial (Material *) override
void | setRightHandSystem (bool yn) override
bool | tryReadLock ()
bool | tryWriteLock ()
virtual bool | usePar (const IOPar &)
void | writeLock ()
void | writeUnLock ()
Public Member Functions inherited from visBase::VisualObject
NotifierAccess * | deSelection () override
virtual bool | getBoundingBox (Coord3 &min, Coord3 &max) const
NotifierAccess * | rightClicked () override
const EventInfo * | rightClickedEventInfo () const
const TypeSet< VisID > * | rightClickedPath () const override
bool | selectable () const override
NotifierAccess * | selection () override
virtual void | setSceneEventCatcher (EventCatcher *)
void | setSelectable (bool yn)
Public Member Functions inherited from visBase::DataObject
template<class T >
T * | addNodeState (T *ns)
void | deSelect () const
void | enableTraversal (unsigned int mask, bool yn=true)
virtual const char * | errMsg () const
SoNode * | getInventorNode ()
const SoNode * | getInventorNode () const
BufferString | getName () const override
NodeState * | getNodeState (int idx)
virtual float | getPixelDensity () const
VisID | id () const
virtual bool | isOK () const
virtual bool | isOn () const
bool | isPickable (bool actively=true) const
virtual bool | isSelected () const
bool | isTraversalEnabled (unsigned int mask) const
const OD::String & | name () const override
osg::Node * | osgNode (bool skipswitch=false)
const osg::Node * | osgNode (bool skipswitch=false) const
NodeState * | removeNodeState (NodeState *)
virtual bool | rightClickable () const
void | select () const
bool | serialize (const char *filename, bool binary=false)
void | setID (const VisID &)
void | setName (const char *) override
void | setName (const uiString &uistr)
void | setPickable (bool actively, bool passively=true)
void | setUiName (const uiString &)
virtual bool | turnOn (bool yn)
uiString | uiName () const
void | updateSel () const
Public Member Functions inherited from SharedObject
| SharedObject (const char *nm=nullptr)
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 ()
bool | getNameFromPar (const IOPar &)
const name_type & | name () const override
NamedObject & | operator= (const NamedObject &)
bool | operator== (const NamedObject &oth) const
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
Public Member Functions inherited from RefCount::Referenced
void | addObserver (WeakPtrBase *obs)
| Not for normal use. May become private.
int | nrRefs () const
| Only for expert use.
void | ref () const
bool | refIfReffed () const
| Don't use in production, for debugging.
void | removeObserver (WeakPtrBase *obs)
| Not for normal use. May become private.
bool | tryRef () const
| Not for normal use. May become private.
void | unRef () const
void | unRefNoDelete () const

## Static Public Member Functions
static RefMan< GeomIndexedShape > | create ()
static const char * | getStaticClassName ()
static void | initClass ()
static const char * | sFactoryKeyword ()
Static Public Member Functions inherited from visBase::VisualObjectImpl
static const char * | sKeyIsOn ()
static const char * | sKeyMaterial ()
static const char * | sKeyMaterialID ()
Static Public Member Functions inherited from visBase::DataObject
static osgViewer::CompositeViewer * | getCommonViewer ()
static float | getDefaultPixelDensity ()
static VisID | getID (const osg::Node *)
static bool | isVisualizationThread ()
static void | requestSingleRedraw ()
static void | setCommonViewer (osgViewer::CompositeViewer *)
static void | setDefaultPixelDensity (float)
static void | setVisualizationThread (const void *)
| Call only once from initialization.
Static Public Member Functions inherited from SharedObject
static Notifier< SharedObject > & | instanceCreated ()
Static Public Member Functions inherited from CallBacker
static void | createReceiverForCurrentThread ()
static void | removeReceiverForCurrentThread ()
Static Public Member Functions inherited from RefCount::Referenced
static bool | isSane (const Referenced *)

## Protected Member Functions
| ~GeomIndexedShape ()
void | mapAttributeToColorTableMaterial ()
void | matChangeCB (CallBacker *)
void | reClip ()
void | updateGeometryMaterial ()
Protected Member Functions inherited from visBase::VisualObjectImpl
| VisualObjectImpl (bool selectable)
virtual | ~VisualObjectImpl ()
int | addChild (osg::Node *)
int | childIndex (const osg::Node *) const
void | insertChild (int pos, osg::Node *)
virtual void | materialChangeCB (CallBacker *)
void | removeChild (osg::Node *)
void | setGroupNode (DataObject *)
virtual void | setGroupNode (osg::Group *)
| Must be called during construction.
Protected Member Functions inherited from visBase::VisualObject
| VisualObject (bool selectable=false)
| ~VisualObject ()
void | triggerDeSel () override
void | triggerRightClick (const EventInfo *) override
void | triggerSel () override
Protected Member Functions inherited from visBase::DataObject
| DataObject ()
| ~DataObject ()
void | doAddNodeState (NodeState *)
virtual osg::StateSet * | getStateSet ()
template<class T >
T * | setOsgNode (T *t)
| Must be called during construction.
void | updateNodemask ()
Protected Member Functions inherited from SharedObject
| ~SharedObject ()
Protected Member Functions inherited from NamedCallBacker
void | sendDelNotif () const
Protected Member Functions inherited from RefCount::Referenced
| Referenced ()
| Referenced (const Referenced &)
virtual | ~Referenced ()
Referenced & | operator= (const Referenced &)

## Static Protected Member Functions
static const char * | sKeyCoordIndex ()

## Protected Attributes
ColorHandler * | colorhandler_
bool | colortableenabled_ = false
RefMan< Material > | coltabmaterial_
GeomShapeType | geomshapetype_ =GeomShapeType::Triangle
OD::LineStyle | linestyle_
int | renderside_
ColTab::Sequence | sequence_
Geometry::IndexedShape * | shape_ = nullptr
RefMan< Material > | singlematerial_
bool | useosgnormal_ = false
RefMan< VertexShape > | vtexshape_
Protected Attributes inherited from visBase::VisualObjectImpl
RefMan< Material > | material_
bool | righthandsystem_ = true
Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > | delalreadytriggered_
Notifier< NamedCallBacker > | delnotif_
Protected Attributes inherited from NamedObject
BufferString | name_

## Private Member Functions
| GeomIndexedShape ()
| mOD_DisableCopy (GeomIndexedShape)

## Static Private Member Functions
static visBase::DataObject * | createInternal ()

## Detailed Description

Visualization for Geometry::IndexedShape.

<>

## Member Enumeration Documentation

## ◆ GeomShapeType

enum visBase::GeomIndexedShape::GeomShapeType

Enumerator
Triangle |
PolyLine |
PolyLine3D |

## Constructor & Destructor Documentation

## ◆ GeomIndexedShape()

visBase::GeomIndexedShape::GeomIndexedShape | ( |  | ) |
| private

## ◆ ~GeomIndexedShape()

visBase::GeomIndexedShape::~GeomIndexedShape | ( |  | ) |
| protected

## Member Function Documentation

## ◆ addNodeState()

void visBase::GeomIndexedShape::addNodeState | ( | visBase::NodeState * |  | ) |

## ◆ create()

static RefMan< GeomIndexedShape > visBase::GeomIndexedShape::create | ( |  | ) |
| static

## ◆ createInternal()

static visBase::DataObject * visBase::GeomIndexedShape::createInternal | ( |  | ) |
| inline static private

## ◆ enableColTab()

void visBase::GeomIndexedShape::enableColTab | ( | bool |  | ) |

## ◆ getAttribPositions()

bool visBase::GeomIndexedShape::getAttribPositions | ( | DataPointSet & | ,
|  | visBase::Transformation * | extratrans,
|  | TaskRunner * | ) const

## ◆ getClassName()

const char * visBase::GeomIndexedShape::getClassName | ( |  | ) | const
| override virtual

Reimplemented from visBase::DataObject.

## ◆ getDataMapper()

const ColTab::MapperSetup * visBase::GeomIndexedShape::getDataMapper | ( |  | ) | const

## ◆ getDataSequence()

const ColTab::Sequence * visBase::GeomIndexedShape::getDataSequence | ( |  | ) | const

## ◆ getDisplayTransformation()

const visBase::Transformation * visBase::GeomIndexedShape::getDisplayTransformation | ( |  | ) | const
| override virtual

All positions going from the outside world to the vis should be transformed with this transform. This enables us to have different coord-systems outside OI, e.g. we can use UTM coords outside the vis without loosing precision in the vis.

Reimplemented from visBase::DataObject.

## ◆ getStaticClassName()

static const char * visBase::GeomIndexedShape::getStaticClassName | ( |  | ) |
| static

## ◆ getVertexShape() [1/2]

VertexShape * visBase::GeomIndexedShape::getVertexShape | ( |  | ) |

## ◆ getVertexShape() [2/2]

const VertexShape * visBase::GeomIndexedShape::getVertexShape | ( |  | ) | const

## ◆ initClass()

static void visBase::GeomIndexedShape::initClass | ( |  | ) |
| static

## ◆ isColTabEnabled()

bool visBase::GeomIndexedShape::isColTabEnabled | ( |  | ) | const

## ◆ mapAttributeToColorTableMaterial()

void visBase::GeomIndexedShape::mapAttributeToColorTableMaterial | ( |  | ) |
| protected

## ◆ matChangeCB()

void visBase::GeomIndexedShape::matChangeCB | ( | CallBacker * |  | ) |
| protected

## ◆ mOD_DisableCopy()

visBase::GeomIndexedShape::mOD_DisableCopy | ( | GeomIndexedShape |  | ) |
| private

## ◆ reClip()

void visBase::GeomIndexedShape::reClip | ( |  | ) |
| protected

## ◆ setAttribData()

void visBase::GeomIndexedShape::setAttribData | ( | const DataPointSet & | ,
|  | TaskRunner * | )

## ◆ setColorBindType()

void visBase::GeomIndexedShape::setColorBindType | ( | VertexShape::BindType |  | ) |

## ◆ setDataMapper()

void visBase::GeomIndexedShape::setDataMapper | ( | const ColTab::MapperSetup & | ,
|  | TaskRunner * | )

## ◆ setDataSequence()

void visBase::GeomIndexedShape::setDataSequence | ( | const ColTab::Sequence & |  | ) |

## ◆ setDisplayTransformation()

void visBase::GeomIndexedShape::setDisplayTransformation | ( | const visBase::Transformation * |  | ) |
| override virtual

All positions going from the outside world to the vis should be transformed with this transform. This enables us to have different coord-systems outside OI, e.g. we can use UTM coords outside the vis without loosing precision in the vis.

Reimplemented from visBase::DataObject.

## ◆ setGeometryShapeType()

void visBase::GeomIndexedShape::setGeometryShapeType | ( | GeomShapeType | shapetype,
|  | Geometry::PrimitiveSet::PrimitiveType | pstype = Geometry::PrimitiveSet::TriangleStrip )

remove previous geometry shape and create a new geometry shape based on shape type.

## ◆ setLineStyle()

void visBase::GeomIndexedShape::setLineStyle | ( | const OD::LineStyle & |  | ) |

for polylin3d, only the radius is used.

## ◆ setMaterial()

void visBase::GeomIndexedShape::setMaterial | ( | Material * |  | ) |
| override virtual

Implements visBase::VisualObject.

## ◆ setNormalBindType()

void visBase::GeomIndexedShape::setNormalBindType | ( | VertexShape::BindType |  | ) |

## ◆ setPixelDensity()

void visBase::GeomIndexedShape::setPixelDensity | ( | float |  | ) |
| override virtual

Reimplemented from visBase::DataObject.

## ◆ setRenderMode()

void visBase::GeomIndexedShape::setRenderMode | ( | RenderMode |  | ) |

## ◆ setSurface()

void visBase::GeomIndexedShape::setSurface | ( | Geometry::IndexedShape * | ,
|  | TaskRunner * | = nullptr )

Does not become mine, should remain in memory

## ◆ setTextureChannels()

void visBase::GeomIndexedShape::setTextureChannels | ( | TextureChannels * |  | ) |

## ◆ sFactoryKeyword()

static const char * visBase::GeomIndexedShape::sFactoryKeyword | ( |  | ) |
| static

## ◆ sKeyCoordIndex()

static const char * visBase::GeomIndexedShape::sKeyCoordIndex | ( |  | ) |
| inline static protected

## ◆ touch()

bool visBase::GeomIndexedShape::touch | ( | bool | forall,
|  | bool | createnew = true,
|  | TaskRunner * | = nullptr )

## ◆ updateGeometryMaterial()

void visBase::GeomIndexedShape::updateGeometryMaterial | ( |  | ) |
| protected

## ◆ updateMaterialFrom()

void visBase::GeomIndexedShape::updateMaterialFrom | ( | const Material * |  | ) |

## ◆ useOsgNormal()

void visBase::GeomIndexedShape::useOsgNormal | ( | bool |  | ) |

## Member Data Documentation

## ◆ colorhandler_

ColorHandler* visBase::GeomIndexedShape::colorhandler_
| protected

## ◆ colortableenabled_

bool visBase::GeomIndexedShape::colortableenabled_ = false
| protected

## ◆ coltabmaterial_

RefMan<Material> visBase::GeomIndexedShape::coltabmaterial_
| protected

## ◆ geomshapetype_

GeomShapeType visBase::GeomIndexedShape::geomshapetype_ =GeomShapeType::Triangle
| protected

## ◆ linestyle_

OD::LineStyle visBase::GeomIndexedShape::linestyle_
| protected

## ◆ renderside_

int visBase::GeomIndexedShape::renderside_
| protected

0 = visisble from both sides. 1 = visible from positive side -1 = visible from negative side.

## ◆ sequence_

ColTab::Sequence visBase::GeomIndexedShape::sequence_
| protected

## ◆ shape_

Geometry::IndexedShape* visBase::GeomIndexedShape::shape_ = nullptr
| protected

## ◆ singlematerial_

RefMan<Material> visBase::GeomIndexedShape::singlematerial_
| protected

## ◆ useosgnormal_

bool visBase::GeomIndexedShape::useosgnormal_ = false
| protected

## ◆ vtexshape_

RefMan<VertexShape> visBase::GeomIndexedShape::vtexshape_
| protected

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