v8::Handle<v8::Value> JSFilterContext::FromMapCallback(const v8::Arguments& args) { FilterContext* context = V8Util::UnwrapObject<FilterContext>(args.Holder()); if (context && args.Length() == 1 && args[0]->IsObject()) { v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) ); if (V8Util::CheckObjectType(obj, JSVec3d::GetObjectType())) // Vec3d { osg::Vec3d* map = V8Util::UnwrapObject<osg::Vec3d>(obj); osg::Vec3d* local = new osg::Vec3d(context->fromMap(*map)); return JSVec3d::WrapVec3d(local, true); } } return v8::Undefined(); }