27 #include "../../../../geometry/GeometryFactory.h" 28 #include "../../common/Utils.h" 36 if((args.Length() < 2) ||
37 (args[0].IsEmpty()) ||
39 return ::v8::ThrowException(::v8::String::New(
"Missing parameter for TeGeometryFactory. The correct syntax is: var my_geom = TeGeometryFactory.make(geomtype, srid)"));
41 int geomType = args[0]->Int32Value();
42 int srid = args[1]->Int32Value();
51 return hs.Close(jsgeom);
58 ::v8::Handle<::v8::ObjectTemplate> gfactory = ::v8::ObjectTemplate::New();
60 gfactory->Set(::v8::String::NewSymbol(
"make"), ::v8::FunctionTemplate::New(
GeometryFactory_Make));
62 global->Set(::v8::String::New(
"TeGeometryFactory"), gfactory->NewInstance());
static Geometry * make(GeomType t, int srid)
It returns an instance according to the informed geometry type.
::v8::Local<::v8::Object > Geometry_Make(te::gm::Geometry *g, const bool isOwner)
Given a C++ geometry this function creates a new JavaScript geometry cast to the right geometry subty...
void RegisterGeometryFactory(::v8::Local<::v8::Object > &global)
It registers the GeometryFactory class.
::v8::Handle<::v8::Value > GeometryFactory_Make(const ::v8::Arguments &args)