Variable: perimeter
const
perimeter:ExtendedTool
<PerimeterFunctionArgs
,PerimeterLlmResult
,PerimeterAdditionalData
,SpatialToolContext
>
Defined in: packages/tools/geoda/src/spatial_ops/perimeter.ts:65
perimeter Tool
This tool calculates the perimeter of geometries in a GeoJSON dataset.
Perimeter Calculation
It supports both direct GeoJSON input and dataset names, and can calculate perimeters in either kilometers or miles.
Example user prompts:
- "Calculate the perimeter of these polygons in kilometers"
- "What is the total perimeter of these boundaries in miles?"
- "Measure the perimeter of these land parcels"
Example
import { perimeter, PerimeterTool } from '@openassistant/geoda';
import { convertToVercelAiTool } from '@openassistant/utils';
import { generateText } from 'ai';
const perimeterTool: PerimeterTool = {
...perimeter,
context: {
getGeometries: (datasetName) => {
return SAMPLE_DATASETS[datasetName].map((item) => item.geometry);
},
},
};
generateText({
model: openai('gpt-4o-mini', { apiKey: key }),
prompt: 'Calculate the perimeter of these polygons in kilometers',
tools: { perimeter: convertToVercelAiTool(perimeterTool) },
});