VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgNodesExtractor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
13 
14 #include <string>
15 #include <osg/Vec3>
16 #include <osg/Quat>
17 #include <osg/Node>
18 
19 #include <vector>
20 #include <map>
21 #include <matrix/vlVector.h>
22 #include <vrvCore/DtTreeRecord.h>
23 
24 
25 namespace makVrv
26 {
27  class DtOsgTerrainPatchObject;
28 
30  {
31  public:
32  //DtOsgExtractedNodesLogic(DtOsgTerrainPatchObject& patch);
33  DtOsgNodesExtractor(osg::Node& patch);
35 
36  void extractNodes( const std::string& rule, bool isRegEx, std::vector<std::string>& matches);
37 
38  void extractTreeNodes(const std::string& rule, bool isRegEx, const std::string& modelDefinition, DtVectorTreeRecords& treeRecords);
39 
40  osg::Node* findNode(const std::string& rule, unsigned int index);
41  osg::Node* findNode(const std::string& rule, unsigned int index, osg::Vec3& location, osg::Quat& orientation);
42 
43  private:
44 
46  {
47  osg::Vec3 location;
48  osg::Vec3 scale;
49  osg::Quat orientation;
50  osg::Quat orientationScale;
51  osg::ref_ptr<osg::Node> node;
52  osg::Node::ParentList parents;
53  std::string nodetype;
54  };
55 
56  typedef std::vector<ExtractedNode> NodeList;
57  typedef std::map<std::string, NodeList > ExtractedNodeListMap;
59 
60  osg::Node& myNode;
61 
62 
63  };
64 }

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)