2014-12-22 8 views
0

에서 10.2 : 나는 .IMG,이 .tif 열려고하고열기 파일 시스템 래스터 데이터 세트는 ArcGIS에서 사용 ArcObjects 해결하고자 자바

내 대답은 아래를 참조하고는 ArcMap에서 새 레이어를 래스터 .dat 파일.

저는 StackOverflow에서 설명서 및 몇 가지 구현에서 찾은 모든 방법을 시도했습니다.

이것은 현재 코드 :

File file = new File(output); 
    IWorkspaceFactory wsFactory = (IWorkspaceFactory)new RasterWorkspaceFactory(); 
    IRasterWorkspace2 rasterWS = (IRasterWorkspace2)wsFactory.openFromFile(file.getParentFile().getAbsolutePath(),0); 
    IRasterDataset rds = rasterWS.openRasterDataset(output);  
    IRasterLayer rasterLayer = new RasterLayer(); 
    rasterLayer.createFromDataset(rds); 
    IActiveView activeView = mxDocument.getActiveView(); 
    IMap _map = activeView.getFocusMap(); 
    _map.addLayer(rasterLayer); 

이 코드는 오류 메시지가 발생하지 않습니다,하지만 레이어를 열지 않습니다. 내가 샘플 프로그램과 arcObjects이 라인에 10.2 던져 예외에 대한 문서에서했다 이전 구현 :

RasterDataset rasterDataset = (RasterDataset) rasterWorkspace.openRasterDataset(file.getAbsolutePath()); 

내가 지금 가지고있는 유일한 단서는 가능성이 파일을 열기위한 명령을 호출하고 파일 경로를 제공하기 위해 ControlsAddDataCommand 클래스입니다 입력으로. 파일을 열려면 사용자 지정 명령을 빌드 하시겠습니까?

참고 : 레이어 메뉴에서 addData 옵션을 클릭하면 파일이 제대로 열립니다.

답변

0

이클립스에서의 JavaDoc의 툴팁을 검색하여이 코드를 찾을 수

IRasterLayer rasterLayer = new RasterLayer(); 
    rasterLayer.createFromFilePath(output); 
    mxDocument.addLayer(rasterLayer); 

를 해결했다.

개체를 입력하고 "." Eclipse는 사용 가능한 모든 옵션을 표시합니다.

나는이 코드 스 니펫이 온라인으로 나열되지 않았 음을 놀랍습니다 (검색 한 지 약 8 시간 만에 발견되었습니다). 어쨌든, 그것은 단순한 3 라인 솔루션입니다!