Esempio n. 1
0
/*
 * Class:     mapnik_MapDefinition
 * Method:    alloc
 * Signature: ()J
 */
JNIEXPORT jlong JNICALL Java_mapnik_MapDefinition_alloc__
  (JNIEnv *env, jclass c)
{
	PREAMBLE;
	return FROM_POINTER(new mapnik::Map());
	TRAILER(0);
}
Esempio n. 2
0
/*
 * Class:     mapnik_FeatureTypeStyle
 * Method:    alloc
 * Signature: ()J
 */
JNIEXPORT jlong JNICALL Java_mapnik_FeatureTypeStyle_alloc
  (JNIEnv *env, jclass c)
{
	PREAMBLE;
	return FROM_POINTER(new mapnik::feature_type_style());
	TRAILER(0);
}
Esempio n. 3
0
/*
 * Class:     mapnik_MapDefinition
 * Method:    alloc
 * Signature: (IILjava/lang/String;)J
 */
JNIEXPORT jlong JNICALL Java_mapnik_MapDefinition_alloc__IILjava_lang_String_2
  (JNIEnv *env, jclass c, jint width, jint height, jstring srsj)
{
	PREAMBLE;
	refjavastring srs(env, srsj);

	return FROM_POINTER(new mapnik::Map(width, height, srs.stringz));
	TRAILER(0);
}
/* Creates a new quadric. */
JNIEXPORT jlong JNICALL Java_OpenGL_GLUQuadric_newQuadric
(JNIEnv *env, jobject obj)
{
    GLUquadric *newQuadric = gluNewQuadric();

    if (NULL != newQuadric) {
        gluQuadricCallback(newQuadric, GLU_ERROR, error);
    }
    return FROM_POINTER(newQuadric);
}
Esempio n. 5
0
/*
 * Class:     mapnik_Layer
 * Method:    alloc
 * Signature: (Ljava/lang/String;Ljava/lang/String;)J
 */
JNIEXPORT jlong JNICALL Java_mapnik_Layer_alloc
  (JNIEnv *env, jclass c, jstring namej, jstring srsj)
{
	ASSERT_INITIALIZED;

	refjavastring name(env, namej);
	refjavastring srs(env, srsj);

	mapnik::layer* layer=new mapnik::layer(name.stringz, srs.stringz);
	return FROM_POINTER(layer);
}
Esempio n. 6
0
/*
 * Class:     mapnik_Layer
 * Method:    alloc
 * Signature: (Ljava/lang/String;Ljava/lang/String;)J
 */
JNIEXPORT jlong JNICALL Java_mapnik_Layer_alloc
  (JNIEnv *env, jclass c, jstring namej, jstring srsj)
{
	PREAMBLE;
	refjavastring name(env, namej);
	refjavastring srs(env, srsj);

	mapnik::layer* layer=new mapnik::layer(name.stringz, srs.stringz);
	return FROM_POINTER(layer);
	TRAILER(0);
}
Esempio n. 7
0
/*
 * Class:     mapnik_MapDefinition
 * Method:    copy
 * Signature: (J)J
 */
JNIEXPORT jlong JNICALL Java_mapnik_MapDefinition_copy
  (JNIEnv *env, jclass c, jlong otherPtr)
{
	if (!otherPtr) return 0;
	PREAMBLE;

	mapnik::Map* other=static_cast<mapnik::Map*>(TO_POINTER(otherPtr));
	mapnik::Map* m=new mapnik::Map(*other);

	return FROM_POINTER(m);
	TRAILER(0);
}
Esempio n. 8
0
/*
 * Class:     mapnik_Layer
 * Method:    getDatasource
 * Signature: ()Lmapnik/Datasource;
 */
JNIEXPORT jobject JNICALL Java_mapnik_Layer_getDatasource
  (JNIEnv *env, jobject layerobj)
{
	mapnik::layer* layer=LOAD_LAYER_POINTER(layerobj);
	mapnik::datasource_ptr ds=layer->datasource();
	if (!ds) return 0;

	mapnik::datasource_ptr* dspinned=new mapnik::datasource_ptr(ds);
	jobject ret=env->AllocObject(CLASS_DATASOURCE.java_class);
	env->SetLongField(ret, CLASS_DATASOURCE.ptr_field, FROM_POINTER(dspinned));

	return ret;
}
Esempio n. 9
0
/*
 * Class:     mapnik_Layer
 * Method:    getDatasource
 * Signature: ()Lmapnik/Datasource;
 */
JNIEXPORT jobject JNICALL Java_mapnik_Layer_getDatasource
  (JNIEnv *env, jobject layerobj)
{
	PREAMBLE;
	mapnik::layer* layer=LOAD_LAYER_POINTER(layerobj);
	mapnik::datasource_ptr ds=layer->datasource();
	if (!ds) return 0;

	mapnik::datasource_ptr* dspinned=new mapnik::datasource_ptr(ds);
	jobject ret=env->NewObject(CLASS_DATASOURCE, CTOR_NATIVEOBJECT);
	env->SetLongField(ret, FIELD_PTR, FROM_POINTER(dspinned));

	return ret;
	TRAILER(0);
}
Esempio n. 10
0
/*
 * Class:     mapnik_Image
 * Method:    alloc
 * Signature: (Lmapnik/Image;)J
 */
JNIEXPORT jlong JNICALL Java_mapnik_Image_alloc__Lmapnik_Image_2
  (JNIEnv *env, jclass c, jobject iobjother)
{
	PREAMBLE;
	if (!iobjother) {
		throw_runtime_exception(env, "Image cannot be null in call to constructor");
		return 0;
	}
	mapnik::image_32* other=LOAD_IMAGE_POINTER(iobjother);

	mapnik::image_32* im=new mapnik::image_32(*other);
	return FROM_POINTER(im);

	TRAILER(0);
}
Esempio n. 11
0
/*
 * Class:     mapnik_MapDefinition
 * Method:    getLayer
 * Signature: (I)Lmapnik/Layer;
 */
JNIEXPORT jobject JNICALL Java_mapnik_MapDefinition_getLayer
  (JNIEnv *env, jobject mapobject, jint index)
{
	PREAMBLE;
	mapnik::Map* map=LOAD_MAP_POINTER(mapobject);
	std::vector<mapnik::layer> &layers(map->layers());
	if (index<0 || ((unsigned)index)>layers.size()) {
		return 0;
	}

	mapnik::layer* layer_copy=new mapnik::layer(layers[index]);
	jobject layer=env->NewObject(CLASS_LAYER, CTOR_NATIVEOBJECT);
	env->SetLongField(layer, FIELD_PTR, FROM_POINTER(layer_copy));
	return layer;
	TRAILER(0);
}
/* Creates a new quadric. */
JNIEXPORT jlong JNICALL Java_OpenGL_GLUQuadric_newQuadric
  (JNIEnv *env, jobject obj)
{
	GLUquadric *newQuadric = gluNewQuadric();

	if (NULL != newQuadric) {
		/* The cast is required because the gluQuadricCallback
		 * lies about it's type; _GLUfuncptr is declared not to take
		 * any arguments, although gluQuadricCallback takes an
		 * integer.
		 */
		gluQuadricCallback(newQuadric, GLU_ERROR, 
				   (_GLUfuncptr)error);
	}
	return FROM_POINTER(newQuadric);
}
Esempio n. 13
0
/*
 * Class:     mapnik_MapDefinition
 * Method:    getStyle
 * Signature: (Ljava/lang/String;)Lmapnik/FeatureTypeStyle;
 */
JNIEXPORT jobject JNICALL Java_mapnik_MapDefinition_getStyle
  (JNIEnv *env, jobject mapobject, jstring namej)
{
	PREAMBLE;
	mapnik::Map* map=LOAD_MAP_POINTER(mapobject);
	refjavastring name(env, namej);
	std::string namestring(name.stringz);

	boost::optional<mapnik::feature_type_style const&> style=map->find_style(namestring);
	if (!style) return 0;

	mapnik::feature_type_style* stylepinned=new mapnik::feature_type_style(style.get());

	jobject ret=env->NewObject(CLASS_FEATURE_TYPE_STYLE, CTOR_NATIVEOBJECT);
	env->SetLongField(ret, FIELD_PTR, FROM_POINTER(stylepinned));
	return ret;
	TRAILER(0);
}
Esempio n. 14
0
/*
 * Class:     mapnik_FeatureSet
 * Method:    _next
 * Signature: ()Z
 */
JNIEXPORT jboolean JNICALL Java_mapnik_FeatureSet__1next
	(JNIEnv *env, jobject fsobj)
{
	PREAMBLE;
	mapnik::featureset_ptr* fsp=LOAD_FEATURESET_POINTER(fsobj);
	mapnik::feature_ptr* fp=LOAD_FEATURE_POINTER(fsobj);
	if (fp) delete fp;

	mapnik::feature_ptr next=(*fsp)->next();
	if (!next) {
		// End
		env->SetLongField(fsobj, FIELD_FEATURESET_FEATURE_PTR, 0);
		return false;
	} else {
		// Another
		fp=new mapnik::feature_ptr(next);
		env->SetLongField(fsobj, FIELD_FEATURESET_FEATURE_PTR, FROM_POINTER(fp));
		return true;
	}

	TRAILER(false);
}
Esempio n. 15
0
/*
 * Class:     mapnik_FeatureSet
 * Method:    _loadGeometries
 * Signature: ()[Lmapnik/Geometry;
 */
JNIEXPORT jobjectArray JNICALL Java_mapnik_FeatureSet__1loadGeometries
	(JNIEnv *env, jobject fsobj)
{
	PREAMBLE;
	mapnik::feature_ptr* fp=LOAD_FEATURE_POINTER(fsobj);
	if (!fp) {
		throw_runtime_exception(env, "No feature loaded");
		return 0;
	}

	unsigned count=(*fp)->num_geometries();
	jobjectArray ret=env->NewObjectArray(count, CLASS_GEOMETRY, (jobject)0);
	for (unsigned index=0; index<count; index++) {
		mapnik::geometry_type &g((*fp)->get_geometry(index));
		jobject gobject=env->NewObject(CLASS_GEOMETRY, CTOR_NATIVEOBJECT);
		env->SetLongField(gobject, FIELD_PTR, FROM_POINTER(&g));
		env->SetObjectArrayElement(ret, index, gobject);
	}

	return ret;
	TRAILER(0);
}
Esempio n. 16
0
/*
 * Class:     mapnik_FeatureSet
 * Method:    _loadGeometries
 * Signature: ()[Lmapnik/Geometry;
 */
JNIEXPORT jobjectArray JNICALL Java_mapnik_FeatureSet__1loadGeometries
	(JNIEnv *env, jobject fsobj)
{
	PREAMBLE;
	mapnik::feature_ptr* fp=LOAD_FEATURE_POINTER(fsobj);
	if (!fp) {
		throw_runtime_exception(env, "No feature loaded");
		return 0;
	}

	// Mapnik 3.x only holds one geometry<> per feature_impl.
	// (In Mapnik 2.x this used to be a variable-length vector of geometries.)
	unsigned count=1;
	jobjectArray ret=env->NewObjectArray(count, CLASS_GEOMETRY, (jobject)0);
	for (unsigned index=0; index<count; index++) {
		mapnik::geometry::geometry<double> const &g((*fp)->get_geometry());
		jobject gobject=env->NewObject(CLASS_GEOMETRY, CTOR_NATIVEOBJECT);
		env->SetLongField(gobject, FIELD_PTR, FROM_POINTER(&g));
		env->SetObjectArrayElement(ret, index, gobject);
	}

	return ret;
	TRAILER(0);
}
Esempio n. 17
0
/*
 * Class:     mapnik_Image
 * Method:    alloc
 * Signature: (II)J
 */
JNIEXPORT jlong JNICALL Java_mapnik_Image_alloc__II
  (JNIEnv *env, jclass c, jint width, jint height)
{
	mapnik::image_32* im=new mapnik::image_32(width, height);
	return FROM_POINTER(im);
}