შიგთავსზე გადასვლა

გეომეტრიის ცვლილება(Geometry conversions)


ოფიციალური დოკუმენტაცია
წერტილოვანი შრის ხაზში გადაყვანა - Point to Line Conversion Points to path:
ხაზოვანი შრის პოლიგონში გადაყვანა - Lines to polygon Lines to polygons:
პოლიგონალური შრის ხაზში გადაყვანა - Polygon to Lines Conversion Polygons to lines:
ხაზოვანი შრიდან წერტილების მიღება - Points along geometry Points along geometry:

  • ზოგიერთი განმარტება
  • processing.run ნიშნავს QGIS - ის Processing Toolbox - ს. [მეთოდი/ფუნქცია]
  • სიტყვა native ნიშნავს QGIS ის ხელსაწყოს და pointstopath მის დასახელებას.
  • მასში კოდი მთლიანად არის Dictionary პრინციპი {} არგუმენტი key:value ობიექტის მნიშვნელობები.
  • *ყურადღება მიაქციე ხელსაწყოში 'ORDER_EXPRESSION': '"ID"' , იმიტომ რომ ყველა შრეში ცხრილში ეს აიდის სვეტი არ არის და უნდა ჩაენაცვლოს შესაბამისით.წინააღმდეგ შემთხვევაში პროგრამა მთლიანად გამოდის მწყობრიდან.

🟢 წერტილოვანი შრის ხაზში გადაყვანა (Point to Line Conversion)

Points_to_line.py
fn = r'C:\Users\Public\Documents\GIS\shapefile\points.shp'
output = r'C:\Users\Public\Documents\GIS\shapefile\points_to_line.shp'

processing.run("native:pointstopath", {
    'INPUT': fn,
    'CLOSE_PATH': True,
    'ORDER_EXPRESSION': '"ID"',
    'NATURAL_SORT': False,
    'GROUP_EXPRESSION': '',
    'OUTPUT': output
})

layer = iface.addVectorLayer(output, '', 'ogr')

📌 შედეგად ვიღებთ ხაზს წერტილების თანმიმდევრობით.


🟢 ხაზოვანი შრის პოლიგონში გადაყვანა (Line to Polygon)

Line_to_polygon.py
1
2
3
4
5
fn = r'C:\Users\Public\Documents\GK\PyQGIS\shp\line_layer.shp'
output = r'C:\Users\Public\Documents\GK\PyQGIS\shp\Polygon_layer_from_line.shp'

processing.run("qgis:linestopolygons", {'INPUT':fn, 'OUTPUT':output})
layer = iface.addVectorLayer(output, '', 'ogr')

📌 ხაზები ერთდება და გეომეტრიულად პოლიგონი ყალიბდება.


🟢 პოლიგონალური შრის ხაზში გადაყვანა (Polygon to Lines Conversion)

Polygon_to_Line_Conversion.py
1
2
3
4
5
fn = r'C:\Users\Public\Documents\GK\PyQGIS\shp\Polygon_layer.shp'
output = r'C:\Users\Public\Documents\GK\PyQGIS\shp\Line_layer_from_polygon.shp'

processing.run("native:polygonstolines", {'INPUT':fn,'OUTPUT':output})
layer = iface.addVectorLayer(output, '', 'ogr')

📌 პოლიგონალური შრის ელემენტები გადადის ხაზობრივ სტილში, მათი კონტურიდან/ფორმიდან გამომდინარე.


🟢 ხაზოვანი შრიდან წერტილების მიღება (Points along geometry)

Points_along_geometry.py
1
2
3
4
5
fn = r'C:\Users\Public\Documents\GK\PyQGIS\shp\Line_layer.shp'
output = r'C:\Users\Public\Documents\GK\PyQGIS\shp\Points_placed_on_line.shp'

processing.run("native:pointsalonglines", {'INPUT':fn,'DISTANCE':5,'START_OFFSET':0,'END_OFFSET':0,'OUTPUT':output})
layer = iface.addVectorLayer(output, '', 'ogr')

📌 ხაზოვანი შრის ნებისმიერ ელემენტზე განსაზღვრული დაშორებით წერტილების განთავსება.


📚 შეჯამება

ამ თემაში გავიარეთ:
- ახალი შრეების შექმნა PyQGIS-ით
- წერტილი → ხაზი → პოლიგონი კონვერტაციები
- დროებითი და მუდმივი შედეგების შენახვა
- შეცდომების აღმოჩენა და გასწორება