Tool Collapse Dual Lines To Centrelines trong ArcGIS

Thảo luận trong 'Giải đáp thắc mắc các phần mềm: ArcGIS, ArcView 3.' bắt đầu bởi oasis ufo, 9/5/12.

  1. oasis ufo

    oasis ufo New Member

    Tham gia ngày:
    3/5/12
    Bài viết:
    42
    Đã được thích:
    0
    Điểm thành tích:
    0
    Em đang có một vấn đề hơi rắc rối, mong cả nhà giúp đỡ ạ

    Em có một shp giao thông dạng vùng (lòng đường). Em muốn chuyển nó thành dạng đường (tim đường ở giữa lòng đường). Em đã convert polygon to line và chạy Tool Collapse Dual Lines To Centrelines; em xin trình bày hơi dài dòng một chút 8->:
    + Nếu cứ dùng line vừa mới chuyển đó mà sử dụng Tool Collapse Dual Lines To Centrelines thì kết quả là tim đường sẽ chạy vòng quanh mép ngoài của lòng đường, mà không phải chính giữa.
    1.jpg
    + Nhưng nếu sau khi convert polygon to line và xử lý các đầu mút của lòng đường (bằng cách split và xóa đoạn đầu mút đó đi). Nghĩa là lúc này các đường line sẽ bị hở. Sau đó chạy Collapse Dual Lines To Centrelines thì kết quả mĩ mãn.
    2.jpg

    Vấn đề của em là: Em phải split từng điểm đầu lòng đường, rồi xóa, cả 2 việc (Split và xóa) đều phải làm thủ công rất mất thời gian. Có cách nào làm tự động các đoạn đó đi không các bác? Bởi vì nếu làm với một dữ liệu lớn thì không khả thi chút nào. Hoặc có thể em sử dụng tool này chưa đúng cách, mong được cả nhà giúp đỡ
     
    Tags:
  2. poorbaby

    poorbaby Member

    Tham gia ngày:
    21/10/11
    Bài viết:
    368
    Đã được thích:
    9
    Điểm thành tích:
    18
    Nghề nghiệp:
    RS_GIS
    Nơi ở:
    Ha Noi
    Đợt trước mình cũng phải làm như bạn vậy đấy :(
     
  3. oasis ufo

    oasis ufo New Member

    Tham gia ngày:
    3/5/12
    Bài viết:
    42
    Đã được thích:
    0
    Điểm thành tích:
    0
    Nghĩa là không có cách nào khả quan hơn sao? :(
     
  4. ninomax

    ninomax Moderator

    Tham gia ngày:
    21/10/11
    Bài viết:
    426
    Đã được thích:
    2
    Điểm thành tích:
    0
    Thử làm theo cách này xem có khá hơn ko:
    - Chạy generalize để xóa bớt một số vertices dư thừa. Tolerance lựa chọn dựa vào kinh nghiệm + hiện trạng dữ liệu.
    - Chạy Densify với lớp Dual line, mục đích là để phân bố đều số lượng vertices trên các lines theo 1 khoảng, lấy ví dụ 1000, như vậy đoạn cụt của đường hay như bạn gọi là đầu lòng đường sẽ luôn có độ dài < 1000m.
    - Chạy Split Line at Vertices để căt thành từng đoạn đường con.
    - Lựa chọn những đoạn có chiều dài < 100- 200 (tham số này bạn phải xem dựa trên hiện trạng dữ liệu đang có)
    - Xóa các đoạn đã được chọn
    - Chạy Collapse....
    Toàn bộ các bước này có thể nhét vào ModelBuilder nếu ko muốn làm đi làm lại nhiều lần.
     
    Last edited by a moderator: 9/5/12
  5. oasis ufo

    oasis ufo New Member

    Tham gia ngày:
    3/5/12
    Bài viết:
    42
    Đã được thích:
    0
    Điểm thành tích:
    0
    Em thấy trong trường hợp dữ liệu của em chạy Densify có những đoạn vòng vèo, các khúc cua tại ngã 3, ngã 4 của đường không có ý nghĩa anh ninomax ạ. Khi chạy Split line at Vertices khoảng cách line giữa 2 vertex tại 1 khúc cua có thể ngắn hơn cả đoạn cụt của đường. Nếu chọn theo khoảng cách sẽ phải xóa cả những đoạn tại khúc cua ngã 3, ngã 4. Như thế thì cũng không ổn.
     

Chia sẻ trang này

Share
Đang tải...