Lập trình ArcGISEngine for .Net

Thảo luận trong 'Lập trình trong ArcGIS' bắt đầu bởi AtranDN, 6/11/12.

  1. AtranDN

    AtranDN Moderator

    Tham gia ngày:
    6/11/12
    Bài viết:
    77
    Đã được thích:
    14
    Điểm thành tích:
    8
    Nghề nghiệp:
    TN&MT
    1. Tại sao lại dùng ArcGISEngine for .Net mà không dùng VBA
    + Định hướng đúng theo xu hướng phát triển của ESRI
    + Tùy biến tốt và triển khai gọn, nhẹ
    + Tiển khai ứng dụng có giá thành rẽ hơn nhiều so với việc xây dựng dự án bằng VBA (nếu có thương mại)
    2. Mình xin giới thiệu sơ cách tiếp cận từ đầu việc xây dựng ứng dụng bằng ArcGIS Engine trong .Net
    B1. Cài đặt ArcGIS Engine Runtime, ArcGIS SDK
    B2. Mở .Net lên và xây dựng các đối tượng cần thiết như: MapControl; PageLayoutControl; TOCControl; ToolbarControl; LicenseControl; ...
    B3. Xây dựng menu và các chức năng của ứng dụng

    Mở bản đồ MXD

    Private Sub ToolStripMenuItem_MXD_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem_MXD.Click
    myMap.LoadMxFile(Application.StartupPath & "DataMap\Nenchung.mxd")
    myToc.SetBuddyControl(myMap)
    myToobar.SetBuddyControl(myMap)
    End Sub

    ...
    Các bạn nào có ý kiến thì cùng nhau trao đổi trong chuyên mục này nha!
     

    Các file đính kèm:

    Tags:
  2. dinhtranlinh

    dinhtranlinh Member

    Tham gia ngày:
    3/2/12
    Bài viết:
    346
    Đã được thích:
    0
    Điểm thành tích:
    16
    Lỗi j đây ah

    em có cài arcSDE thì không thể connec đến được vì dịch vụ sde không star đc Please login or register to view links . Khi em star
    thì gặp lỗi thế này : Please login or register to view links . Bác nào đã từng gặp chỉ e cách fix với. ( Diễn đàn up ảnh bị lỗi nên e up link các bác xem jup e với nhé)
     
  3. AtranDN

    AtranDN Moderator

    Tham gia ngày:
    6/11/12
    Bài viết:
    77
    Đã được thích:
    14
    Điểm thành tích:
    8
    Nghề nghiệp:
    TN&MT
    - Bạn cài arcSDE kết nối với CSDL loại nào (SQL, hay Oracle). Bạn phải cài đặt hệ quản trị CSDL và tạo CSDL trước khi cài đặt SDE để connect vào CSDL đó. Khi bật Service thì phải bật CSDL lên trước rối mới bật SDE. Khi tắt thì tắt SDE trước sau đó tắt CSDL để trách tình trạng bị lỗi.
    - Mình từng bị lỗi này trên Win XP, Win 7 còn WindowServer 2000, 2003 thì ít khi bị. Cách khắc phục thì phải cài lại hệ CSDL và cài SDE lại.
     
  4. ptchi

    ptchi New Member

    Tham gia ngày:
    9/5/13
    Bài viết:
    4
    Đã được thích:
    0
    Điểm thành tích:
    0
    Giúp đỡ

    Bạn có thể cho mình xin bộ cài Arcgis Runtim 10 được không?
     
  5. nvkgismt1

    nvkgismt1 Member

    Tham gia ngày:
    13/7/12
    Bài viết:
    84
    Đã được thích:
    25
    Điểm thành tích:
    18
    Nghề nghiệp:
    Lập trình app
    Nơi ở:
    Dĩ an, Bình Dương
    Demo phần mềm quản lý số liệu quan trắc môi trường bằng sql server và argisengine 10

    Đây là Demo phần mềm: youtu.be/ugRHtuJF0yA
     
  6. sea2009

    sea2009 New Member

    Tham gia ngày:
    8/11/11
    Bài viết:
    8
    Đã được thích:
    0
    Điểm thành tích:
    0
    SDE khó quá.

    Nhờ bạn ATranDN và các anh em hướng dẫn giúp:

    - Cách mở bản đồ trong SDE Geodatabase for SQL Server với ArcEngine.

    - Chỉnh sửa bản đồ xong, làm thế nào Update lại vào SDE Geodatabase.

    Thanks.
     
  7. AtranDN

    AtranDN Moderator

    Tham gia ngày:
    6/11/12
    Bài viết:
    77
    Đã được thích:
    14
    Điểm thành tích:
    8
    Nghề nghiệp:
    TN&MT
    Trả lời: Mở lớp bản đồ trong SDE
    Từ Workspace bạn chuyển về kiểu IFeatureWorkspace. Trong phương thức của IFeatureWorkspace có chức năng mở featureClass là OpenFeatureClass (Alias name); từ FeatureClass bạn đưa về FeatureLayer ---> Layer or GroupLayer và add vào Mapcontrol
    * Workspace chính là phương thức Connect SDE của bạn ban đầu.

    Lưu dữ liệu: Tương tự từ Workspace ---> IFeatureWorkspace ---> IWorkspaceEdit.
    Trước khi chỉnh sửa thì .StartEditing(False); Chỉnh sửa xong thì .StopEditing(False). Kết quả những thay đổi trên Layer đã được đưa vào hệ thống lưu trữ
     
  8. lemautungduc

    lemautungduc New Member

    Tham gia ngày:
    28/12/12
    Bài viết:
    21
    Đã được thích:
    0
    Điểm thành tích:
    1
    bạn vào sql mà bạn đang đang cài xóa bỏ sde trong đấy đi và vào program chay sde chuột phảibằng admistrarto, next là ok
     
  9. kacuong

    kacuong New Member

    Tham gia ngày:
    19/2/12
    Bài viết:
    48
    Đã được thích:
    0
    Điểm thành tích:
    0
    Em dùng arcengine để đẩy dữ liệu từ file shp vào SDE thì gặp lỗi khi chạy tới hàm ConvertFeatureClass
    - Nếu em mở trực tiếp SDE để connect
    Mã:
    Type t = Type.GetTypeFromProgID("esriDataSourcesGDB.SdeWorkspaceFactory");                IWorkspaceFactory pFactory = (IWorkspaceFactory)Activator.CreateInstance(t);
                    IWorkspace pWorkspace = pFactory.Open(propertySet, 0);
                    IDataset ids = (IDataset)pWorkspace;
                    IWorkspaceName targetWorkspaceName = (IWorkspaceName)ids.FullName;
    thì có lỗi như thế này Please login or register to view links


    - Nếu em mở thông qua một file *.sde
    Mã:
    IWorkspaceName   targetWorkspaceName = pFactory.Create(@"C:\Crip1", "load.sde", propertySet, 0);              
    thì có lỗi thế này Please login or register to view links
    Bác nào từng code cái này chỉ em với, loay hoay cả hơn tuần với 2 lỗi này rồi mà ko biết fix thế nào , nếu cần em sẽ copy source lên
     
  10. bktuannv

    bktuannv Member

    Tham gia ngày:
    4/11/11
    Bài viết:
    66
    Đã được thích:
    0
    Điểm thành tích:
    6
    Nghề nghiệp:
    GIS, LIS Database & Applications
    Nơi ở:
    Nghệ An
    Thông báo lỗi ghi rõ là chưa có license cho ArcSDE, bạn thêm license ArcSDE trong ứng dụng là được

     
  11. T2liem

    T2liem New Member

    Tham gia ngày:
    29/12/11
    Bài viết:
    42
    Đã được thích:
    0
    Điểm thành tích:
    0
    Xin chào các huynh! hiện tại tiểu đệ đang thử viết một chương trình. Sử dụng SQL; SDE đã có thể tìm, cập nhật dữ liệu thuộc tính. Tìm kiếm vị trí không gian. Ấy thế nhưng đệ chèn cái công cụ Editting tools thì nó lại báo yêu cầu licensing. Rất mong các huynh đi trước hiểu rộng chỉ giáo.
    [​IMG]
     
  12. sx5181

    sx5181 New Member

    Tham gia ngày:
    16/11/11
    Bài viết:
    6
    Đã được thích:
    0
    Điểm thành tích:
    0
    @T2liem : Động đến SDE thì phải có license xịn bác ạ, bác dùng hàng thuốc thì nó báo vậy đúng rồi :D
     
  13. T2liem

    T2liem New Member

    Tham gia ngày:
    29/12/11
    Bài viết:
    42
    Đã được thích:
    0
    Điểm thành tích:
    0
    vậy bác có thuốc nào xịn hông cho em xin với! e đang vã lắm. hihihi
     
  14. hsoft

    hsoft Member

    Tham gia ngày:
    16/9/14
    Bài viết:
    60
    Đã được thích:
    0
    Điểm thành tích:
    6
    Nghề nghiệp:
    Nhân viên IT
    Nơi ở:
    Hà Nội
    GIS Tools

    Gửi bạn!

    Mình cũng là dân chuyên lập trình ArcGISEngine for .Net. Mới đăng ký tham gia diễn đàn, mình đã làm về cái này rất lâu. Chuyên viết các phần mềm ứng dụng; các tool phục vụ sản xuất.
    Hnay gặp chủ đề của bạn, rất ủng hộ và cùng nhau trao đổi
     
  15. hsoft

    hsoft Member

    Tham gia ngày:
    16/9/14
    Bài viết:
    60
    Đã được thích:
    0
    Điểm thành tích:
    6
    Nghề nghiệp:
    Nhân viên IT
    Nơi ở:
    Hà Nội
    Cách cài đặt + Lập trình cơ bản + Nâng cao

    Hi bạn!
    Mình cũng là IT lập trình về món này, thấy bạn lập topic về mòn này mình cũng mong muốn đóng góp một chút cùng nhau phát triển!
    Về ArcGIS Engine for .Net thì các bạn đã biết và viết rất nhiều!
    Sắp tới mình sẽ đóng góp một số bài về việc xây dựng một ứng dụng với ArcGIS Engine 9.3 (này lên 10.x) rồi
    - Tạo mới một project bao gồm (MapControl, TOCControl, ToolBarControl (Cái này có thể không dùng cái có sẵn mà arcgis engine cung cấp mà chỉ sử dụng để gọi hàm)
    - Xây dựng công cụ trình bày style cho lớp (Point; Line...)
    - Các hàm kết nối tới tất cả các loại dữ liệu (Shapefile; PersonalGeodatabse; SDE Geodatabase ...)
    - Xây dựng tool Editor (Tiếng việt) không dùng có sẵn của arcengine
    ...


     
  16. 09162002

    09162002 Member

    Tham gia ngày:
    9/3/12
    Bài viết:
    161
    Đã được thích:
    2
    Điểm thành tích:
    18
    Nghề nghiệp:
    GIS
    Nơi ở:
    Biên Hòa
    tuyệt vời, mong bài của a. a lập topic mới để mn dễ theo dõi nhé :)
     
  17. hsoft

    hsoft Member

    Tham gia ngày:
    16/9/14
    Bài viết:
    60
    Đã được thích:
    0
    Điểm thành tích:
    6
    Nghề nghiệp:
    Nhân viên IT
    Nơi ở:
    Hà Nội
    Lập trình ứng dụng bằng ArcGIS Engine SDK 9.3 (C#)

    Hi các bạn!
    Hôm nay mình sẽ đề xuất với mọi người lập trình một ứng dụng như hình dưới đây sử dụng ArcGIS EngineSDK 9.3; Mọi người xem có được không
    [​IMG]

    Nếu mọi người đồng ý thì bài sau mọi người từng bước để xây dựng nhé!

    Thân!
     
  18. SiCoLa

    SiCoLa Member

    Tham gia ngày:
    31/10/13
    Bài viết:
    215
    Đã được thích:
    1
    Điểm thành tích:
    18
    Nghề nghiệp:
    Sinh Viên
    Nơi ở:
    TP.HCM
    Ủng hộ bác ^^, mong sẽ sớm ra mắt ae bác nhé ^^
     
  19. ThanhThong

    ThanhThong Member

    Tham gia ngày:
    29/10/11
    Bài viết:
    115
    Đã được thích:
    0
    Điểm thành tích:
    16
    Nghề nghiệp:
    VPĐKQSDĐ
    Nơi ở:
    Đồng Nai
    Ủng hộ hai tay luôn, chỉ tại mình gà quá nên chưa giúp gì được
     
  20. Phanminh

    Phanminh Member

    Tham gia ngày:
    6/2/12
    Bài viết:
    66
    Đã được thích:
    0
    Điểm thành tích:
    6
    Tuyệt vời ông mặt trời, Bác sớm cho ra là bài hướng dẫn nhé =D Thanks

     
    Last edited by a moderator: 17/11/14

Chia sẻ trang này

Share
Đang tải...