supermap objects 入門教程-1
目的:了解supermap objects
最基本的操作流程。
實用物件:
初次接觸supermap objects
控制項的使用者。
涉及到的物件與相關介面(事件、屬性、方法)
1. supermap 物件:
用於顯示地圖、地圖圖層管理、地圖放大、縮小等;
supermap
物件亦用於完成地圖編輯以及其他與地圖有關的操作。同乙個工程中可以有多個 supermap
控制項。
成員說明
action 屬性
返回/設定
supermap
物件的當前
action
操作型別,
action
的值是乙個
seaction 常量.
通過設定 action
屬性可以完成與滑鼠有關的操作,當
action
的值為零時,表示不進行任何操作。通常與地圖顯示有關的操作如地圖的放大、縮小、自由縮放、平移以及簡單的編輯操作如畫點、畫線、畫面等都可以通過設定
supermap
控制項的
action
屬性完成,具體請參閱
seaction 常量。
selection屬性
返回/設定 supermap
物件中別選中的空間物件集合,在
supermap
地圖視窗中,可以有多個圖層同時處於選擇狀態,但當前被選中的圖層只能有乙個,即
supermap.selection
只能包含同乙個圖層上的空間物件。 返回
soselection
型別的物件
layers 屬性
返回supermap
物件中圖層集合,在
supermap
物件中,可以疊加顯示多少個圖層,通過該屬性可以返回圖層集合物件,便於管理圖層疊置順序、可已編輯狀態已經對所有圖層物件的引用。返回型別
solayers
viewentire()方法
顯示全幅地圖
connect()方法
用於建立supermap
物件與superworkspace
物件之間的鏈結
. superworkspace 是專門負責管理資料的,supermap
地圖視窗中顯示的資料都取自
superworkspace,因此,顯示之前需要建立 supermap
與 superworkspace 的連線。當連線成功時,返回 true
。此外,控制項使用中,凡是需要讀取工作空間中資料的,都需要與工作空間建立連線。如
superlayout 布局控制項、superanalyst分析控制項、super3d三維控制項、superwkspmanager工作空間管理器控制項等。
refresh()方法
重新整理地圖視窗或者說是從新裝置地圖
disconnect()方法
中斷supermap
物件與superworkspace
物件之間的連線。
geometryselected()事件
當地圖視窗中的空間物件被選中時觸發,對於並不同的選擇方式,該事件觸發的順序不同。1.點選,框選,圓選時,先觸發
geometryselected
,然後是
mousedown
事件;2.點框選時先觸發
mousedown
,再觸發
geometryselected。
2. superworkspace 物件
:主要完成資料的組織、管理、處理,包括開啟、關閉、新建、儲存工作空間檔案
(*.smw),
新建、開啟資料原始檔
(*.sdb)
,修復、壓縮資料原始檔、字型檔案的裝載,解除安裝等等。 工作空間是乙個工程專案(同乙個事務過程 transaction
)中所有的資料來源(
sodatasources)、資源(soresources)、布局(solayouts)等資料的組織關係的集合。
成員說明
objecthandle屬性
返回工作空間的控制代碼
handle屬性
返回工作空間的控制代碼
opendatasource() 方法
開啟檔案資料來源,strdatasdourcename
資料原始檔的全路徑名
. nenginetype
:資料來源的引擎型別,常用的型別有sdb,
和 raw。
3. sodatasets 物件
:該物件是 sodataset 物件的集合,通常作為 sodatasource 物件的乙個屬性,是指乙個資料來源所包含的所有資料集的集合。
可以通過資料集的名稱或者索引來訪問某個資料集。如:superworkspace.datasources(1).datasets("world")。
4. sodatasetvector物件:向量資料集物件.用於對向量資料集進行描述、管理和操作。
(3)資料集是由
superworkspace 進行管理和組織的,常常通過把資料集加到 supermap
的圖層中的方式來顯示和編輯資料。
成員說明
query 方法
通過屬性過濾條件查詢向量資料集,結果可包含空間幾何物件和屬性資訊。成功返回記錄集物件(sorecordset),失敗返回 nothing
或者 null
。 strsqlfilter: 查詢條件,相當於
sql語句中的
where
子句, bhasgeometry:是否查詢空間資料。true
,表示要取空間資料;
false
,表示不取空間資料;若查詢時不取空間資料,即只查詢屬性資訊,則在返回的
recordset
中,凡是對記錄集的空間物件進行操作的方法,都將無效,例如,呼叫
sorecordset.getgeometry 將返回空、supermap.ensurevisiblerecordset無效等。
[objfields]:可選引數,字段列表。預設時,查詢結果包括全部字段。否則,只有列表中列出的字段,內容相當於sql
語句中的查詢字段部分,如
select field1,field2 from dt1 where smid
,該語句中的
field1
和field2
都屬於查詢字段,可以用
as設定別名詳見本頁示例部分。
[ stroptions ]:查詢選項。如查詢出的結果(1
)是否按某一欄位排序(
order by
),預設為公升序,如需按降序排列,格式為
"order by * desc"
,其中*
代表某一欄位名;(
2)是否按某一欄位分組(
group by
)等。對於
sdb或者
sdbplus
引擎而言,當
bhasgeometry
為 true
時,本引數無效。
5. solayers 物件
: 圖層集合物件。該物件作為 supermap
控制項的圖層集合物件(
solayers
),用來管理地圖中的所有圖層,可對其進行新增、移動、刪除等操作。該物件不可建立。
6. sorecordset 物件:記錄集物件,記錄集相當於乙個資料的子句,通常通過通用查詢或者選擇的方式得到。在記錄集中,可以進行記錄的天津、修改、刪除等操作,也可單對資料集的屬性進行維護.
成員說明
getfieldinfo()方法
獲取當前記錄的某乙個字段資訊,返回sofieldinfo型別的物件,失敗返回
noting
或者null
getfieldvalue()方法
獲取當前記錄的某個欄位的值
movefirst()方法
將記錄集指標移動到第一條記錄。
fieldcount 屬性
返回記錄集字段個數
7. soselection 物件
: 選擇集物件,該物件主要用於存放地圖上別選中的物件
.選擇集中可新增的物件只能**於乙個圖層,通過 soselection.dataset 來指定。
選擇集物件可以提取為記錄集(soselection.torecordset),進行屬性瀏覽等操作;記錄集也可通過一定的方法轉換為選擇集進行高亮顯示(soselection.fromrecordset)。
8. sostyle 物件: 樣式控制物件
pencolor 屬性,
penstyle
屬性,penwidth
屬性、brushstyle
屬性,brushcolor
屬性,
brushopaquerate 屬性
學習實踐:
前面我們對一些基本物件的相關屬性有了一定了解,接下來我將通過乙個例項對來對這個物件有乙個初步的了解。
執行效果圖:
CSS入門教程
css是 cascading style sheets 的簡稱,中文翻譯為 串接樣式表 也有人翻譯為 樣式表 css用以作為網頁的排版和風格設計,在web標準建站中,對css的熟悉和使用是相當重要的乙個內容。css的作用是彌補html的不足,讓網頁的設計更為靈活。這個文章只是為您介紹css的基礎應用...
CSS入門教程
css是 cascading style sheets 的簡稱,中文翻譯為 串接樣式表 也有人翻譯為 樣式表 css用以作為網頁的排版和風格設計,在web標準建站中,對css的熟悉和使用是相當重要的乙個內容。css的作用是彌補html的不足,讓網頁的設計更為靈活。這個文章只是為您介紹css的基礎應用...
Linux入門教程
linux下有兩種使用者 1.root使用者,提示符 2.普通使用者,提示符 在 etc目錄下有乙個inittab檔案,其中有一行配置 id 3 defualt 其中,數字3就代表一啟動進入字元終端,如果改為5則代表一啟動進入x window 修改口令 passwd 退出登入 exit 關閉機器 只...