Geometriai átfedések elsajátítása az Aspose.GIS segítségével .NET-hez
Bevezetés
térinformatikai rendszerek (GIS) területén az overlay műveletek alapvetőek a térbeli elemzéshez. Lehetővé teszik a különböző térbeli adatkészletek összehasonlítását és kombinálását, hogy értékes betekintést nyerhessenek. Az Aspose.GIS for .NET robusztus funkciókat biztosít a geometriai átfedések hatékony végrehajtásához. Ebben az oktatóanyagban az Aspose.GIS for .NET használatával különféle átfedési műveletekbe fogunk beleásni, mint például a metszéspont, az egyesülés, a különbség és a szimmetrikus különbség.
Előfeltételek
Mielőtt belevágna az oktatóanyagba, győződjön meg arról, hogy rendelkezik a következő előfeltételekkel:
1. .NET fejlesztői környezet
Győződjön meg arról, hogy .NET fejlesztői környezet van beállítva a gépen. A .NET SDK letölthető és telepíthető a .NET webhelyről.
2. Aspose.GIS for .NET Library
Töltse le és telepítse az Aspose.GIS for .NET könyvtárat a weboldal .
Névterek importálása
Az Aspose.GIS for .NET használatának megkezdése előtt importálnia kell a szükséges névtereket a projektbe.
using Aspose.Gis.Geometries;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
1. lépés: Hozzon létre sokszög objektumokat
Először definiálunk két sokszög objektumot, amelyek térbeli régiókat reprezentálnak.
var polygon1 = new Polygon();
polygon1.ExteriorRing = new LinearRing(new[]
{
new Point(0, 0),
new Point(0, 2),
new Point(2, 2),
new Point(2, 0),
new Point(0, 0),
});
var polygon2 = new Polygon();
polygon2.ExteriorRing = new LinearRing(new[]
{
new Point(1, 1),
new Point(1, 3),
new Point(3, 3),
new Point(3, 1),
new Point(1, 1),
});
2. lépés: Hajtsa végre a kereszteződés műveletet
Ezután keressük meg a két sokszög metszéspontját.
var intersection = polygon1.Intersection(polygon2);
Console.WriteLine("Intersection type is {0}", intersection.GeometryType); // Poligon
3. lépés: Nyomtassa ki a metszéspontokat
Kiírjuk a metszésponti sokszög pontjait.
PrintRing(((IPolygon)intersection).ExteriorRing);
4. lépés: Végezze el az Uniós műveletet
Most keressük meg a két sokszög unióját.
var union = polygon1.Union(polygon2);
Console.WriteLine("Union type is {0}", union.GeometryType); // Poligon
5. lépés: Uniós pontok nyomtatása
Nyomtassa ki az egyesülési sokszög pontjait.
PrintRing(((IPolygon)union).ExteriorRing);
6. lépés: Hajtsa végre a különbségi műveletet
Ezután keressük meg a különbséget a két sokszög között.
var difference = polygon1.Difference(polygon2);
Console.WriteLine("Difference type is {0}", difference.GeometryType); // Poligon
7. lépés: Nyomtasson különbségi pontokat
Nyomtassa ki a különbségi sokszög pontjait.
PrintRing(((IPolygon)difference).ExteriorRing);
8. lépés: Hajtsa végre a szimmetrikus különbség műveletet
Végül keressük meg a két sokszög közötti szimmetrikus különbséget.
var symDifference = polygon1.SymDifference(polygon2);
Console.WriteLine("Symmetric Difference type is {0}", symDifference.GeometryType); // MultiPolygon
9. lépés: Nyomtasson szimmetrikus különbségi sokszögeket
Nyomtassa ki az egyes sokszögek pontjait a szimmetrikus különbségben.
var multiPolygon = (IMultiPolygon)symDifference;
Console.WriteLine("Polygons count is {0}", multiPolygon.Count); // 2
PrintRing(((IPolygon)multiPolygon[0]).ExteriorRing);
PrintRing(((IPolygon)multiPolygon[1]).ExteriorRing);
Következtetés
geometriai átfedések elsajátítása kulcsfontosságú a térelemzésben, és az Aspose.GIS for .NET átfogó eszközkészletet biztosít e műveletek hatékony végrehajtásához. Az oktatóanyag követésével megtanulta, hogyan használhatja az Aspose.GIS for .NET-et metszésponti, egyesülési, különbségi és szimmetrikus különbségi műveletek végrehajtására geometriai alakzatokon.
GYIK
K: Használhatom az Aspose.GIS-t .NET-hez kereskedelmi projektjeimben?
Igen, az Aspose.GIS for .NET használható kereskedelmi és nem kereskedelmi projektekben is.
K: Elérhető az Aspose.GIS .NET-hez próbaverziója?
Igen, letölthet egy ingyenes próbaverziót a webhelyről itt .
K: Hogyan kaphatok támogatást az Aspose.GIS for .NET számára?
Támogatást kaphat az Aspose.GIS közösségi fórumtól itt .
K: Vannak ideiglenes licencek az Aspose.GIS for .NET számára?
Igen, tesztelési és értékelési célokra rendelkezésre állnak ideiglenes licencek. től szerezheti be őket itt .
K: Megvásárolhatom közvetlenül az Aspose.GIS-t .NET-hez?
Igen, megvásárolhatja az Aspose.GIS-t .NET-hez a webhelyről itt .