void Simulator::init(Project &prj, BodyFactory &factory){ initWorld(prj, factory, *this, pairs); initRTS(prj, receivers); std::cout << "number of receivers:" << receivers.size() << std::endl; m_totalTime = prj.totalTime(); m_logTimeStep = prj.logTimeStep(); m_kinematicsOnly = prj.kinematicsOnly(); OpenHRP::CollisionSequence& collisions = state.collisions; collisions.length(pairs.size()); for(size_t colIndex=0; colIndex < pairs.size(); ++colIndex){ hrp::ColdetLinkPairPtr linkPair = pairs[colIndex]; hrp::Link *link0 = linkPair->link(0); hrp::Link *link1 = linkPair->link(1); OpenHRP::LinkPair& pair = collisions[colIndex].pair; pair.charName1 = CORBA::string_dup(link0->body->name().c_str()); pair.charName2 = CORBA::string_dup(link1->body->name().c_str()); pair.linkName1 = CORBA::string_dup(link0->name.c_str()); pair.linkName2 = CORBA::string_dup(link1->name.c_str()); } m_nextLogTime = 0; appendLog(); }
int main(int argc, char *argv[]) { RegionTable *rt; int i; initRTS(2,3,4,5); rt = getRTS(0,0,0,0); i = getIndex(0,0,0,0); printf("getRTS(0,0,0,0) = %d (%p)\n", i, rt); rt = getRTS(0,0,0,1); printf("getRTS(0,0,0,1) = %d (%p)\n", i, rt); rt = getRTS(0,0,0,2); printf("getRTS(0,0,0,2) = %d (%p)\n", i, rt); rt = getRTS(0,0,0,3); printf("getRTS(0,0,0,3) = %d (%p)\n", i, rt); rt = getRTS(0,0,0,4); printf("getRTS(0,0,0,4) = %d (%p)\n", i, rt); rt = getRTS(0,0,1,0); printf("getRTS(0,0,1,0) = %d (%p)\n", i, rt); rt = getRTS(0,0,1,1); printf("getRTS(0,0,1,1) = %d (%p)\n", i, rt); rt = getRTS(1,2,3,4); printf("getRTS(1,2,3,4) = %d (%p)\n", i, rt); }