
    nj
2                         S SK rS SKrS SKJrJr  S rS rS r\R                  4S jr
\S:X  a#  \R                  " \
" \R                  5      5        gg)    N)gdalogrc                    [         R                  " U 5      n0 [         R                  S_[         R                  S_[         R                  S_[         R
                  S_[         R                  S_[         R                  S_[         R                  S_[         R                  S_[         R                  S	_[         R                  S
_[         R                  S_[         R                  S_[         R                  S_[         R                  S_[         R                   S_[         R"                  S_[         R$                  S_[         R&                  S[         R(                  S[         R*                  S0EnX!   S   nX:w  aO  [         R,                  " U 5      (       a*  [         R.                  " U 5      (       a  US-  nU$ US-  n U$ X2U   S   -  nU$ )N)
wkbUnknown25D)wkbPointr   )wkbLineStringr   )
wkbPolygonr   )wkbMultiPointr   )wkbMultiLineStringr   )wkbMultiPolygonr   )wkbGeometryCollectionr   )wkbNone )wkbLinearRingr   )wkbCircularStringZ)wkbCompoundCurver   )wkbCurvePolygonr   )wkbMultiCurver   )wkbMultiSurfacer   )wkbCurver   )
wkbSurfacer   )wkbPolyhedralSurfacer   )wkbTINr   )wkbTriangler   r   ZMM   )r   
GT_Flattenr   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   GT_HasMGT_HasZ)typ	flat_typedicrets       W/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/osgeo_utils/samples/ogr2vrt.pyGeomType2Namer(   )   s   s#I-) 	3 	-	
 	3 	 = 	7 	!!#C 	_ 	0 	9 	7 	5 	1 	5  	'!" 	+#$ 	  "?

O-)C, .
C;;s{{3t
 J s
 J y>!$$CJ    c                 L    [         R                  " U [         R                  5      $ )N)r   EscapeString	CPLES_XML)xs    r'   Escr.   P   s    Q//r)   c                  F    [        S5        [        S5        [        S5        g)NzBUsage: ogr2vrt.py [-relative] [-schema] [-feature_count] [-extent]z4                  in_datasource out_vrtfile [layers]r      )print r)   r'   Usager3   W   s    	
NO	
@A	"Ir)   c                    S nS n/ nSnSnSnSn/ n[         R                  " U 5      n U c  gSn	U	[        U 5      :  a  X	   n
U
S:X  a  SnOjU
S:X  a  SnOaU
S:X  a  SnOXU
S:X  a  SnOOU
S	:X  a  U	S-  n	UR                  X	   5        O0U
S   S
:X  a
  [	        5       $ Uc  U
nOUc  U
nOUR                  U
5        U	S-   n	U	[        U 5      :  a  M  Uc
  [	        5       $ U(       a(  U(       a!  [
        R                  R                  S5        SnU(       a(  U(       a!  [
        R                  R                  S5        Sn[         R                  " U[         R                  US9nU(       a  SnU(       d\  [        UR                  5       5       H?  nUR                  UR                  U5      R                  5       R                  5       5        MA     SnUR                  5       nUb  U H  nUS:X  a  US-  nO;[        U5      S:  a  USS S:X  a  US[!        U5      -  -  nOUS[!        U5      -  -  n[        U5      S:  a   USS S:X  a  XR#                  U5      S   -  nO=UR%                  U5      nU H&  nUS[!        U5      < S[!        UU   5      < S3-  nM(     US-  nM     U GH  nUR'                  U5      nUR                  5       nUS[!        U5      -  -  nUR                  5       nUb  U H  nUS:X  a  US-  nO;[        U5      S:  a  USS S:X  a  US[!        U5      -  -  nOUS[!        U5      -  -  n[        U5      S:  a!  USS S:X  a  UUR#                  U5      S   -  nO=UR%                  U5      nU H&  nUS[!        U5      < S[!        UU   5      < S3-  nM(     US-  nM     [(        R*                  R-                  U5      (       dl  [(        R*                  R-                  U5      (       dH  [(        R*                  R/                  U5      S:X  a%  [(        R*                  R/                  U5      S:X  a  SnUS XE(       + [!        U5      4-  -  nU(       aG  US!-  nU H7  nUR1                  S"5      u  nnUS#[!        U5      < S[!        U5      < S$3-  nM9     US%-  nU(       a  US&-  nOUS'[!        U5      -  -  nUR3                  5       S:X  a  US(-  nGOUR3                  5       S:X  a  UR5                  S5      R7                  5       (       a  US)[9        UR;                  5       5      -  -  nUR=                  5       nUb  US*[!        UR?                  5       5      -  -  nU(       a5  URA                  5       u  nnnnUS+U-  -  nUS,U-  -  nUS-U-  -  nUS.U-  -  nO[        UR3                  5       5       H  nUR5                  U5      nUS/UR                  5       -  -  nUR7                  5       S:X  a  US0-  nUS1-  nUS2[9        URC                  5       5      -  -  nUR=                  5       nUb  US3[!        UR?                  5       5      -  -  nU(       a4  URA                  US49u  nnnnUS5U-  -  nUS6U-  -  nUS7U-  -  nUS8U-  -  nUS9-  nM     [        URE                  5       5       GHd  nURG                  U5      nURC                  5       [H        RJ                  :X  a  S:nGOURC                  5       [H        RL                  :X  a  S;nGOwURC                  5       [H        RN                  :X  a  S<nGOQURC                  5       [H        RP                  :X  a  S=nGO+URC                  5       [H        RR                  :X  a  S>nGOURC                  5       [H        RT                  :X  a  S?nOURC                  5       [H        RV                  :X  a  S@nOURC                  5       [H        RX                  :X  a  SAnOURC                  5       [H        RZ                  :X  a  SBnOqURC                  5       [H        R\                  :X  a  SCnOLURC                  5       [H        R^                  :X  a  SDnO'URC                  5       [H        R`                  :X  a  SEnOS<nUSF[!        UR                  5       5      < SGU< SH3-  nURc                  5       [H        Rd                  :w  a*  USI[H        Rf                  " URc                  5       5      -  -  nU(       d  USJ[!        UR                  5       5      -  -  nURi                  5       S:  a  USKURi                  5       -  -  nURk                  5       S:  a  USLURk                  5       -  -  nUR7                  5       S:X  a  US0-  nURm                  5       (       a  USM[!        URm                  5       5      -  -  nURo                  5       (       a  USN[!        URo                  5       5      -  -  n URq                  5       (       a  USO-  nUSP-  nGMg     U(       a  USQURu                  5       -  -  nUSR-  nGM     USS-  n[w        UST5      R                  U5        g! [r         a     N^f = f)UN0r   r   z	-relative1z-schemaz-feature_countz-extentz-oo-z0Ignoring -feature_count when used with -schema.
z)Ignoring -extent when used with -schema.
)open_optionsz@dummy@z<OGRVRTDataSource>
r   z  <Metadata>
   zxml:z&  <Metadata domain="%s" format="xml">
z  <Metadata domain="%s">
z    <MDI key="z">z</MDI>
z  </Metadata>
z  <OGRVRTLayer name="%s">
z    <Metadata>
z(    <Metadata domain="%s" format="xml">
z    <Metadata domain="%s">
z      <MDI key="z    </Metadata>
zE    <SrcDataSource relativeToVRT="%s" shared="%d">%s</SrcDataSource>
z    <OpenOptions>
=z        <OOI key="z</OOI>
z    </OpenOptions>
z!    <SrcLayer>@dummy@</SrcLayer>
z    <SrcLayer>%s</SrcLayer>
z)    <GeometryType>wkbNone</GeometryType>
z$    <GeometryType>%s</GeometryType>
z    <LayerSRS>%s</LayerSRS>
z#    <ExtentXMin>%.15g</ExtentXMin>
z#    <ExtentYMin>%.15g</ExtentYMin>
z#    <ExtentXMax>%.15g</ExtentXMax>
z#    <ExtentYMax>%.15g</ExtentYMax>
z    <GeometryField name="%s"z nullable="false"z>
z&      <GeometryType>%s</GeometryType>
z      <SRS>%s</SRS>
)
geom_fieldz%      <ExtentXMin>%.15g</ExtentXMin>
z%      <ExtentYMin>%.15g</ExtentYMin>
z%      <ExtentXMax>%.15g</ExtentXMax>
z%      <ExtentYMax>%.15g</ExtentYMax>
z    </GeometryField>
Integer	Integer64StringReal
StringListIntegerListInteger64ListRealListBinaryDateTimeDateTimez    <Field name="z" type=""z subtype="%s"z	 src="%s"z width="%d"z precision="%d"z alternativeName="%s"z comment="%s"z unique="true"z/>
z$    <FeatureCount>%d</FeatureCount>
z  </OGRVRTLayer>
z</OGRVRTDataSource>
w)<r   GeneralCmdLineProcessorlenappendr3   sysstderrwriteOpenEx	OF_VECTORrangeGetLayerCountGetLayerGetLayerDefnGetNameGetMetadataDomainListr.   GetMetadata_ListGetMetadataGetLayerByNameospathisabsdirnamesplitGetGeomFieldCountGetGeomFieldDefn
IsNullabler(   GetGeomTypeGetSpatialRefExportToWkt	GetExtentGetTypeGetFieldCountGetFieldDefnr   
OFTIntegerOFTInteger64	OFTStringOFTRealOFTStringListOFTIntegerListOFTInteger64ListOFTRealList	OFTBinaryOFTDateOFTTimeOFTDateTime
GetSubTypeOFSTNoneGetFieldSubTypeNameGetWidthGetPrecisionGetAlternativeName
GetCommentIsUniqueAttributeErrorGetFeatureCountopen)argvinfileoutfile
layer_listrelativeschemafeature_countextentopenoptionsiargsrc_dslyr_idxvrtmdd_listdomainmdkeynamelayerlayerdefoptionvaluesrsxminxmaxyminymax	fld_indexsrc_fdr#   s                                  r'   mainr   ^   s	   FGJHFMFK''-D|	A
c$i-g+HIF$$MIFE\FAtw'Vs]7N^F_G c"E? c$i-B w-

LM&

EF
 [[kJFV1134Gfoog6CCEMMOP 5 !C
 ++-HF|''VqVAa[F%:@3v;NN3c&kAA6{Q6!A;&#8..v6q99''/CSXs2c7|TTC $$C $ %%d+%%',s4y88..0"R<--C[1_!)>FVTTC9CKGGCv;?va{f'<511&9!<<C**62B!H3L    "
 **! #& g&&GGMM&))(B.'2-HTS[12	

 ((C%%||C0eSXs5zRR & ))C77C2SY>>C %%'1,??C&&(A-))!,7799:]$$&>  C %%'C6#coo>O:PQQ+0??+<(tT4=DD=DD=DD=DD #8#=#=#?@	!229=58HHH$$&!+..Cu@=NN$D   **,?2c#//:K6LMMC/4)/T,T4tCdJJCCdJJCCdJJCCdJJC//% A* x5578I**95F~~3>>1!S%5%55!!S]]2!S[[0!S%6%66"!S%7%77#!S%9%99%!S__4 !S]]2!S[[0!S[[0!S__4 s6>>;K7LcRRC  "cll2)@)@ARARAT)UUU{S)9%::: 1$}v'888""$q((6+>+>+@@@  "a'**((**.V5N5N5P1QQQ  ""V->->-@)AAA??$$++C 6MCc 9f :U=R=R=TTTC##i l ""C
 	#S! " s   0i
i)(i)__main__)os.pathr[   rM   osgeor   r   r(   r.   r3   r   r   __name__exitr2   r)   r'   <module>r      sT   B  
 
!N0 hh D zHHT#((^ r)   