반응형

GIS 23

ArcGIS for FLEX(1.3): TextSymbol Angle, alpha 적용(TextSymbol rotate, transparency 하기)

포인트 좌표에 텍스트 심볼을 적용하고 각도를 조절하려고 했는데 분명 TextSymbol 에 Angle이란 속성이 있지만 아무리 값을 주고 적용하여도 심볼은 그대로이다. 투명도를 주기 위한 alpha 속성도 마찬가지... 죄없는 ESRI를 욕하고 Adobe를 욕했는데..ㅋㅋ 플렉스에서 텍스트에 rotate 속성을 적용하려면 embedded fonts 를 사용해야 한단다 ㅡㅡ;; 우선 글꼴의 경우는 트루타입 폰트여야 한다. 스타일에 글꼴을 정의한다. 나는 .css 파일에 정의 했다. @font-face { src: url("assets/Font/글꼴.ttf"); fontFamily: "내가정의한글꼴이름"; advancedAntiAliasing: true; } == 텍스트 심볼을 만들어 보자 ==> 텍스트 포..

GIS 2011.02.23

ArcObject : FileGDB 의 Blob 에서 파일 삽입, 읽기 (예: BLOB의 이미지 파일 읽기 및 등록)

FileGDB 에서 Blob 필드에서 파일 읽기 using ESRI.ArcGIS.Geodatabase; using ESRI.ArcGIS.esriSystem; using System.IO; //blob 파일 읽기 private void loadBlob(IFeatureWorkspace pFeatureWorkspace , string where) { try { ITable pTable; IQueryFilter pQueryFilter = new QueryFilter(); pQueryFilter.WhereClause = where; pTable = pFeatureWorkspace.OpenTable("피쳐클래스 또는 테이블"); ICursor pCursor; pCursor = pTable.Search(pQueryF..

GIS 2010.12.07

ArcObject : FeatureClass , Feature, Table 의 Domain(도메인)값 찾아서 가져오기-C#

공간정보에서 피쳐클래스나 속성테이블의 필드에 Domain을 사용하였을 경우 해당 값(코드정보등..)의 Domain 값을 찾아 반환해주는 함수이다. 만약 도메인에 구성된 값이 아닐경우에는 그냥 본래의 값을 반환한다. 만약 도메인 값 리스트를 뽑고 싶으면 소스에서 반환타입과 비교절을 적절히 사용하면 됨. 아래의 함수는 피쳐에 도메인 값을 반환하는 경우인데 만약 일반 속성테이블이나 피쳐클래쓰라면 빨간색으로 써논 부분을 참고해서 사용하면 된다. using ESRI.ArcGIS.Geodatabase; /// /// 도메인 이름 가져오기 /// /// 피쳐 /// 필드이름 /// 필드값 /// public string FindDominValue(IFeature pFeature, string fieldName, st..

GIS 2010.12.06

ArcObject : GDB 속성 테이블을 DataTable 로 컨버전 (FeatureClass를 DataTable로 컨버전하기)-C#

SDE를 사용할때는 DB에서 쿼리로 정보를 가져오면 되는데 File GDB를 사용하다 보니 File GDB의 속성 테이블이나 피쳐클래스 정보를 DataTable로 만들어 쓰면 편한 경우가 많아 만들어 보았다. ㅋ using ESRI.ArcGIS.Geodatabase; 우선 피쳐클래스나 속성 테이블에서 가져올 정보를 ICursor 형태로 만들어 주는 메소드를 정의한다. // 속성 테이블이나 FeatureClass 에서 ICursor 가져오기 public static ICursor GetCursor(IFeatureWorkspace pFeatWS, string sTableName, string sCauseWhere) { ITable pTable; ICursor pCursor = null; ; IQueryFil..

GIS 2010.12.06

ArcGis Server (javascript) 축척 변경

현재 맵의 축척을 알아오는 스크립트(기본 맵 서비스 해상도이 96dpi 기준이다.) function convertExtentToScale(){ var ext = map.get_extent(); var maxX = ext.get_xmax(); var minX= ext.get_xmin(); var maxY=ext.get_ymax(); var minY=ext.get_ymin(); var dpi=96; var bounds = Sys.UI.DomElement.getBounds(map.get_element()); var imageWidth = bounds.width; var imageHeight = bounds.height; var centreX=maxX-(maxX-minX)/2.; var centreY=maxY-..

GIS 2010.01.13

windows2008 서버 iis7.0 개발시 파일 다운로드 안될때 - shapefile(쉐입파일) MIME 설정

지오프로세스로 SDE 에서 필요한 쉐입파일을 생성하고 사용자들로 하여금 다운로드 하여 사용할 수 있도록 개발도중 window2008 서버의 iis7.0 으로 서비스를 했을때 다운로드 받으면 파일이 깨져있거나 사용하지 못하는 경우가 발생했다. 직접 파일경로를 브라우저에 쳐보니 HTTP 오류 404.3 - Not Found 확장 구성 때문에 요청한 페이지를 처리할 수 없습니다. 페이지가 스크립트인 경우 처리기를 추가하십시오. 파일을 다운로드해야 하는 경우 MIME 맵을 추가하십시요 iis7.0 서버에 MIME 타입이 정의 되지 않아 문제가 발생한것 같다. 앵간한 범용적인 MIME 타입은 정의가 되어 있으나 쉐입파일을 구성하는 .shp .sbn .shx .dbf .prj .shp.xml 파일들의 MIME 타입..

GIS 2009.12.17

arcGIS Server (ADF) 포인트로 그래픽레이어에 라인그리기-포인트콜렉션사용 (polyline from point)

2개 이상의 포인트 정보가 있을때 이 포인트를 이어 하나의 라인으로 그린다. 포인트를 포인트 콜렉션에 담아 그래픽 레이어에 라인을 생성한다. public void Addpoint(){ //포인트 콜렉션 객체를 생성 ESRI.ArcGIS.ADF.Web.Geometry.PointCollection ptcollection = new ESRI.ArcGIS.ADF.Web.Geometry.PointCollection(); //포인트 콜렉션에 포인트 정보를 추가 for (int j = 0; j < 조건; j++){ ESRI.ArcGIS.ADF.Web.Geometry.Point adfpoint = new ESRI.ArcGIS.ADF.Web.Geometry.Point("X좌표","Y좌쵸"); ptcollection .A..

GIS 2009.11.11

ArcGIS Server (ADF) Definition Query : 데피니션 쿼리 소스에서 구현하기

맵문서 자체에 필요한 피쳐들만을 정의해서 사용할 수 있지만 맵로드시에 많은 데이터중 조건에 의해서 필요한 피쳐들만 보여줄 필요가 있을때 사용한다. public void DefinitionQuery(string resourceString ) { //나는 page_load 이벤트에 사용하여 맵리소를 초기화를 시켰다. if (!MapResourceManager1.Initialized) MapResourceManager1.Initialize(); //definition query로 처음 검색조건에 맞는 피쳐만 가져오기 ESRI.ArcGIS.ADF.Web.DataSources.ArcGISServer.MapFunctionality mapFunc = Map1.GetFunctionality (resourceString..

GIS 2009.11.11

ArcGiS Server 9.3.X 쿼리필터(QueryFilter)시 maxrecords 500개 이상 가져오기 (Web ADF)

Gis Server ADF 로 개발시 조건에 맞게 피쳐정보를 가져와야 할 때가 있다 쿼리 필터 또는 스페셜 필터를 쓰던 기본 디폴트로 500개의 레코드만을 가져온다. ESRI 에서 500개로 설정해 논 이유가 있겠지만 여하튼 더 많은 레코드를 가져와 처리해야 하는 경우가 있을경우. ESRI.ArcGIS.ADF.Web.QueryFilter queryFilter = new ESRI.ArcGIS.ADF.Web.QueryFilter(); queryFilter.WhereClause = "조건문"; queryFilter.ReturnADFGeometries = true; queryFilter.MaxRecords = 래코드 갯수;

GIS 2009.11.09
반응형