NTRT Simulator  Version: Master
 All Classes Namespaces Files Functions Variables Typedefs Friends Pages
AppTgCreatorTest.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 << "AppTgNamesTest" << std::endl;
46  tgNode node = tgNode(1,2,3,"these are tags", "node1");
47  std::cout << "node print test: " << node << std::endl;
48 
49  tgNodes nodes;
50 
51  nodes.addNode(node);
52 
53  tgNodes nodes2 = tgNodes(nodes);
54  nodes2.move(btVector3(2,2,2));
55 
56  std::cout << "nodes: " << nodes << std::endl;
57  std::cout << "nodes2: " << nodes2 << std::endl;
58 
59  tgStructure* s = new tgStructure();
60  s->addNode(1,2,3,"");
61  s->addNode(node);
62 
63  s->setName("test structure 1");
64 
65  tgStructure* p = new tgStructure();
66  p->addChild(s);
67  s->setName("after change");
68  p->addChild(s);
69 
70  //tgStructure s = tgStructure();
71  //s.addNode(2,3,4,"more tags"); // This works, but s.addNode(node) does not (malloc error)
72  //s.addNode(node);
73  // s.addNode(tgNode(1,2,3,"these are tags", "node1"));
74 
75  std::cout << "structure print test: " << s << std::endl;
76  std::cout << "node access by name test: " << nodes["node1"] << std::endl;
77 
78  std::cout << std::endl;
79  std::cout << "Structure copy test:" << std::endl;
80  std::cout << *p << std::endl;
81 }
int main(int argc, char **argv)
void addChild(tgStructure *child)
Definition of class tgPair.
Definition of class tgNodes.
Definition of class tgNode.
Definition: tgNode.h:45
Definition of class tgStructure.
void move(const btVector3 &offset)
Definition: tgNodes.h:175
int addNode(const btVector3 &node)
Definition: tgNodes.h:129
void addNode(double x, double y, double z, std::string tags="")
Definition: tgStructure.cpp:70