Khảo sát gói thư viện mã nguồn mở Geotools và ứng dụng hiện thực hệ thống thông tin địa lý trên nền Web


public static FeatureCollection find(MapLayer queryLayer



tải về 5.55 Mb.
trang29/34
Chuyển đổi dữ liệu16.10.2017
Kích5.55 Mb.
#33732
1   ...   26   27   28   29   30   31   32   33   34

public static FeatureCollection find(MapLayer queryLayer,

DefaultMapLayer highlightLayer) {

try {

if (mapContext.indexOf(highlightLayer) ==

(mapContext.getLayerCount() - 1)) {

mapContext.removeLayer(highlightLayer);

}

queryLayer = mapContext.getLayer(mapContext.getLayerCount() - 1);

String queryLayerName = queryLayer.getFeatureSource().getSchema().getTypeName();

FeatureSource fs = utils.DataUtils.getFeatureSoureFromDatabase(queryLayerName);

FeatureCollection fc = fs.getFeatures().collection();

FeatureCollection result = FeatureCollections.newCollection();

if (utils.DataUtils.isInteger(findValue)) {

Iterator iterator = fc.iterator();

for (int i = 0; iterator.hasNext(); i++) {

Feature feature = (Feature) iterator.next();

Object r = feature.getAttribute(findCondition);

String st = r.toString();

if (st.equals(findValue)) {

result.add(feature);

}

}

} else {

Iterator iterator = fc.iterator();

for (int i = 0; iterator.hasNext(); i++) {

Feature feature = (Feature) iterator.next();

Object r = feature.getAttribute(findCondition);

if (r.equals(findValue)) {

result.add(feature);

}

}

}

return result;

} catch (Exception ex) {

throw new RuntimeException(ex.getMessage());

}

}

    • Tìm kiếm trong khoảng, tìm kiếm lớn nhất, nhỏ nhất

Lưu ý: Các chức năng này chỉ áp dụng cho tìm kiếm về dân số trên lớp rghc của chương trình

Ngoài cách sử dụng Filter như đã thực hiện với Shape file như trên, tôi xin đưa ra them một cách thực hiện khác

Mô tả cách thức hoạt động:

Chỉ khi ta chọn kiểu tìm kiếm trong choice (1) là thuộc về dân số thì giao diện tìm kiếm trong khoảng, tìm kiếm lớn nhất, nhỏ nhất mới xuất hiện như sau:




(1)

(a)


(2)

(3)


(4)

(5)


(6)

(b)


Hình 3.42. Chức năng tìm kiếm về dân số

Người dùng có thể lựa chọn một trong các cách tìm kiếm sau (lưu ý khi muốn chọn kiểu tìm kiếm nào thì cần chọn nút check tương ứng với kiểu tìm kiếm nằm trước nó)


    1. Tìm dân số theo tên xã: chọn giá trị tên xã trong choice (2): Việc tìm kiếm này được thực hiện như phần tìm kiếm bằng đã đề cập ở phần trước và chọn (a).

    2. Tìm dân số nhỏ nhất trong năm tương ứng của choice (1): chọn (3)

    3. Tìm dân số lớn nhất trong năm tương ứng của choice (1): chọn (4)

    4. Tìm dân số trong khoảng: cần chọn (b). Ta có thể nhập đầy đủ hoặc chỉ nhập thông tin vào một trong hai vùng (5), (6) thì chức năng tìm kiếm vẫn thực hiện được chỉ cần lưu ý rằng thông tin nhập vào phải là số nguyên.

Sau khi kết quả được thực hiện, thông tin thuộc tính hiển thị và đồng thời kết quả này cũng được thể hiện trên bản đồ.

Các phương thức thực hiện các chức năng này tham khảo trong lớp FindFeatures của gói handler.



Ví dụ: Tìm kiếm dân số năm 1991

  1. Tìm xã có dân số nhỏ nhất

Hình 3.43 Tìm kiếm nhỏ nhất



  1. Tìm xã dân số lớn nhất

Hình 3.44 Tìm kiếm lớn nhất



  1. Tìm các xã có dân số trong khoảng từ

Hình 3.45 Tìm kiếm trong khoảng




  1. Каталог: data
    data -> HƯỚng dẫn càI ĐẶt và SỬ DỤng phần mềm tạo bài giảng e-learning
    data -> CỘng hòa xã HỘi chủ nghĩa việt nam độc lập Tự do Hạnh phúc
    data -> Qcvn 81: 2014/bgtvt
    data -> Trung taâm tin hoïC Ñhsp ñEÀ thi hoïc phaàn access
    data -> PHỤ LỤC 2 TỔng hợp danh mục tài liệu tham khảO
    data -> Công ty cổ phần Xây dựng Điện vneco3
    data -> Nghiên cứu một số đặc điểm
    data -> NHỮng đÓng góp mới của luậN Án tiến sĩ CẤP ĐẠi học huế Họ và tên ncs : Nguyễn Văn Tuấn
    data -> Mẫu 01/hc-sn-dn (Ban hành kèm theo Thông tư số 83/2007/tt-btc ngày 16/7/2007 của Bộ Tài chính) TỜ khai hiện trạng sử DỤng nhà, ĐẤt thuộc sở HỮu nhà NƯỚc và ĐỀ xuất phưƠng án xử LÝ

    tải về 5.55 Mb.

    Chia sẻ với bạn bè của bạn:
1   ...   26   27   28   29   30   31   32   33   34




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương