NTRT Simulator  Version: Master
 All Classes Namespaces Files Functions Variables Typedefs Friends Pages
AppNestedStructureDepthTest.cpp
1 /*
2  * Copyright © 2012, United States Government, as represented by the
3  * Administrator of the National Aeronautics and Space Administration.
4  * All rights reserved.
5  *
6  * The NASA Tensegrity Robotics Toolkit (NTRT) v1 platform is licensed
7  * under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * http://www.apache.org/licenses/LICENSE-2.0.
11  *
12  * Unless required by applicable law or agreed to in writing,
13  * software distributed under the License is distributed on an
14  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
15  * either express or implied. See the License for the specific language
16  * governing permissions and limitations under the License.
17 */
18 
27 // This application
28 
29 // This library
30 #include "tgcreator/tgNode.h"
31 #include "tgcreator/tgNodes.h"
32 #include "tgcreator/tgPair.h"
33 #include "tgcreator/tgStructure.h"
34 // The C++ Standard Library
35 #include <iostream>
36 
43 int main(int argc, char** argv)
44 {
45  std::cout << "AppNestedStructureTest" << std::endl;
46 
47  tgStructure* sub0 = new tgStructure("sub0");
48  // sub0->setName("sub0");
49 
50  tgStructure* sub1_1 = new tgStructure("sub1_1");
51  //sub1_1->setName("s1_1");
52 
53  sub1_1->addNode(1,2,3,"one two three");
54  sub1_1->addNode(4,5,6, "four five six");
55  sub1_1->addPair(0,1,"one two");
56 
57  tgStructure* sub1_2 = new tgStructure(*sub1_1);
58  sub1_2->setTags(tgTags("sub1_2"));
59  sub1_2->move(btVector3(4,4,4));
60  //sub1_2->setName("s1_2");
61 
62  sub0->addChild(sub1_1);
63  sub0->addChild(sub1_2);
64 
65  tgStructure* root = new tgStructure();
66  //root->setName("root");
67  root->addChild(sub0);
68  root->setTags(tgTags("root"));
69 
70  tgStructure* sub1 = new tgStructure(*sub0);
71  //sub1->setName("sub1");
72  sub1->move(btVector3(10,10,10)); // PROBLEM: This moves things in sub0...
73  root->addChild(sub1);
74 
75  std::cout << *root << std::endl;
76 
77 }
int main(int argc, char **argv)
void addChild(tgStructure *child)
Definition of class tgPair.
void addPair(int fromNodeIdx, int toNodeIdx, std::string tags="")
Definition: tgStructure.cpp:80
Definition of class tgNodes.
Definition of class tgNode.
Definition of class tgStructure.
Definition: tgTags.h:44
void addNode(double x, double y, double z, std::string tags="")
Definition: tgStructure.cpp:70