Time of Update: 2018-12-05
最近解決一個小問題需要用到Access資料庫,很簡單的資料庫操作,就是插入操作,表欄位就兩個,name和value,但是奇怪的是總是報insert 語法錯誤。經過一番實驗,估計value是Access資料庫的關鍵字,所以總是報語法錯誤。 後來把value欄位改成value1就不在出現文法報錯,隨之而來的是報"操作必須使用一個可更新的查詢"
Time of Update: 2018-12-05
static_cast運算子是標準c++中的強制類型轉換運算子。原先的c語言中是存在類型轉換的,如int型直接轉換為float型,為什麼需要引入新的類型轉換?目的是為了克服舊式c語言中類型轉換的缺陷。舊式的類型轉換是很強的一種文法,帶來的後果是引入很多不易察覺的錯誤。static_cast比舊式的類型轉換更具體,更安全,類型轉換的錯誤能在編譯期間發現。例如,const類型轉換為非const類型在編譯期間被認為是一個語法錯誤。#include<iostream>using
Time of Update: 2018-12-05
二次開發軟體ArcGIS Engine 演算法目標提高當前的拓撲演算法效率,至少提升兩倍以上的處理效率 主要問題的解決1、解決ArcGIS Engine組件對多線程支援的錯誤2、大資料量的多線程演算法協調3、hash演算法的更新4、VC代碼調優5、Tlog,包括違例資料記錄,出錯資訊記錄,錯誤資訊分類 演算法更新目前開始時間3月,大致9月份完成 組件提供方式擴充模組的方式提供,仍然是gp工具
Time of Update: 2018-12-05
在GIS中如何根據資料記錄動態產生符號?這是一個常見的問題,一般都是通過render解決。但是在這個問題下,仍有一小類問題是解決不了的,那就是如果欄位本身的值和符號相關,現成的渲染方式是不能輕鬆解決的。必須自己寫程式實現這種特殊的render來解決。在風向標符號的繪製中,每個風向標的風力大小和風的方向決定了符號的繪製方式,可以說每個風向記錄的資料都不一樣,那麼每個符號都是動態都是需要根據欄位資訊來繪製的在風玫瑰的繪製中這個繪製過程,更為複雜,通常每個點處的風玫瑰有六種,不通過程式定製根本不可能實
Time of Update: 2018-12-05
事件由活動調度器進行調度事件由使用中的物件進行處理 使用中的物件*可以用來處理非同步函數響應*從CActive派生而來(所有的使用中的物件都是直接或間接地由CActive派生而來)*包含 -一個TRequestStatus基類成員變數iStatus,它用於傳入非同步函數 -RunL()函數,當請求完成之後得以調用 -DoCancel()函數,當請求取消時得以調用 -優先順序,用於確定其被調用的優先順序 活動調度器*對於GUI應該程式,在程式啟動之後,作業系統會建立一個活動調度器*活動調度器在
Time of Update: 2018-12-05
理解以下幾個概念DPI ,所謂的螢幕解析度,單位為Pixel/InchPoint,所謂的製圖單位,是一個長度絕對值,1/72
Time of Update: 2018-12-05
Visual C++ 開發Geoprocessing 工具 GP工具開發步驟 繼承IGPFunctionFactory和IGPFunction介面 2.實現上述介面中的方法 3.定義UI參數 4.處理UI參數(驗證期處理和執行期調用) 5.如何調用GP工具 GP工具涉及的主要介面 IGPFunctionFactory IGPFunction 1.GP工具的模式
Time of Update: 2018-12-05
ArcGIS9.3對Dynamic Display做了很大的改進,底層顯示方式做了本質的一些改變。其中最大的變化是添加了IDynamicCacheLayerManager 介面,這個介面極大提升了動態圖層顯示時地圖的顯示效果,9.3以前的版本,地圖的縮放都是重複重新整理每個地圖背景,在地圖比較複雜的情況下,幾乎是無法忍受的慢,但是如果採用9.3的新介面,可以在使用之前先用類似Arcgis
Time of Update: 2018-12-05
目前全國第二次土地大調查,確定VCT資料結構採用Topo1 關於拓撲,簡單說來,其實是對現實世界的資料描述方式中的空間關係表述。Topo1的結構就是用線來描述邊。區別於以前的Topo0結構,Topo0是用點集來描述面。採用Topo1的本質是減少資料存放區的冗餘。
Time of Update: 2018-12-05
為了使用c++開發程式,必須匯入ArcEngine的庫,需要直接匯入的庫在C:/Program Files/ArcGIS/com,路經下面。庫檔案的尾碼名是olb。匯入的方式是在stdafx.h標頭檔中在最下面加入一下語句:#pragma warning(push)#pragma warning(disable : 4192) /* Ignore warnings for types that are duplicated in win32 header files
Time of Update: 2018-12-05
災害應急的一些有用資訊。GIS志願者在密西西比州卡特裡娜颶風救災中發揮作用 http://www.esrichina-bj.cn/news/esriworldnews/jufeng2.htm轉自USGS的中國曆次大地震資訊 China 1290 09 27 - Chihli, China Fatalities 100,000 1556 01 23 - Shensi, China - M 8.0 Fatalities 830,000 1917 07 30 - Yunnan, China - M 7
Time of Update: 2018-12-05
遇到這樣一個問題,如何判斷得到的polyline對象是否為圓弧,簡單思考後直接判斷polyline的gemetryType,但是這是錯誤的。正確的方法是qi得到對應的ISegmentCollection介面,查詢segmentCollection中每個segment的gemetryType,可以判斷polyline的構造線型.原因倒是很簡單,複雜的polyline可以看成是多個segment的集合,但是當前我的每個polyline對象都是由一個segment構成,所以可以按如下方式寫代碼:
Time of Update: 2018-12-05
在ArcObjects中,CoClass是可以直接執行個體化的類,在VC中我們可以通過以下多種方法進行執行個體化: 流程說明 1.在變數聲明的同時直接使用CLSID進行構造樣本:IPropertySetPtr ipPropertySet(CLSID_PropertySet);ipPropertySet->SetProperty(CComBSTR(L"DATABASE"),CComVariant(path));2.CoCreateInstance方法(ATL CComPtr 模板類成員
Time of Update: 2018-12-05
最近很忙, 很久沒有寫blog了,上來才發現,有很多人開發關注Dynamic Display了。其實ESRI對於新提供的這個功能例子也是很多,但是很遺憾都是.net的,事實上ESRI提供的例子全部是都對底層的Com介面做了封裝。而在行業應用上VC尤其是VC6在這個功能部分上開發應用程式是佔主導地位的。去年自己做了一個。關於效果, 我貼個圖吧,醜了點,但是目標移動速度在有GIS底圖的情況下非常快,不是一般的快,我加了3000個B2對象。 ArcEngine Tools 工具的使用效果
Time of Update: 2018-12-05
出現這種標誌性的錯誤,其實最好的方法是到ArcSDE的協助檔案中尋找錯誤代號,在ArcSDE協助中得到如下資訊[ERR2407] (SDE error code {error code} {message}) Example 2: When there is an underlying DBMS error. In this example, an invalid operand is used.[Jan 15, 2004 10:49:55 AM][1316 2132 INFO1] Begin
Time of Update: 2018-12-05
IGeometryPtr ipGeometry1; IGeometryPtr ipGeometry2; IGeometryPtr ipGeometry3; long lOID1,lOID2; ipFeature1->get_Shape(&ipGeometry1); ipFeature1->get_OID(&lOID1);
Time of Update: 2018-12-05
如果是9.2以前的使用者,在產生要數類或者要數集的時候需要指定xy domain不然會提示超出範圍的錯誤,但是在9.2中不再需要手工指定範圍Whats_New_In_ArcGIS92.pdf 第18頁(Geodatabase & ArcSDE-easier to Create data)當自己產生資料的時候,在9.2中已經採用新的高精度資料存放區方式,不需要再手工指定xy domain。 當你在9.2中建立單一的要數類,或者要數集,軟體會為你自己設定的座標系自動計算合適的xy
Time of Update: 2018-12-05
*安裝和啟動活動調度器*活動調度器的虛擬碼樣本*活動調度器的函數*定製活動調度器 *安裝和啟動活動調度器 - GUI應用程式會自動安裝和運行活動調度器,不用手動安裝 - 對於非GUI應用程式,則需要手動建立,安裝和運行活動調度器,比如 如果線程已經安裝了活動調度器,再次安裝會導致嚴重錯誤(E32USER-CBase43) //建立 CActiveScheduler* mySched = new(Eleave) CActiveScheduler;
Time of Update: 2018-12-05
If you set the coordinate system when creating a new feature class or dataset, we use the coordinate system's (map projection) valid extent. This is larger than the coordinate system's valid area of use. For example, in your case, the extent of
Time of Update: 2018-12-05
在ArcMap9.x中對mxd檔案進行瀏覽操作時頻繁出現I/O問題,錯誤提示如下:one or more layers failed to draw:FDO error:0Network I/O error 請問造成以下問題,可能是哪些原因引起的,如何解決。解決方案:1.本地的網路服務有問題,資料包的延遲。使用ping -t命令,關閉本地的防火牆。2.mxd檔案損壞,用mxd doctor。3.9i以後的版本open_cursors 初始化 參數至少要2000。4.請打sde的補丁。