Revision: 7728
http://playerstage.svn.sourceforge.net/playerstage/?rev=7728&view=rev
Author: asadat
Date: 2009-05-27 19:39:57 +0000 (Wed, 27 May 2009)
Log Message:
-----------
a method was added to get the extent of the world and the models
Modified Paths:
--------------
code/stage/trunk/webstage/webstage.cc
Modified: code/stage/trunk/webstage/webstage.cc
===================================================================
--- code/stage/trunk/webstage/webstage.cc 2009-05-27 15:10:05 UTC (rev
7727)
+++ code/stage/trunk/webstage/webstage.cc 2009-05-27 19:39:57 UTC (rev
7728)
@@ -257,7 +257,9 @@
}
virtual bool GetRangerData(const std::string& name,
websim::Time& t,
-
std::vector<double>& ranges,
std::string& response){
+
std::vector<websim::Pose>& p,
+
std::vector<double>& ranges,
+
std::string& response){
t = GetTime();
Model* mod = world->GetModel( name.c_str() );
@@ -271,43 +273,7 @@
for(unsigned int
i=0;i<count;i++)
ranges.push_back(ranger->samples[i]);
//std::copy(ranger->samples,ranger->samples+ranger->sensor_count,ranges.begin());
-
- }else{
-
- printf( "Warning: attempt to get ranger data
for unrecognized ranger model of model \"%s\"\n",
- name.c_str() );
- return false;
-
-
- }
-
- }
- else{
- printf( "Warning: attempt to get ranger data for unrecognized
model \"%s\"\n",
- name.c_str() );
- return false;
- }
-
- return true;
-
-}
-
- virtual bool GetRangerCfgData(const std::string& name,
-
websim::Time& t,
-
std::vector<websim::Pose>& p,
-
std::string& response)
- {
-
-
- t = GetTime();
-
- Model* mod = world->GetModel( name.c_str() );
- if( mod )
- {
- ModelRanger* ranger =
(ModelRanger*)mod->GetModel("ranger:0");
-
- if(ranger){
- uint32_t count = ranger->sensor_count;
+
if(ranger->sensors)
for(unsigned int
i=0;i<count;i++){
websim::Pose pos;
@@ -322,7 +288,7 @@
}else{
- printf( "Warning: attempt to get ranger Cfg
data for unrecognized ranger model of model \"%s\"\n",
+ printf( "Warning: attempt to get ranger data
for unrecognized ranger model of model \"%s\"\n",
name.c_str() );
return false;
@@ -331,16 +297,49 @@
}
else{
- printf( "Warning: attempt to get ranger Cfg data for
unrecognized model \"%s\"\n",
+ printf( "Warning: attempt to get ranger data for unrecognized
model \"%s\"\n",
name.c_str() );
return false;
}
- return true;
+ return true;
+}
+ virtual bool GetModelExtent(const std::string& name,
+ double&
x,
+ double&
y,
+ double&
z,
+
std::string& response)
+ {
+ if(name == "sim"){
+
+ stg_bounds3d_t ext = world->GetExtent();
+
+ x = ext.x.max - ext.x.min;
+ y = ext.y.max - ext.y.min;
+ z = ext.z.max - ext.z.min;
- }
+ }
+ else
+ {
+ Model* mod = world->GetModel(name.c_str());
+ if(mod){
+ Geom ext = mod->GetGeom();
+
+ x = ext.size.x;
+ y = ext.size.y;
+ z = ext.size.z;
+ }
+ else
+ {
+ printf("Warning: attemp ti get the extent of unrecognized
model \"%s\"\n", name.c_str());
+ return false;
+ }
+ }
+ return true;
+ }
+
virtual websim::Time GetTime()
{
stg_usec_t stgtime = world->SimTimeNow();
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, &
iPhoneDevCamp as they present alongside digital heavyweights like Barbarian
Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit