2014-05-23 8 views
0

나는 안드로이드 용 Autocad 파일 판독기에서 작업 중이다. 이제는 Kabeja 라이브러리를 사용하여 DXF 파일을 읽으며 작동하지만 멋지지만 AutoCAD에서 간단한 모양을 그릴 때 안드로이드에서 그리기 위해 노력한다. 내가 AutoCAD를로 볼 때 표시되지 않는 것은 내가 그들을 이미 모든 솔루션을 찾기 위해 검색을 많이했고, 내가 노력 하나Android : Autocad Coordinates too too

EXTMIN 및 을 읽을 수 EXTMAX

이다 한 너무 큰 찾을 좌표

헤더 값이지만 {30 = 0.0, 20 = 1015.62006242 5179 EXTMIN 를 들어, 10 = 1624.318980044965}과 = 0.0 {30 = 2134.42060268589 20 = 3716.108222970341 10} EXTMAX

이 내가 이러한 값을 사용하는 방법을 모르는

DXFHeader dxfHeader = dxfDoc.getDXFHeader(); 
DXFVariable dxfVariableMin = dxfHeader.getVariable("$EXTMIN"); 
DXFVariable dxfVariableMax = dxfHeader.getVariable("$EXTMAX"); 

내 코드입니다 내 모양을 올바르게 그릴 수 있도록하기

답변

2

EXTMIN과 EXTMAX는 지오메트리 (엔티티)가 포함 된 dxf 도면의 영역을 정의합니다.

dxf 파일을 표시 할 때 EXTMIN 값을 오프셋으로 사용합니다. 당신의 예에서

는 형상을 포함 DXF 파일 영역의 왼쪽 아래는 다음과 같습니다

1624.318980044965, 1015.620062425179 

오른쪽 상단 인 반면 :

3716.108222970341, 2134.42060268589 

이 의미 당신의 효과 캔버스 그 크기는 실제로 너비가 1118 인 2091 넓이입니다.

x, y 중심 좌표가 2000, 1500 인 원과 같은 엔티티가있는 경우; EXTMIN 좌표를 빼고 원을 표시 할 수 있습니다. 375.68, 484.38

모든 엔티티의 x 및 y 좌표 (10 및 20 그룹 코드)에서 EXTMIN 좌표를 빼면 더 작게 표시 할 수 있습니다 지오메트리가 포함 된 영역 만 포함하는 영역.

+0

이제는 엔티티를 볼 수 있지만 엔티티가 오른쪽으로 이동하여 다른 문제가 발생하여 AutoCAD에서 그릴 때 표시되지 않습니다. –