<<< Torna alla lista degli esempi

La classe "\fire\source\vector\ConnectionVector"

La classe "\fire\source\vector\ConnectionVector" consente di gestire una connessione vettoriale.
Source code:
		

	include("fxcore.php");

	\fire\gis\data\PlugInItemFactory::getInstance()->setPath(getenv("FIRE_PATH") . "/plugins");
	$parameters = new \fire\map_int_std_string();
	$parameters->set(1, "geosystems.fire.connection.postgres");
	$parameters->set(2, "10.199.50.89");
	$parameters->set(3, "FIRE8");
	$parameters->set(4, "postgres");
	$parameters->set(5, "demodb1pwd");
	$parameters->set(6, "5432");
	$poolId = \fire\gis\data\DataService::createPool($parameters, 1);
	$vectorConnection = \fire\gis\data\DataService::getConnectionVector($poolId);
	echo "vector connection type: " . \fire\source\ConnectionType::toString($vectorConnection->getType()) . "\n";
	if ($vectorConnection->isOpen()) {
		echo "vector connection " . $vectorConnection->getNamespace() . " is open\n";
	} else {
		echo "vector connection " . $vectorConnection->getNamespace() . " is not open\n";
	}
	$dataSet = $vectorConnection->execQuery("SELECT count(*) AS count FROM comune_small");
	$dataRow = $dataSet->next();
	$dataValue = $dataRow->get(0);
	$count = $dataValue->getInt();
	echo "count: " . $count . "\n";
	$chrono = new \fire\time\Chrono();
	$chrono->start();
	$dataSet = $vectorConnection->execQuery("SELECT gid, geom FROM comune_small LIMIT 10");
	$partialTime = $chrono->getPartialTime();
	echo "partial time: " . $partialTime . "\n";
	$index = 0;
	$geometries = new \fire\vector_fire_gear_geom_Geometry_pointer();
	while ($index < 10) {
		$dataRow = $dataSet->next();
		$dataValue = $dataRow->get(0);
		$gid = $dataValue->getText();
		$dataValue = $dataRow->get(1);
		$geometry = $dataValue->getGeometry();
		$geometries->push($geometry->c_clone());
		$index++;
	}
	$stopTime = $chrono->stop();
	echo "stop time: " . $stopTime . "\n";
	$vectorConnection->close();
	$utility = new \fire\gear\op\Utility();
	$mergedGeometry = $utility->geometrymerge($geometries);
	echo "merged geometry: " . $mergedGeometry->toString() . "\n";



	
Output:
<<< Torna alla lista degli esempi