OpendTect  6.3
vispolyline.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: Kristofer Tingdahl
8  Date: 4-11-2002
9 ________________________________________________________________________
10 
11 
12 -*/
13 
14 #include "visshape.h"
15 #include "position.h"
16 #include "draw.h"
17 
18 
19 namespace OD { class LineStyle; };
20 
21 
22 namespace osgGeo {
23  class PolyLineNode;
24 }
25 
26 namespace visBase
27 {
28 
29 class DrawStyle;
30 
34 {
35 public:
36  static PolyLine* create()
38 
39  int size() const;
40  void addPoint( const Coord3& pos );
41  Coord3 getPoint( int ) const;
42  void setPoint( int, const Coord3& );
43  void removePoint( int );
44  void removeAllPoints();
45  void setLineStyle(const OD::LineStyle&);
46  const OD::LineStyle& lineStyle() const;
47 
48  void setDisplayTransformation( const mVisTrans* );
53 protected:
54  ~PolyLine();
55  DrawStyle* drawstyle_;
56  Geometry::RangePrimitiveSet* coordrange_;
57 };
58 
59 
60 
61 mExpClass(visBase) PolyLine3D : public VertexShape
62 {
63 public:
64  static PolyLine3D* create()
66 
67  void setLineStyle(const OD::LineStyle&);
68  const OD::LineStyle& lineStyle() const;
69  void setResolution(int);
70  int getResolution() const;
71  void addPrimitiveSetToScene(osg::PrimitiveSet*);
72  void removePrimitiveSetFromScene(const osg::PrimitiveSet*);
73  void touchPrimitiveSet(int);
74  void setCoordinates(Coordinates*);
75  void setDisplayTransformation( const mVisTrans* );
80  void setPixelDensity(float);
81  float getPixelDensity() const { return pixeldensity_;}
82 
83 protected:
84  void updateRadius();
85  osgGeo::PolyLineNode* osgpoly_;
88 };
89 
90 
91 }; // Namespace
#define mExpClass(module)
Definition: commondefs.h:157
static PolyLine3D * create()
Definition: vispolyline.h:64
OD::LineStyle lst_
Definition: vispolyline.h:86
Definition: draw.h:119
A collection of geoscientific extensions to OpenSceneGraph.
Definition: visannot.h:35
Definition: visdrawstyle.h:30
FixedString LineStyle()
Definition: keystrs.h:80
osgGeo::PolyLineNode * osgpoly_
Definition: vispolyline.h:85
3D point or vector
Definition: commontypes.h:57
#define mVisTrans
Definition: visdata.h:25
Definition: vispolyline.h:33
static PolyLine * create()
Definition: vispolyline.h:36
A set of coordinates. The coordinates will be transformed by the transformation before given to Coin...
Definition: viscoord.h:45
Definition: visannot.h:40
float pixeldensity_
Definition: vispolyline.h:87
Open Scene Graph.
Definition: visannot.h:26
OpendTect.
Definition: commontypes.h:25
#define mCreateDataObj(clss)
Definition: visdata.h:210
Definition: visshape.h:73
Definition: vispolyline.h:61
Definition: arraytesselator.h:19

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