#!/ usr / bin / env Ġk script Ċ /* Ċ @ file : Kotlin Opts ("- J - X mx 5 0 g ") Ċ @ file : Compiler Opts ("- jvm - target Ġ 1 . 8 ") Ċ @ file : Dep ends On (" io . r tron : r tron - main : 1 . 2 . 2 ") Ċ */ Ċ Ċ /** Ċ Ġ* ĠThis Ġscript Ġlists Ġall Ġthe Ġdifferent Ġconfiguration Ġoptions Ġto Ġtransform ĠOpen DRIVE Ġto ĠCity G ML . Ċ Ġ*/ Ċ Ċ import Ġio . r tron . main . project . process All Files Ċ import Ġio . r tron . reader writer . city gml . City gml Version Ċ Ċ process All Files ( ĊĠĠĠ Ġin Input Directory Ġ= Ġ"/ project / input ", Ġ// Ġadjust Ġpath Ġto Ġdirectory Ġof Ġinput Ġdatasets ĊĠĠĠ Ġwith Extension Ġ= Ġ" x od r ", ĊĠĠĠ Ġto Output Directory Ġ= Ġ"/ project / output " Ġ// Ġadjust Ġpath Ġto Ġoutput Ġdirectory Ċ ) Ċ { ĊĊĠĠĠ Ġval Ġo pend rive Model Ġ= Ġread O pend rive Model ( input FilePath ) ĊĠĠĠ Ġval Ġroad spaces Model Ġ= Ġtransform O pend rive 2 Road spaces ( opend rive Model ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġallowed Ġtolerance Ġwhen Ġcomparing Ġdouble Ġvalues ĊĠĠĠĠĠĠĠ Ġtolerance Ġ= Ġ 1 E - 7 ĊĊĠĠĠĠĠĠĠ Ġ// Ġprefix Ġof Ġattribute Ġnames ĊĠĠĠĠĠĠĠ Ġattributes Prefix Ġ= Ġ" opend rive _" ĊĊĠĠĠĠĠĠĠ Ġ// ĠEPS G Ġcode Ġof Ġthe Ġcoordinate Ġreference Ġsystem Ġ( ob lig atory Ġfor Ġworking Ġwith ĠG IS Ġapplications ) ĊĠĠĠĠĠĠĠ Ġc rs E ps g Ġ= Ġ 3 2 6 3 2 ĊĊĠĠĠĠĠĠĠ Ġ// Ġoffset Ġby Ġwhich Ġthe Ġmodel Ġis Ġtranslated Ġalong Ġthe Ġrespective Ġaxis ĊĠĠĠĠĠĠĠ Ġoffset X Ġ= Ġ 0 . 0 ĊĠĠĠĠĠĠĠ Ġoffset Y Ġ= Ġ 0 . 0 ĊĠĠĠĠĠĠĠ Ġoffset Z Ġ= Ġ 0 . 0 ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġcity gml Model Ġ= Ġtransform Road spaces 2 City gml ( road spaces Model ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġprefix Ġfor Ġgenerated Ġg ml Ġids ĊĠĠĠĠĠĠĠ Ġg ml Id Prefix Ġ= Ġ" UUID _" ĊĊĠĠĠĠĠĠĠ Ġ// Ġprefix Ġfor Ġidentifier Ġattribute Ġnames ĊĠĠĠĠĠĠĠ Ġidentifier Attributes Prefix Ġ= Ġ" identifier _" ĊĊĠĠĠĠĠĠĠ Ġ// Ġtrue , Ġif Ġnested Ġattribute Ġlists Ġshall Ġbe Ġflatten ed Ġout ĊĠĠĠĠĠĠĠ Ġflatten Generic Attribute Sets Ġ= Ġtrue ĊĊĠĠĠĠĠĠĠ Ġ// Ġdistance Ġbetween Ġeach Ġdis cret ization Ġstep Ġfor Ġcurves Ġand Ġsurfaces ĊĠĠĠĠĠĠĠ Ġdis cret ization Step Size Ġ= Ġ 0 . 5 ĊĊĠĠĠĠĠĠĠ Ġ// Ġdistance Ġbetween Ġeach Ġdis cret ization Ġstep Ġfor Ġsolid Ġge ometries Ġof ĠPar ame tric Sweep 3 D ĊĠĠĠĠĠĠĠ Ġsweep Dis cret ization Step Size Ġ= Ġ 0 . 3 ĊĊĠĠĠĠĠĠĠ Ġ// Ġnumber Ġof Ġdis cret ization Ġpoints Ġfor Ġa Ġcircle Ġor Ġcy linder ĊĠĠĠĠĠĠĠ Ġcircle S lices Ġ= Ġ 1 2 ĊĊĠĠĠĠĠĠĠ Ġ// Ġtrue , Ġif Ġrandom Ġids Ġshall Ġbe Ġgenerated Ġfor Ġthe Ġg ml Ġge ometries ĊĠĠĠĠĠĠĠ Ġgenerate Random Geometry Ids Ġ= Ġtrue ĊĊĠĠĠĠĠĠĠ Ġ// Ġif Ġtrue , Ġadditional Ġroad Ġlines Ġ( reference Ġline , Ġlane Ġboundaries ) Ġare Ġexported ĊĠĠĠĠĠĠĠ Ġtransform Additional Road Lines Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠ Ġ// Ġif Ġtrue , Ġonly Ġclasses Ġare Ġpopulated Ġthat Ġare Ġalso Ġavailable Ġin ĠCity G ML 2 ĊĠĠĠĠĠĠĠ Ġmapping Back wards Compatibility Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġwrite City gml Model ( city gml Model ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġset Ġthe ĠCity G ML Ġversions Ġfor Ġwriting ĊĠĠĠĠĠĠĠ Ġversions Ġ= Ġset Of ( City gml Version . V 2 _ 0 , ĠCity gml Version . V 3 _ 0 ) ĊĠĠĠ Ġ} Ċ } Ċ