@maptalks/traffic 0.101.0 → 0.101.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"maptalks.traffic.es.js","sources":["../src/Util.ts","../src/Segment.ts","../src/Curve.ts","../src/LanePosition.ts","../src/Trajectory.ts","../src/Car.ts","../src/ControlSignals.ts","../src/Point.ts","../src/Rect.ts","../src/Intersection.ts","../src/Pool.ts","../src/Lane.ts","../src/Road.ts","../src/TrafficScene.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["idCounter","sample","obj","num","guard","length","Object","values","rand","uniqueId","prefix","id","min","max","Math","floor","random","Segment","constructor","source","target","this","vector","subtract","direction","center","getPoint","split","n","reverse","k","m","len","ref","results","results1","order","i","push","apply","j","ref1","results2","subsegment","atPoint","add","mult","a","b","offset","start","end","Curve","atA","atB","atO","atQ","A","B","O","Q","AO","OQ","QB","point","pointsNumber","prevoiusPoint","index","p0","p1","p2","r0","r1","getDirection","LanePosition","car","lane","position","free","tmpLane","release","relativePosition","nextCarDistance","frontPosition","rearPosition","next","getNext","distance","Infinity","acquire","addCarPosition","removeCar","Trajectory","isChangingLanes","current","temp","absolutePosition","undefined","coords","distanceToStopLine","canEnterIntersection","getDistanceToIntersection","nextIntersection","road","previousIntersection","isValidTurn","nextLane","sourceLane","turnNumber","getTurnDirection","Error","isLeftmost","isRightmost","intersection","sideId","targetSideId","controlSignals","state","timeToMakeTurn","plannedStep","moveForward","_startChangingLanes","popNextLane","tempRelativePosition","gap","_finishChangingLanes","pickNextLane","changeLane","nextPosition","_getAdjacentLaneChangeCurve","direction1","middleLine","normalized","control1","direction2","control2","_getCurve","curve","NaN","ref2","TYPE_OF_CARS","Car","type","color","preferedLane","width","tmpSpeed","maxSpeed","s0","timeHeadway","maxAcceleration","maxDeceleration","alive","trajectory","speed","getAcceleration","distanceToNextCar","deltaSpeed","freeRoadCoeff","pow","distanceGap","timeGap","safeDistance","sqrt","busyRoadCoeff","safeIntersectionDistance","coeff","move","delta","acceleration","currentLane","leftmostAdjacent","rightmostAdjacent","step","console","log","pickNextRoad","possibleRoads","roads","filter","x","nextRoad","laneNumber","lanesNumber","lanes","ControlSignals","flipMultiplier","time","stateNum","lightsFlipInterval","states","flipInterval","stringState","decode","str","indexOf","item","l","call","flip","onTick","Point","y","atan2","ratio","divide","Rect","height","copy","rect","toJSON","assign","area","left","right","top","bottom","containsPoint","containsRect","getVertices","getSide","vertices","getSectorId","abs","getSector","Intersection","inRoads","result","create","prototype","update","len1","Pool","factory","pool","v","objects","keys","get","put","pop","all","clear","Lane","sourceSegment","targetSegment","carsPositions","sourceSideId","leftBorder","rightBorder","other","carPosition","bestDistance","o","Road","gridSize","targetSide","sourceSide","leftmostLane","rightmostLane","side1","base","i1","sourceSplits","targetSplits","leftAdjacent","rightAdjacent","TrafficScene","options","toRemove","carsList","_lastUpdate","_previousTime","_carlayer","GLTFLayer","_timeFactor","_state","_symbols","_instanceMap","carsNumber","set","run","_update","stop","remove","_rafId","cancelAnimationFrame","map","setSymbols","symbols","symbol","url","MultiGLTFMarker","addTo","now","Date","_removeCar","clearTmpRemove","carsMap","cars","_addCar","window","requestAnimationFrame","bind","_updateInstanceData","t","removeData","addData","substring","p","r","coord","pointAtResToCoordinate","maptalks","getGLRes","PI","coordinates","rotation","_getInstanceIndex","updateData","showHideCar","that","animation","Animation","animate","transparent","duration","easing","frame","playState","opacity","styles","setTimeout","play","getAllData","ids","instantSpeed","speeds","reduce","groupgllayer","_groupgllayer","getMap","intersections","save","data","localStorage","world","JSON","stringify","setCarNumber","getCarNumber","load","parse","addIntersection","getIntersection","addRoad","intersectSegment","segment","line","lineSegment","turfSegment","turf","lineString","lineIntersect","features","intersectIndex","geometry","compareLineIndex","segmentIndex","lines","intersectPoints","lineLengthMap","inLines","pre","coordinate","coordinateToPointAtRes","generateTraffic","lengthFlag","intersectCount","compareLine","Points","count","comparePrePoint","intersections_Points","connectRoads","intersections_intersectPoints","preRoad","preInfo","getPre","lineIndex","intersectPoint","refreshCars","addRandomCar","removeRandomCar","getRoad","addCar","getCar"],"mappings":";;;;;;;;;;;AAAA,IAAIA,IAAY;;SAEAC,EAAOC,GAAUC,GAAcC;IAG3C,OADIF,EAAIG,YAAYH,EAAIG,WAAQH,IAAMI,OAAOC,OAAOL,KAC7CA,EAAIM,EAAKN,EAAIG,SAAS;AAGjC;;AAcM,SAAUI,EAASC;IACvB,MAAMC,MAAOX,IAAY;IACzB,OAAOU,IAASA,IAASC,IAAKA;AAChC;;AAEgB,SAAAH,EAAKI,GAAaC;IAKhC,OAJKA,MACHA,IAAMD,GACNA,IAAM,IAEDA,IAAME,KAAKC,MAAMD,KAAKE,YAAYH,IAAMD,IAAM;AACvD;;AC/Bc,MAAOK;IAInB,WAAAC,CAAYC,GAAeC;QACzBC,KAAKF,SAASA,GACdE,KAAKD,SAASA;AACf;IAED,UAAIE;QACF,OAAOD,KAAKD,OAAOG,SAASF,KAAKF;AAClC;IAED,UAAId;QACF,OAAOgB,KAAKC,OAAOjB;AACpB;IAED,aAAImB;QACF,OAAOH,KAAKC,OAAOE;AACpB;IAED,UAAIC;QACF,OAAOJ,KAAKK,SAAS;AACtB;IAED,KAAAC,CAAMC,GAAWC;QACf,IAAIC,GACFC,GACAC,GACAC,GACAC,GACAC;QACF,MAAMC,IAAQP,IACV;YACEK,IAAU;YACV,KACE,IAAIG,IAAKJ,IAAML,IAAI,GACnBK,KAAO,IAAII,KAAK,IAAIA,KAAK,GACzBJ,KAAO,IAAII,MAAMA,KAEjBH,EAAQI,KAAKD;YAEf,OAAOH;AACT,UAAEK,MAAMlB,QACR;YACEc,IAAW;YACX,KACE,IAAIK,IAAI,GAAGC,IAAOb,IAAI,GACtB,KAAKa,IAAOD,KAAKC,IAAOD,KAAKC,GAC7B,KAAKA,IAAOD,MAAMA,KAElBL,EAASG,KAAKE;YAEhB,OAAOL;AACT,UAAEI,MAAMlB,OACNqB,IAAsB;QAC5B,KAAKX,IAAI,GAAGC,IAAMI,EAAM/B,QAAQ0B,IAAIC,GAAKD,KACvCD,IAAIM,EAAML,IACVW,EAASJ,KAAKjB,KAAKsB,WAAWb,IAAIF,IAAIE,IAAI,KAAKF;QAEjD,OAAOc;AACR;IAED,QAAAhB,CAASkB;QACP,OAAOvB,KAAKF,OAAO0B,IAAIxB,KAAKC,OAAOwB,KAAKF;AACzC;IAED,UAAAD,CAAWI,GAAWC;QACpB,MAAMC,IAAS5B,KAAKC,QACd4B,IAAQ7B,KAAKF,OAAO0B,IAAII,EAAOH,KAAKC,KACpCI,IAAM9B,KAAKF,OAAO0B,IAAII,EAAOH,KAAKE;QACxC,OAAO,IAAI/B,EAAQiC,GAAOC;AAC3B;;;ACvEW,MAAOC;IAUnB,WAAAlC,CAAYmC,GAAYC,GAAYC,GAAYC;QAC9CnC,KAAKoC,IAAIJ,GACThC,KAAKqC,IAAIJ,GACTjC,KAAKsC,IAAIJ,GACTlC,KAAKuC,IAAIJ,GACTnC,KAAKwC,KAAK,IAAI5C,EAAQI,KAAKoC,GAAGpC,KAAKsC;QACnCtC,KAAKyC,KAAK,IAAI7C,EAAQI,KAAKsC,GAAGtC,KAAKuC,IACnCvC,KAAK0C,KAAK,IAAI9C,EAAQI,KAAKuC,GAAGvC,KAAKqC,IACnCrC,KAAKW,MAAM;AACZ;IAED,UAAI3B;QACF,IAAIgC,GACF2B,GACAC,GACAC,GACAC;QACF,IAAgB,QAAZ9C,KAAKW,KAIP,KAHAiC,IAAe,IACfC,IAAgB,MAChB7C,KAAKW,MAAM,GAETK,IAAI8B,IAAQ,GACQA,KALP,IAMb9B,MAA0B8B,GAE1BH,IAAQ3C,KAAKK,SAASW,IART;QAST6B,MACF7C,KAAKW,OAAOgC,EAAMzC,SAAS2C,GAAe7D,SAE5C6D,IAAgBF;QAGpB,OAAO3C,KAAKW;AACb;IAED,QAAAN,CAASkB;QACP,MAAMwB,IAAK/C,KAAKwC,GAAGnC,SAASkB,IACtByB,IAAKhD,KAAKyC,GAAGpC,SAASkB,IACtB0B,IAAKjD,KAAK0C,GAAGrC,SAASkB,IACtB2B,IAAK,IAAItD,EAAQmD,GAAIC,GAAI3C,SAASkB,IAClC4B,IAAK,IAAIvD,EAAQoD,GAAIC,GAAI5C,SAASkB;QACxC,OAAO,IAAI3B,EAAQsD,GAAIC,GAAI9C,SAASkB;AACrC;IAED,YAAA6B,CAAa7B;QACX,MAAMwB,IAAK/C,KAAKwC,GAAGnC,SAASkB,IACtByB,IAAKhD,KAAKyC,GAAGpC,SAASkB,IACtB0B,IAAKjD,KAAK0C,GAAGrC,SAASkB,IACtB2B,IAAK,IAAItD,EAAQmD,GAAIC,GAAI3C,SAASkB,IAClC4B,IAAK,IAAIvD,EAAQoD,GAAIC,GAAI5C,SAASkB;QACxC,OAAO,IAAI3B,EAAQsD,GAAIC,GAAIhD;AAC5B;;;AC7DW,MAAOkD;IAOnB,WAAAxD,CAAYyD,GAAUC,GAAaC;QANnCxD,KAAAV,KAAKF,EAAS,iBAEdY,KAAIyD,QAAG,GAKLzD,KAAKsD,MAAMA,GACXtD,KAAKwD,WAAWA,GAChBxD,KAAK0D,UAAUH;AAChB;IAED,QAAIA;QACF,OAAOvD,KAAK0D;AACb;IAED,QAAIH,CAAKA;QACPvD,KAAK2D,WACL3D,KAAK0D,UAAUH;AAChB;IAED,oBAAIK;QACF,OAAO5D,KAAKwD,WAAWxD,KAAKuD,KAAKvE;AAClC;IAED,mBAAI6E;QACF,IAAIC,GAAuBC;QAC3B,MAAMC,IAAOhE,KAAKiE;QAClB,OAAID,KACFD,IAAeC,EAAKR,WAAWQ,EAAKV,IAAItE,SAAS,GACjD8E,IAAgB9D,KAAKwD,WAAWxD,KAAKsD,IAAItE,SAAS;QAC3C;YAAEsE,KAAKU,EAAKV;YAAKY,UAAUH,IAAeD;aAE5C;YAAER,KAAK;YAAMY,UAAUC;;AAC/B;IAED,OAAAC;QACE,IAAIxD;QACJ,OAAiE,SAAvC,SAApBA,IAAMZ,KAAKuD,QAAgB3C,EAAIyD,sBAAiB,MACpDrE,KAAKyD,QAAO;QACLzD,KAAKuD,KAAKc,eAAerE,SAE3B;AACR;IAED,OAAA2D;QACE,IAAI/C;QACJ,QAAKZ,KAAKyD,SAA8B,SAApB7C,IAAMZ,KAAKuD,QAAgB3C,EAAI0D,iBAAY,MAC7DtE,KAAKyD,QAAO;QACLzD,KAAKuD,KAAKe,UAAUtE,SAEtB;AACR;IAED,OAAAiE;QACE,OAAIjE,KAAKuD,SAASvD,KAAKyD,OACdzD,KAAKuD,KAAKU,QAAQjE,QAEpB;AACR;;;AC3DW,MAAOuE;IAOnB,WAAA1E,CAAYyD,GAAUC,GAAYC;QANlCxD,KAAewE,mBAAG,GAOhBxE,KAAKsD,MAAMA,GACXtD,KAAKyE,UAAU,IAAIpB,EAAaC,GAAKC,GAAMC,KAAY,IACvDxD,KAAKyE,QAAQL;QACbpE,KAAKgE,OAAO,IAAIX,EAAaC,IAC7BtD,KAAK0E,OAAO,IAAIrB,EAAaC;AAC9B;IAED,QAAIC;QACF,OAAOvD,KAAK0E,KAAKnB,QAAQvD,KAAKyE,QAAQlB;AACvC;IAED,oBAAIoB;QACF,OAAuB,SAAnB3E,KAAK0E,KAAKnB,aAAoCqB,MAAnB5E,KAAK0E,KAAKnB,OAChCvD,KAAK0E,KAAKlB,WAEZxD,KAAKyE,QAAQjB;AACrB;IAED,oBAAII;QACF,OAAO5D,KAAK2E,mBAAmB3E,KAAKuD,KAAKvE;AAC1C;IAED,aAAImB;QACF,OAAOH,KAAKuD,KAAKH;AAClB;IAED,UAAIyB;QACF,OAAO7E,KAAKuD,KAAKlD,SAASL,KAAK4D;AAChC;IAED,mBAAIC;QACF,MAAMnC,IAAI1B,KAAKyE,QAAQZ,iBACjBlC,IAAI3B,KAAKgE,KAAKH;QACpB,OAAInC,EAAEwC,WAAWvC,EAAEuC,WACVxC,IAEAC;AAEV;IAED,sBAAImD;QACF,OAAK9E,KAAK+E,yBAGHZ,QAFEnE,KAAKgF;AAGf;IAED,oBAAIC;QACF,OAAOjF,KAAKyE,QAAQlB,KAAK2B,KAAKnF;AAC/B;IAED,wBAAIoF;QACF,OAAOnF,KAAKyE,QAAQlB,KAAK2B,KAAKpF;AAC/B;IAED,WAAAsF;QACE,MAAMC,IAAWrF,KAAKsD,IAAI+B,UACpBC,IAAatF,KAAKyE,QAAQlB,MAE1BgC,IAAaD,EAAWE,iBAAiBH;QAC/C,IAAmB,MAAfE,GAAkB,MAAME,MAAM;QAClC,IAAmB,MAAfF,MAAqBD,EAAWI,YAClC,MAAMD,MAAM;QAEd,IAAmB,MAAfF,MAAqBD,EAAWK,aAClC,MAAMF,MAAM;QAEd,QAAO;AACR;IAED,oBAAAV;QACE,MAAMM,IAAWrF,KAAKsD,IAAI+B,UACpBC,IAAatF,KAAKyE,QAAQlB;QAChC,KAAK8B,GACH,QAAO;QAET,MAAMO,IAAe5F,KAAKiF,kBACpBM,IAAaD,EAAWE,iBAAiBH,IACzCQ,IAASP,EAAWJ,KAAKY;QAC/B,OAAOF,EAAaG,eAAeC,MAAMH,GAAQN;AAClD;IAED,yBAAAP;QACE,MAAMd,IACJlE,KAAKyE,QAAQlB,KAAKvE,SAASgB,KAAKsD,IAAItE,SAAS,IAAIgB,KAAKyE,QAAQjB;QAChE,OAAKxD,KAAKwE,kBAGHL,QAFE1E,KAAKD,IAAI0E,GAAU;AAG7B;IAED,cAAA+B,CAAeC;QAIb,YAHoBtB,MAAhBsB,MACFA,IAAc,IAETlG,KAAKgF,+BAA+BkB;AAC5C;IAED,WAAAC,CAAYjC;QACV,IAAItD,GAAWQ;QACf8C,IAAWzE,KAAKD,IAAI0E,GAAU,IAC9BlE,KAAKyE,QAAQjB,YAAYU,GACzBlE,KAAKgE,KAAKR,YAAYU,GACtBlE,KAAK0E,KAAKlB,YAAYU;QAEpBlE,KAAKiG,oBACLjG,KAAK+E,0BACL/E,KAAKoF,iBAELpF,KAAKoG,EAAoBpG,KAAKsD,IAAI+C,eAAe;QAEnD,MAAMC,IACJtG,KAAK0E,KAAKlB,YACiB,SAAzB5C,IAAMZ,KAAK0E,KAAKnB,QAAgB3C,EAAI5B,cAAS,IAC3CuH,IAAM,IAAIvG,KAAKsD,IAAItE;QAazB,OAZIgB,KAAKwE,mBAAmBxE,KAAK0E,KAAKlB,WAAW+C,MAAQvG,KAAKyE,QAAQhB,QACpEzD,KAAKyE,QAAQd;QAGb3D,KAAKwE,mBACLxE,KAAKgE,KAAKP,QACVzD,KAAK0E,KAAKlB,WAAW+C,KACS,SAA1BnF,IAAOpB,KAAK0E,KAAKnB,QAAgBnC,EAAKpC,cAAS,MAEnDgB,KAAKgE,KAAKI;QACRpE,KAAKwE,mBAAmB8B,KAAwB,KAClDtG,KAAKwG,MACHxG,KAAKyE,QAAQlB,QAASvD,KAAKwE,mBAAoBxE,KAAKsD,IAAI+B,WAErD,OADErF,KAAKsD,IAAImD;AAEnB;IAED,UAAAC,CAAWrB;QACT,IAAIrF,KAAKwE,iBAAiB,MAAMiB,MAAM;QACtC,IAAgB,QAAZJ,GAAkB,MAAMI,MAAM;QAClC,IAAIJ,MAAarF,KAAKuD,MAAM,MAAMkC,MAAM;QACxC,IAAIzF,KAAKuD,KAAK2B,SAASG,EAASH,MAAM,MAAMO,MAAM;QAClD,MAAMkB,IAAe3G,KAAKyE,QAAQjB,WAAW,IAAIxD,KAAKsD,IAAItE;QAE1D,OAAOgB,KAAKoG,EAAoBf,GAAUsB;AAC3C;IAGD,CAAAC;QACE,MAAM5D,IAAKhD,KAAKyE,QAAQlB,KAAKlD,SAASL,KAAKyE,QAAQb,mBAC7CX,IAAKjD,KAAKgE,KAAKT,KAAKlD,SAASL,KAAKgE,KAAKJ,mBACvCM,IAAWjB,EAAG/C,SAAS8C,GAAIhE,QAC3B6H,IAAa7G,KAAKyE,QAAQlB,KAAKuD,WAAW7G,OAAO8G,WAAWtF,KACrD,KAAXyC,IAEI8C,IAAWhE,EAAGxB,IAAIqF,IAClBI,IAAajH,KAAKgE,KAAKT,KAAKuD,WAAW7G,OAAO8G,WAAWtF,KAClD,KAAXyC,IAEIgD,IAAWjE,EAAG/C,SAAS+G;QAC7B,OAAO,IAAIlF,EAAMiB,GAAIC,GAAI+D,GAAUE;AACpC;IAGD,CAAAC;QACE,OAAOnH,KAAK4G;AACb;IAGD,CAAAR,CAAoBf,GAAgBsB;QAClC,IAAI3G,KAAKwE,iBACP,MAAMiB,MAAM;QAEd,IAAgB,QAAZJ,GACF,OAAO;QAETrF,KAAKwE,mBAAkB,GAEvBxE,KAAKgE,KAAKT,OAAO8B,GACjBrF,KAAKgE,KAAKR,WAAWmD;QACrB,MAAMS,IAAQpH,KAAKmH;QAGnB,OAFAnH,KAAK0E,KAAKnB,OAAO6D,GACjBpH,KAAK0E,KAAKlB,WAAW,GACbxD,KAAKgE,KAAKR,YAAYxD,KAAK0E,KAAKnB,KAAKvE;AAC9C;IAGD,CAAAwH;QACE,KAAKxG,KAAKwE,iBACR,MAAMiB,MAAM;QAUd,OARAzF,KAAKwE,mBAAkB,GACvBxE,KAAKyE,QAAQlB,OAAOvD,KAAKgE,KAAKT,MAC9BvD,KAAKyE,QAAQjB,WAAWxD,KAAKgE,KAAKR,YAAY;QAC9CxD,KAAKyE,QAAQL,WACbpE,KAAKgE,KAAKT,OAAO,MACjBvD,KAAKgE,KAAKR,WAAW6D,KACrBrH,KAAK0E,KAAKnB,OAAO;QACjBvD,KAAK0E,KAAKlB,WAAW6D,KACdrH,KAAKyE,QAAQlB;AACrB;IAED,OAAAI;QACE,IAAI/C,GAAmBQ,GAAoBkG;QAG3C,OAF4B,SAAvB1G,IAAMZ,KAAKyE,YAAkB7D,EAAI+C,WACZ,SAArBvC,IAAOpB,KAAKgE,SAAe5C,EAAKuC;QACR,SAArB2D,IAAOtH,KAAK0E,QAAgB4C,EAAK3D,iBAAY;AACtD;;;ACjNH,MAAM4D,IAAe;;AAEP,MAAOC;IAkBnB,WAAA3H,CAAY0D,GAAYC;QAjBxBxD,KAAIyH,OAAGtI,EAAKoI,EAAavI,SAAS,IAClCgB,KAAAV,KAAKF,EAAS,QACdY,KAAA0H,SAA6B,MAAM,MAAMjI,KAAKE,WAAY,KAAK;QAC/DK,KAAY2H,eAAG,MAGf3H,KAAK4H,QAAG,GACR5H,KAAMhB,SAAG,GAETgB,KAAQ6H,WAAG,GACX7H,KAAQ8H,WAAG;QACX9H,KAAE+H,KAAG,GACL/H,KAAWgI,cAAG,KACdhI,KAAeiI,kBAAG,GAClBjI,KAAekI,kBAAG;QAClBlI,KAAKmI,SAAG,GAGNnI,KAAKoI,aAAa,IAAI7D,EAAWvE,MAAMuD,GAAMC;AAC9C;IAED,UAAIqB;QACF,OAAO7E,KAAKoI,WAAWvD;AACxB;IAED,SAAIwD;QACF,OAAOrI,KAAK6H;AACb;IAED,SAAIQ,CAAMA;QACJA,IAAQ,MACVA,IAAQ,IAENA,IAAQrI,KAAK8H,aACfO,IAAQrI,KAAK8H,WAEf9H,KAAK6H,WAAWQ;AACjB;IAED,aAAIlI;QACF,OAAOH,KAAKoI,WAAWjI;AACxB;IAED,OAAAwD;QACE,OAAO3D,KAAKoI,WAAWzE;AACxB;IAED,eAAA2E;QACE,IAAI1H;QACJ,MAAMiD,IAAkB7D,KAAKoI,WAAWvE,iBAClC0E,IAAoB9I,KAAKD,IAAIqE,EAAgBK,UAAU,IACvDxC,IAAI1B,KAAKiI,iBACTtG,IAAI3B,KAAKkI,iBACTM,IACJxI,KAAKqI,SAAwC,SAA9BzH,IAAMiD,EAAgBP,OAAe1C,EAAIyH,aAAQ,MAChE,GACII,IAAgBhJ,KAAKiJ,IAAI1I,KAAKqI,QAAQrI,KAAK8H,UAAU,IACrDa,IAAc3I,KAAK+H,IACnBa,IAAU5I,KAAKqI,QAAQrI,KAAKgI,aAE5Ba,IAAeF,IAAcC,IADjB5I,KAAKqI,QAAQG,KAAe,IAAI/I,KAAKqJ,KAAKpH,IAAIC,KAE1DoH,IAAgBtJ,KAAKiJ,IAAIG,IAAeN,GAAmB,IAC3DS,IACJ,IAAIJ,IAAUnJ,KAAKiJ,IAAI1I,KAAKqI,OAAO,MAAM,IAAI1G,IAKzCsH,IAAQ,IAAIR,IAAgBM,IAJRtJ,KAAKiJ,IAC7BM,IAA2BhJ,KAAKoI,WAAWtD,oBAC3C;QAGF,OAAO9E,KAAKiI,kBAAkBgB;AAC/B;IAED,IAAAC,CAAKC;QACH,MAAMC,IAAepJ,KAAKsI;QAE1B,IADAtI,KAAKqI,SAASe,IAAeD,IACxBnJ,KAAKoI,WAAW5D,mBAAmBxE,KAAKqF,UAAU;YACrD,MAAMgE,IAAcrJ,KAAKoI,WAAW3D,QAAQlB,MACtCgC,IAAa8D,EAAY7D,iBAAiBxF,KAAKqF,WAC/CsC,IAAe;gBACnB,QAAQpC;kBACN,KAAK;oBACH,OAAO8D,EAAYC;;kBACrB,KAAK;oBACH,OAAOD,EAAYE;;kBACrB;oBACE,OAAOF;;AAEZ,aAToB;YAUjB1B,MAAiB0B,KACnBrJ,KAAKoI,WAAW1B,WAAWiB;AAE9B;QACD,MAAM6B,IAAOxJ,KAAKqI,QAAQc,IAAQ,KAAMC,IAAe3J,KAAKiJ,IAAIS,GAAO;QAEvE,OADInJ,KAAKoI,WAAWvE,gBAAgBK,WAAWsF,KAAMC,QAAQC,IAAI,YAC7D1J,KAAKoI,WAAWnC,eAAeuD,MACZ,QAAjBxJ,KAAKqF,YACPrF,KAAKmI,SAAQ;QACNnI,KAAKmI,SAGTnI,KAAKoI,WAAWjC,YAAYqD;AACpC;IAED,YAAAG;QACE,MAAM/D,IAAe5F,KAAKoI,WAAWnD,kBAC/BoE,IAAcrJ,KAAKoI,WAAW3D,QAAQlB,MACtCqG,IAAgBhE,EAAaiE,MAAMC,QAAO,SAAUC;YACxD,OAAOA,EAAEhK,WAAWsJ,EAAYnE,KAAKpF;AACvC;QACA,IAA6B,MAAzB8J,EAAc5K,QAAc,OAAO;QAEvC,OADiBJ,EAAOgL;AAEzB;IAED,YAAAnD;QACE,IAAIzG,KAAKqF,UAAU,MAAMI,MAAM;QAC/BzF,KAAKqF,WAAW;QAChB,MAAM2E,IAAWhK,KAAK2J;QACtB,KAAKK,GAAU,OAAO;QACtB,MAAMzE,IACJvF,KAAKoI,WAAW3D,QAAQlB,KAAK2B,KAAKM,iBAAiBwE,IAC/CC,IAAa;YACjB,QAAQ1E;cACN,KAAK;gBACH,OAAOyE,EAASE,cAAc;;cAChC,KAAK;gBACH,OAAO/K,EAAK,GAAG6K,EAASE,cAAc;;cACxC,KAAK;gBACH,OAAO;;YAEX,OAAO;AACR,SAVkB;QAYnB,OADAlK,KAAKqF,WAAW2E,EAASG,MAAMF,IACxBjK,KAAKqF;AACb;IAED,WAAAgB;QACE,MAAMhB,IAAWrF,KAAKqF;QAGtB,OAFArF,KAAKqF,WAAW,MAChBrF,KAAK2H,eAAe,MACbtC;AACR;;;ACpJW,MAAO+E;IAanB,WAAAvK,CAAY+F;QAZZ5F,KAAAqK,iBAAsC,KAAhB5K,KAAKE,WAAiB,KAA3B,GACjBK,KAAIsK,OAAG,GACPtK,KAAQuK,WAAG;QACXvK,KAAkBwK,qBAAG,IACrBxK,KAAAyK,SAAS,EACP,EAAC,KAAK,IAAI,KAAK,MACf,EAAC,MAAM,IAAI,MAAM,MACjB,EAAC,IAAI,KAAK,IAAI,OACd,EAAC,IAAI,MAAM,IAAI;QAKfzK,KAAK4F,eAAeA;AACrB;IAED,gBAAI8E;QACF,OAAO1K,KAAKqK,iBAAiBrK,KAAKwK;AACnC;IAED,SAAIxE;QACF,IAAI2E,IAAc3K,KAAKyK,OAAOzK,KAAKuK,WAAWvK,KAAKyK,OAAOzL;QACtDgB,KAAK4F,aAAaiE,MAAM7K,UAAU,MACpC2L,IAAc,EAAC,OAAO,OAAO,OAAO;QAEtC,MAAM9J,IAAsB;QAC5B,KAAK,IAAIG,IAAI,GAAGL,IAAMgK,EAAY3L,QAAQgC,IAAIL,GAAKK,KAAK;YACtD,MAAM+I,IAAIY,EAAY3J;YACtBH,EAAQI,KAAKjB,KAAK4K,OAAOb;AAC1B;QACD,OAAOlJ;AACR;IAED,MAAA+J,CAAOC;QACL,MAAM7E,IAAQ,EAAC,GAAG,GAAG,KACf8E,IACJ,GAAGA,WACH,SAAUC;YACR,KAAK,IAAI/J,IAAI,GAAGgK,IAAIhL,KAAKhB,QAAQgC,IAAIgK,GAAGhK,KACtC,IAAIA,KAAKhB,QAAQA,KAAKgB,OAAO+J,GAAM,OAAO/J;YAE5C,QAAQ;AACV;QAIF,OAHI8J,EAAQG,KAAKJ,GAAK,QAAQ,MAAG7E,EAAM,KAAK,IACxC8E,EAAQG,KAAKJ,GAAK,QAAQ,MAAG7E,EAAM,KAAK,IACxC8E,EAAQG,KAAKJ,GAAK,QAAQ,MAAG7E,EAAM,KAAK;QACrCA;AACR;IAED,IAAAkF;QACE,OAAQlL,KAAKuK,YAAY;AAC1B;IAED,MAAAY,CAAOhC;QAEL,OADAnJ,KAAKsK,QAAQnB,GACTnJ,KAAKsK,OAAOtK,KAAK0K,gBACnB1K,KAAKkL,QACGlL,KAAKsK,QAAQtK,KAAK0K,gBAErB;AACR;;;AC/DW,MAAOU;IAInB,WAAAvL,CAAYkK,GAAYsB;QAHxBrL,KAAC+J,IAAG,GACJ/J,KAACqL,IAAG,GAGEtB,MAAG/J,KAAK+J,IAAIA,IACZsB,MAAGrL,KAAKqL,IAAIA;AACjB;IAED,UAAIrM;QACF,OAAOS,KAAKqJ,KAAK9I,KAAK+J,IAAI/J,KAAK+J,IAAI/J,KAAKqL,IAAIrL,KAAKqL;AAClD;IAED,aAAIlL;QACF,OAAOV,KAAK6L,MAAMtL,KAAKqL,GAAGrL,KAAK+J;AAChC;IAED,cAAIhD;QACF,OAAO,IAAIqE,EAAMpL,KAAK+J,IAAI/J,KAAKhB,QAAQgB,KAAKqL,IAAIrL,KAAKhB;AACtD;IAED,GAAAwC,CAAImB;QACF,OAAO,IAAIyI,EAAMpL,KAAK+J,IAAIpH,EAAMoH,GAAG/J,KAAKqL,IAAI1I,EAAM0I;AACnD;IAED,QAAAnL,CAASyC;QACP,OAAO,IAAIyI,EAAMpL,KAAK+J,IAAIpH,EAAMoH,GAAG/J,KAAKqL,IAAI1I,EAAM0I;AACnD;IAED,IAAA5J,CAAK8J;QACH,OAAO,IAAIH,EAAMpL,KAAK+J,IAAIwB,GAAOvL,KAAKqL,IAAIE;AAC3C;IAED,MAAAC,CAAOD;QACL,OAAO,IAAIH,EAAMpL,KAAK+J,IAAIwB,GAAOvL,KAAKqL,IAAIE;AAC3C;;;AChCW,MAAOE;IAMnB,WAAA5L,CAAYkK,GAAYsB,GAAYzD,GAAgB8D;QALpD1L,KAAC+J,IAAG,GACJ/J,KAACqL,IAAG,GACJrL,KAAK4H,QAAG,GACR5H,KAAM0L,SAAG,GAGP1L,KAAK+J,IAAIA,KAAK,GACd/J,KAAKqL,IAAIA,KAAK;QACdrL,KAAK4H,QAAQA,KAAS,GACtB5H,KAAK0L,SAASA,KAAU;AACzB;IAED,WAAOC,CAAKC;QACV,OAAO,IAAIH,EAAKG,EAAK7B,GAAG6B,EAAKP,GAAGO,EAAKhE,OAAOgE,EAAKF;AAClD;IAED,MAAAG;QACE,OAAO5M,OAAO6M,OAAO,CAAE,GAAE9L;AAC1B;IAED,IAAA+L;QACE,OAAO/L,KAAK4H,QAAQ5H,KAAK0L;AAC1B;IAED,IAAAM,CAAKA;QAKH,YAJapH,MAAToH,MACFhM,KAAK+J,IAAIiC,IAGJhM,KAAK+J;AACb;IAED,KAAAkC,CAAMA;QAKJ,YAJcrH,MAAVqH,MACFjM,KAAK+J,IAAIkC,IAAQjM,KAAK4H,QAGjB5H,KAAK+J,IAAI/J,KAAK4H;AACtB;IAED,GAAAsE,CAAIA;QAKF,YAJYtH,MAARsH,MACFlM,KAAKqL,IAAIa,IAGJlM,KAAKqL;AACb;IAED,MAAAc,CAAOA;QAKL,YAJevH,MAAXuH,MACFnM,KAAKqL,IAAIc,IAASnM,KAAK0L,SAGlB1L,KAAKqL,IAAIrL,KAAK0L;AACtB;IAED,MAAAtL,CAAOA;QAML,YALewE,MAAXxE,MACFJ,KAAK+J,IAAI3J,EAAO2J,IAAI/J,KAAK4H,QAAQ,GACjC5H,KAAKqL,IAAIjL,EAAOiL,IAAIrL,KAAK0L,SAAS;QAG7B,IAAIN,EAAMpL,KAAK+J,IAAI/J,KAAK4H,QAAQ,GAAG5H,KAAKqL,IAAIrL,KAAK0L,SAAS;AAClE;IAED,aAAAU,CAAczJ;QACZ,IAAI/B,GAAaQ;QACjB,OACEpB,KAAKgM,WAAWpL,IAAM+B,EAAMoH,MAC5BnJ,KAAOZ,KAAKiM,WACZjM,KAAKkM,UAAU9K,IAAOuB,EAAM0I,MAC5BjK,KAAQpB,KAAKmM;AAEhB;IAED,YAAAE,CAAaT;QACX,OACE5L,KAAKgM,UAAUJ,EAAKI,UACpBJ,EAAKK,WAAWjM,KAAKiM,WACrBjM,KAAKkM,SAASN,EAAKM,SACnBN,EAAKO,YAAYnM,KAAKmM;AAEzB;IAED,WAAAG;QACE,OAAO,EACL,IAAIlB,EAAMpL,KAAKgM,QAAQhM,KAAKkM,QAC5B,IAAId,EAAMpL,KAAKiM,SAASjM,KAAKkM,QAC7B,IAAId,EAAMpL,KAAKiM,SAASjM,KAAKmM,WAC7B,IAAIf,EAAMpL,KAAKgM,QAAQhM,KAAKmM;AAE/B;IAED,OAAAI,CAAQvL;QACN,MAAMwL,IAAWxM,KAAKsM;QACtB,OAAO,IAAI1M,EAAQ4M,EAASxL,IAAIwL,GAAUxL,IAAI,KAAK;AACpD;IAED,WAAAyL,CAAY9J;QACV,MAAMf,IAASe,EAAMzC,SAASF,KAAKI;QACnC,IAAIwB,EAAOyJ,KAAK,KAAK5L,KAAKiN,IAAI9K,EAAOmI,MAAMtK,KAAKiN,IAAI9K,EAAOyJ,IAAI,OAAO;QACtE,IAAIzJ,EAAOmI,KAAK,KAAKtK,KAAKiN,IAAI9K,EAAOmI,MAAMtK,KAAKiN,IAAI9K,EAAOyJ,IAAI,OAAO;QACtE,IAAIzJ,EAAOyJ,KAAK,KAAK5L,KAAKiN,IAAI9K,EAAOmI,MAAMtK,KAAKiN,IAAI9K,EAAOyJ,IAAI,OAAO;QACtE,IAAIzJ,EAAOmI,KAAK,KAAKtK,KAAKiN,IAAI9K,EAAOmI,MAAMtK,KAAKiN,IAAI9K,EAAOyJ,IAAI,OAAO;QACtE,MAAM,IAAI5F,MAAM;AACjB;IAED,SAAAkH,CAAUhK;QACR,OAAO3C,KAAKuM,QAAQvM,KAAKyM,YAAY9J;AACtC;;;AC5GW,MAAOiK;IAQnB,WAAA/M,CAAY+L;QAPZ5L,KAAAV,KAAKF,EAAS,iBAQZY,KAAK4L,OAAOA,GACZ5L,KAAK6J,QAAQ,IACb7J,KAAK6M,UAAU;QACf7M,KAAK+F,iBAAiB,IAAIqE,EAAepK;AAC1C;IAED,WAAO2L,CAAK/F;QACVA,EAAagG,OAAOH,EAAKE,KAAK/F,EAAagG;QAC3C,MAAMkB,IAAuB7N,OAAO8N,OAAOH,EAAaI;QAKxD,OAJA/N,OAAO6M,OAAOgB,GAAQlH,IACtBkH,EAAOjD,QAAQ,IACfiD,EAAOD,UAAU,IACjBC,EAAO/G,iBAAiB,IAAIqE,EAAe0C;QACpCA;AACR;IAED,MAAAjB;QACE,OAAO;YAAEvM,IAAIU,KAAKV;YAAIsM,MAAM5L,KAAK4L;;AAClC;IAED,MAAAqB;QACE,IAAI/H,GAAYlE,GAAWG,GAAWR,GAAauM;QACnD,MAAMtM,IAAMZ,KAAK6J;QACjB,KAAK7I,IAAI,GAAGL,IAAMC,EAAI5B,QAAQgC,IAAIL,GAAKK,KACrCkE,IAAOtE,EAAII,IACXkE,EAAK+H;QAEP,MAAM7L,IAAOpB,KAAK6M,SACZhM,IAAsB;QAC5B,KAAKM,IAAI,GAAG+L,IAAO9L,EAAKpC,QAAQmC,IAAI+L,GAAM/L,KACxC+D,IAAO9D,EAAKD,IACZN,EAAQI,KAAKiE,EAAK+H;QAEpB,OAAOpM;AACR;;;AC1CW,MAAOsM;IAInB,WAAAtN,CAAYuN,GAAcC;QACxB,IAAI5M,GAAW6M,GAAQ1M;QAEvB,IANFZ,KAAOuN,UAA4B,IAKjCvN,KAAKoN,UAAUA,GACTC,KAAUA,EAAKE,SAEnB,KAAK9M,KADLG,IAAMyM,EAAKE;QACD3M,GACR0M,IAAI1M,EAAIH,IACFT,KAAKoN,mBAAmB5F,MAC5BxH,KAAKuN,QAAQ9M,KAAMT,KAAKoN,QAAgBzB,KAAK2B;AAIpD;IAED,UAAItO;QACF,OAAOC,OAAOuO,KAAKxN,KAAKuN,SAASvO;AAClC;IAED,MAAA6M;QACE,OAAO7L,KAAKuN;AACb;IAED,GAAAE,CAAInO;QACF,OAAOU,KAAKuN,QAAQjO;AACrB;IAED,GAAAoO,CAAI7O;QACF,OAAQmB,KAAKuN,QAAQ1O,EAAIS,MAAMT;AAChC;IAED,GAAA8O,CAAI9O;QACF,IAAI+B;QACJ,MAAMtB,IAAwB,UAAlBsB,IAAM/B,EAAIS,MAAesB,IAAM/B,GACrCiO,IAAS9M,KAAKuN,QAAQjO;QAK5B,OAJIwN,aAAkBtF,KACpBsF,EAAOnJ,kBAEF3D,KAAKuN,QAAQjO,IACbwN;AACR;IAED,GAAAc;QACE,OAAO5N,KAAKuN;AACb;IAED,KAAAM;QACE,OAAQ7N,KAAKuN,UAAU;AACxB;;;ACrDW,MAAOO;IAanB,WAAAjO,CAAYkO,GAAwBC,GAAwB9I;QAN5DlF,KAAgBsJ,mBAAgB,MAChCtJ,KAAiBuJ,oBAAgB,MAGjCvJ,KAAaiO,gBAAiC;QAG5CjO,KAAK+N,gBAAgBA,GACrB/N,KAAKgO,gBAAgBA,GACrBhO,KAAKkF,OAAOA,GACZlF,KAAKiN;AACN;IAED,gBAAIiB;QACF,OAAOlO,KAAKkF,KAAKgJ;AAClB;IAED,gBAAIpI;QACF,OAAO9F,KAAKkF,KAAKY;AAClB;IAED,eAAIH;QACF,OAAO3F,SAASA,KAAKuJ;AACtB;IAED,cAAI7D;QACF,OAAO1F,SAASA,KAAKsJ;AACtB;IAED,cAAI6E;QACF,OAAO,IAAIvO,EAAQI,KAAK+N,cAAcjO,QAAQE,KAAKgO,cAAcjO;AAClE;IAED,eAAIqO;QACF,OAAO,IAAIxO,EAAQI,KAAK+N,cAAchO,QAAQC,KAAKgO,cAAclO;AAClE;IAED,MAAA+L;QACE,MAAMhN,IAAYI,OAAO6M,OAAO,CAAE,GAAE9L;QAEpC,cADOnB,EAAIoP,eACJpP;AACR;IAED,MAAAoO;QAME,OALAjN,KAAK8G,aAAa,IAAIlH,EACpBI,KAAK+N,cAAc3N,QACnBJ,KAAKgO,cAAc5N;QAErBJ,KAAKhB,SAASgB,KAAK8G,WAAW9H,QACtBgB,KAAKG,YAAYH,KAAK8G,WAAW3G;AAC1C;IAED,gBAAAqF,CAAiB6I;QACf,OAAKA,IAGIrO,KAAKkF,KAAKM,iBAAiB6I,EAAMnJ,QAFjC;AAIV;IAED,YAAA9B;QACE,OAAOpD,KAAKG;AACb;IAED,QAAAE,CAASqB;QACP,OAAO1B,KAAK8G,WAAWzG,SAASqB;AACjC;IAED,cAAA2C,CAAeiK;QACb,IAAIA,EAAYhP,MAAMU,KAAKiO,eACzB,MAAMxI,MAAM;QAEd,OAAQzF,KAAKiO,cAAcK,EAAYhP,MAAMgP;AAC9C;IAED,SAAAhK,CAAUgK;QACR,MAAMA,EAAYhP,MAAMU,KAAKiO,gBAC3B,MAAMxI,MAAM;QAEd,cAAczF,KAAKiO,cAAcK,EAAYhP;AAC9C;IAED,OAAA2E,CAAQqK;QACN,IAAIA,EAAY/K,SAASvD,MACvB,MAAMyF,MAAM;QAEd,IAAIzB,IAA4B,MAC5BuK,IAAepK;QACnB,MAAMvD,IAAMZ,KAAKiO;QACjB,KAAK,MAAM3O,KAAMsB,GAAK;YACpB,MAAM4N,IAAI5N,EAAItB,IACR4E,IAAWsK,EAAEhL,WAAW8K,EAAY9K;aACrCgL,EAAE/K,QAAQ,IAAIS,KAAYA,IAAWqK,MACxCA,IAAerK,GACfF,IAAOwK;AAEV;QACD,OAAOxK;AACR;;;ACxGW,MAAOyK;IAYnB,WAAA5O,CAAYC,GAAuBC,GAAuB2O;QAX1D1O,KAAAV,KAAKF,EAAS,SAOdY,KAAKmK,QAAW,IAChBnK,KAAWkK,cAAkB,MAI3BlK,KAAKF,SAASA;QACdE,KAAKD,SAASA,GACdC,KAAK0O,WAAWA,KAAY,IAC5B1O,KAAKiN;AACN;IAED,UAAIjO;QACF,OAAOgB,KAAK2O,WAAW5O,OAAOG,SAASF,KAAK4O,WAAW9O,QAAQd;AAChE;IAED,gBAAI6P;QACF,OAAO7O,KAAKmK,MAAMnK,KAAKkK,cAAc;AACtC;IAED,iBAAI4E;QACF,OAAO9O,KAAKmK,MAAM;AACnB;IAED,IAAAwB,CAAKzG;QACH,MAAM4H,IAAe7N,OAAO8N,OAAO0B,EAAKzB;QAKxC,OAJA/N,OAAO6M,OAAOgB,GAAQ5H,IACF,QAAhB4H,EAAO3C,UACT2C,EAAO3C,QAAQ,KAEV2C;AACR;IAED,MAAAjB;QACE,OAAO;YAAEvM,IAAIU,KAAKV;YAAIQ,QAAQE,KAAKF,OAAOR;YAAIS,QAAQC,KAAKD,OAAOT;;AACnE;IAED,gBAAAkG,CAAiB6I;QACf,IAAIrO,KAAKD,WAAWsO,EAAMvO,QACxB,MAAM2F,MAAM;QAEd,MAAMsJ,IAAQ/O,KAAK8F;QAEnB,QADcuI,EAAMH,eACJa,IAAQ,IAAI,KAAK;AAClC;IAED,MAAA9B;QACE,IAAIjM,GACFgO,GACAC,GACA9N,GACAP,GACAQ;QACF,KAAMpB,KAAKF,WAAUE,KAAKD,QACxB,MAAM0F,MAAM;QAEdzF,KAAKkO,eAAelO,KAAKF,OAAO8L,KAAKa,YAAYzM,KAAKD,OAAO6L,KAAKxL,WAClEJ,KAAK4O,aAAa5O,KAAKF,OAAO8L,KAC3BW,QAAQvM,KAAKkO,cACb5M,WAAW,IAAK;QACnBtB,KAAK8F,eAAe9F,KAAKD,OAAO6L,KAAKa,YAAYzM,KAAKF,OAAO8L,KAAKxL,WAClEJ,KAAK2O,aAAa3O,KAAKD,OAAO6L,KAC3BW,QAAQvM,KAAK8F,cACbxE,WAAW,GAAG;QACjBtB,KAAKkK,cACwD,IAA3DzK,KAAKF,IAAIS,KAAK4O,WAAW5P,QAAQgB,KAAK2O,WAAW3P;QACnDgB,KAAKkK,cAAczK,KAAKD,IAAI,GAAIQ,KAAKkK,cAAclK,KAAK0O,WAAY;QACpE,MAAMQ,IAAelP,KAAK4O,WAAWtO,MAAMN,KAAKkK,cAAa,IACvDiF,IAAenP,KAAK2O,WAAWrO,MAAMN,KAAKkK;QAChD,IAAkB,QAAdlK,KAAKmK,SAAiBnK,KAAKmK,MAAMnL,SAASgB,KAAKkK,aAEjD,KADkB,QAAdlK,KAAKmK,UAAenK,KAAKmK,QAAQ;QAEnCnJ,IAAIiO,IAAK,GAAGrO,IAAMZ,KAAKkK,cAAc,GACrC,KAAKtJ,IAAMqO,KAAMrO,IAAMqO,KAAMrO,GAC7BI,IAAI,KAAKJ,MAAQqO,MAAOA,GAEM,SAAzBD,IAAOhP,KAAKmK,OAAOnJ,OACtBgO,EAAKhO,KAAK,IAAI8M,EAAKoB,EAAalO,IAAImO,EAAanO,IAAIhB;QAG3D,MAAMa,IAAoB;QAC1B,KACEG,IAAIG,IAAI,GAAGC,IAAOpB,KAAKkK,cAAc,GACrC,KAAK9I,IAAOD,KAAKC,IAAOD,KAAKC,GAC7BJ,IAAI,KAAKI,MAASD,MAAMA,GAExBnB,KAAKmK,MAAMnJ,GAAG+M,gBAAgBmB,EAAalO;QAC3ChB,KAAKmK,MAAMnJ,GAAGgN,gBAAgBmB,EAAanO,IAC3ChB,KAAKmK,MAAMnJ,GAAGoO,eAAepP,KAAKmK,MAAMnJ,IAAI;QAC5ChB,KAAKmK,MAAMnJ,GAAGqO,gBAAgBrP,KAAKmK,MAAMnJ,IAAI,IAC7ChB,KAAKmK,MAAMnJ,GAAGsI,mBAAmBtJ,KAAKmK,MAAMnK,KAAKkK,cAAc;QAC/DlK,KAAKmK,MAAMnJ,GAAGuI,oBAAoBvJ,KAAKmK,MAAM,IAC7CtJ,EAAQI,KAAKjB,KAAKmK,MAAMnJ,GAAGiM;QAE7B,OAAOpM;AACR;;;ACzFW,MAAOyO;IA8BnB,WAAAzP,CAAY0P;QA7BZvP,KAAQwP,WAAG,IAIXxP,KAAQyP,WAAG,IAMXzP,KAAW0P,IAAG,GAGd1P,KAAa2P,IAAG,GAEhB3P,KAAA4P,IAAY,IAAIC,EAAU;QAE1B7P,KAAW8P,IAAG,GAEd9P,KAAM+P,IAAG,QAET/P,KAAQgQ,IAAG,IAEXhQ,KAAYiQ,IAAG,IAObjQ,KAAKuP,UAAUA,KAAW,IAC1BvP,KAAKkQ,aAAalQ,KAAKuP,QAAQW,cAAc;QAC7ClQ,KAAK0O,WAAW1O,KAAKuP,QAAQb,YAAY,IACzC1O,KAAKmQ;AACN;IASD,GAAAC;QACEpQ,KAAK+P,IAAS,WACd/P,KAAKqQ;AACN;IASD,IAAAC;QACEtQ,KAAK+P,IAAS;AACf;IASD,MAAAQ;QACMvQ,KAAKwQ,KACPC,qBAAqBzQ,KAAKwQ,IAE5BxQ,KAAK4P,EAAUW,iBACPvQ,KAAa0Q;AACtB;IAUD,UAAAC,CAAWC;QACT5Q,KAAKgQ,IAAWY;QAChB,KAAK,IAAI5P,IAAI,GAAGA,IAAIhB,KAAKgQ,EAAShR,QAAQgC,KAAK;YAC7C,MAAM6P,IAAS7Q,KAAKgQ,EAAShP;YAC7BhB,KAAKiQ,EAAaY,EAAOC,OAAO,IAAIC,EAAgB,IAAI;gBAAEF;eAAUG,MAClEhR,KAAK4P;AAER;AACF;IAGD,CAAAS;QACE,IAAoB,cAAhBrQ,KAAK+P,GACP;QAEF,MAAMkB,IAAMC,KAAKD;QACjBjR,KAAK0P,IAAcuB;QACnB,MAAM3G,IAAO4G,KAAKD;QAClB,IAMI3R,GANA6J,IAAQmB,IAAOtK,KAAK2P,KAAiB;QACrCxG,IAAQ,QACVA,IAAQ,MAEVnJ,KAAK2P,IAAgBrF,GACrBtK,KAAKmL,OAAQnL,KAAK8P,IAAc3G,IAAS;QAGzC,IAAInI,IAAIhB,KAAKwP,SAASxQ;QACtB,MAAOgC,OACLhB,KAAKmR,EAAWnR,KAAKwP,SAASxO;QAEhChB,KAAKoR;QACL,MAAMC,IAAUrR,KAAKsR,KAAK1D;QAC1B,KAAKtO,KAAM+R,GACTrR,KAAKuR,EAAQF,EAAQ/R;QAEvBU,KAAKwQ,IAASgB,OAAOC,sBAAsBzR,KAAKqQ,EAAQqB,KAAK1R;AAC9D;IAGD,CAAA2R;QACE,KAAK,MAAMC,KAAK5R,KAAKiQ,GACnBjQ,KAAKiQ,EAAa2B,GAAGC;QAEvB,KAAK,MAAMvS,KAAMU,KAAKyP,UAAU;YAC9B,MAAMnM,IAAMtD,KAAKyP,SAASnQ,IACpBwR,IAAMxN,EAAIwN;YAChB9Q,KAAKiQ,EAAaa,GAAKgB,QAAQxO;AAChC;AACF;IAGD,CAAAiO,CAAQjO;QACN,MAAMhE,IAAKgE,EAAIhE,GAAGyS,UAAU;QAC5B,IAAK/R,KAAKyP,SAASnQ,IASZ;YACL,KAAKgE,GACH;YAEF,MAAM0O,IAAI1O,EAAIuB,QACRoN,IAAI3O,EAAInD,WACRuQ,IAAM1Q,KAAK0Q,KACXwB,IAAQxB,EAAIyB,uBAChB,IAAIC,EAAShH,MAAM4G,EAAEjI,IAAI/J,KAAK0O,UAAUsD,EAAE3G,IAAIrL,KAAK0O,WACnDgC,EAAI2B,aAEAlS,IAAa8R,IAAIxS,KAAK6S,KAAM,MAAM;YACxCtS,KAAKyP,SAASnQ,GAAIiT,cAAcL,GAChClS,KAAKyP,SAASnQ,GAAIkT,WAAW,EAAC,GAAG,GAAGrS;YACpC,MAAM2C,IAAQ9C,KAAKyS,EAAkBnT,IAC/BwR,IAAM9Q,KAAKyP,SAASnQ,GAAIwR;YAC1BhO,KAAS,IACX9C,KAAKiQ,EAAaa,GAAK4B,WAAW5P,GAAO9C,KAAKyP,SAASnQ,MAEvDU,KAAKiQ,EAAaa,GAAKgB,QAAQ9R,KAAKyP,SAASnQ;AAEhD,eA9BuB;YACtB,MAAMuR,IACJ7Q,KAAKgQ,EAASvQ,KAAKC,MAAMD,KAAKE,WAAWK,KAAKgQ,EAAShR;YACzDgB,KAAKyP,SAASnQ,KAAM;gBAClBiT,aAAa;gBACbpS,WAAW;gBACX2Q,KAAKD,EAAOC;eAEd9Q,KAAK2S,YAAY3S,KAAKyP,SAASnQ,IAAK;AACrC;AAsBF;IAYD,WAAAqT,CAAYrP,GAAUmE,GAAenI;QACnC,MAKMsT,IAAO5S;QACEoS,EAASS,UAAUC,UAAUC,QANvB;YACnBlC,QAAQ;gBACNmC,aAAa;;WAMf;YACEC,UAAU;YACVC,QAAQ;YAEV,SAAcC;YACZ,IAA8B,cAA1BA,EAAMnN,MAAMoN,WAAyB;gBACvC,IAAIC,IAAU;gBACD,WAAT5L,KACF4L,IAAUF,EAAMG,OAAOzC,OAAOmC,aAE9B1P,EAAIoE,QAAQ,EAAC,GAAG,GAAG,GAAG2L,OACJ,WAAT5L,MACT4L,IAAU,IAAIF,EAAMG,OAAOzC,OAAOmC;gBAElC1P,EAAIoE,QAAQ,EAAC,GAAG,GAAG,GAAG2L,KAClBA,IAAU,OACZE,YAAW;oBAET,MAAMzQ,IAAQ8P,EAAKH,EAAkBnT;oBACrC,KAAKsT,EAAKnD,SAASnQ,IACjB;oBAEF,MAAMwR,IAAM8B,EAAKnD,SAASnQ,GAAIwR;oBAC1BhO,KAAS,KACX8P,EAAK3C,EAAaa,GAAKe,WAAW/O,WAE7B8P,EAAKnD,SAASnQ;AACtB,oBAAE;AAGR;AACH,YAEKkU;AACR;IAGD,CAAAf,CAAkBnT;QAChB,MAAMgE,IAAMtD,KAAKyP,SAASnQ;QAC1B,KAAKgE,GACH,QAAQ;QAEV,MAAMwN,IAAMxN,EAAIwN;QAGhB,OAFc9Q,KAAKiQ,EAAaa,GAAK2C,aACjB3I,QAAQ9K,KAAKyP,SAASnQ;AAE3C;IAGD,CAAA6R,CAAW7R;QACT,MAAMoU,IAAMpU,EAAGyS,UAAU;QACC,QAAtB/R,KAAKyP,SAASiE,MAChB1T,KAAK2S,YAAY3S,KAAKyP,SAASiE,IAAM,QAAQA;AAEhD;IASD,gBAAIC;QACF,MAAMC,IAAS3U,OAAOC,OAAOc,KAAKsR,KAAK1D,OAAO8C,KAAKpN,KAC1CA,EAAI+E;QAEb,OAAsB,MAAlBuL,EAAO5U,SACF,IAGP4U,EAAOC,QAAO,SAAUnS,GAAGC;YACzB,OAAOD,IAAIC;AACb,cAAKiS,EAAO5U;AAEf;IAED,OAAI0R;QACF,MAAMoD,IAAe9T,KAAK+T;QAC1B,OAAID,IACKA,EAAaE,WAEf;AACR;IAUD,KAAAhD,CAAM8C;QACJ9T,KAAK+T,IAAgBD,GACrB9T,KAAK4P,EAAUoB,MAAM8C;AACtB;IASD,GAAA3D,CAAItR;QAOF,OANW,QAAPA,MACFA,IAAM,CAAA,IAERmB,KAAKiU,gBAAgB,IAAI9G,EAAKP,GAAc/N,EAAIoV,gBAChDjU,KAAK6J,QAAQ,IAAIsD,EAAKsB,GAAM5P,EAAIgL;QAChC7J,KAAKsR,OAAO,IAAInE,EAAK3F,GAAK3I,EAAIyS,OACtBtR,KAAKkQ,aAAa;AAC3B;IASD,IAAAgE;QACE,MAAMC,IAAOlV,OAAO6M,OAAO,CAAE,GAAE9L;QAE/B,cADOmU,EAAK7C,MACJE,OAAO4C,aAAaC,QAAQC,KAAKC,UAAUJ;AACpD;IAUD,YAAAK,CAAa1V;QACXkB,KAAKkQ,aAAapR;AACnB;IASD,YAAA2V;QACE,OAAOzU,KAAKkQ;AACb;IAED,IAAAwE;QACE,IAAIP,GAAM7U,GAAIsG,GAAcV;QAG5B,IAFAiP,IAAO3C,OAAO4C,aAAaC,OAC3BF,IAAOA,KAAQG,KAAKK,MAAMR,IACd,QAARA,GACF,OAAO;QAETnU,KAAK6N,SACL7N,KAAKkQ,aAAaiE,EAAKjE,cAAc;QACrC,MAAMtP,IAAMuT,EAAKF;QACjB,KAAK3U,KAAMsB,GACTgF,IAAehF,EAAItB,IACnBU,KAAK4U,gBAAgBhI,EAAajB,KAAK/F;QAEzC,MAAMxE,IAAO+S,EAAKtK,OACZhJ,IAAU;QAChB,KAAKvB,KAAM8B,GACT8D,IAAO9D,EAAK9B,IACZ4F,KAAO,IAAIuJ,GAAO9C,KAAKzG,IACvBA,EAAKpF,SAASE,KAAK6U,gBAAgB3P,EAAKpF;QACxCoF,EAAKnF,SAASC,KAAK6U,gBAAgB3P,EAAKnF,SACxCc,EAAQI,KAAKjB,KAAK8U,QAAQ5P;QAE5B,OAAOrE;AACR;IAWD,gBAAAkU,CAAiBC,GAASC;QACxB,KAAK,IAAIjU,IAAI,GAAGA,IAAIiU,EAAKjW,SAAS,GAAGgC,KAAK;YACxC,MAAMkU,IAAc,EAACD,EAAKjU,IAAIiU,EAAKjU,IAAI,MACjCmU,IAAcC,EAAKC,WAAWH,IAC9BpI,IAASsI,EAAKE,cAAcN,GAASG;YAC3C,IAAKrI,EAAOyI,SAASvW,QAGrB,OAAO;gBACLwW,gBAAgBxU;gBAChBkR,OAAOpF,EAAOyI,SAAS,GAAGE,SAASlD;;AAEtC;QACD,OAAO;AACR;IAED,YAAA3M,CACEoP,GACAU,GACAC,GACAC,GACAC,GACAC;QAEA,MAAMX,IAAcC,EAAKC,WAAWL;QACpC,KAAK,IAAIhU,IAAI0U,IAAmB,GAAG1U,IAAI4U,EAAM5W,QAAQgC,KAAK;YACxD,MAAMiU,IAAOW,EAAM5U,IACb8L,IAAS9M,KAAK+U,iBAAiBI,GAAaF;YAElD,KAAKnI,GACH;YAEF,MAAMiJ,IAAU,CAAA;YAChBA,EAAQL,KAAoB;gBAAEM,KAAKL;eACnCI,EAAQ/U,KAAK;gBAAEgV,KAAKlJ,EAAO0I,iBAAiBM,EAAc9U;;YAC1D,MAAM2B,IAAQ;gBACZoT;gBACAE,YAAYjW,KAAK0Q,IAAIwF,uBACnB;oBAAEnM,GAAG+C,EAAOoF,MAAM;oBAAI7G,GAAGyB,EAAOoF,MAAM;mBACtClS,KAAK0Q,IAAI2B;;YAGbwD,EAAgB5U,KAAK0B;AACtB;AACF;IAUD,eAAAwT,CAAgBP;QACd,KAAK5V,KAAK0Q,KACR;QAEF,MAAMoF,IAAgB,CAAA;QACtB,IAAIM,IAAa;QACjB,KAAK,IAAIpV,IAAI,GAAGA,IAAI4U,EAAM5W,QAAQgC,KAChC8U,EAAc9U,KAAKoV,GACnBA,KAA0BR,EAAM5U,GAAGhC;QAErC,MAAM6W,IAAkB;QACxB,IAAIQ,IAAiB;QACrB,KAAK,IAAIrV,IAAI,GAAGA,IAAI4U,EAAM5W,QAAQgC,KAAK;YACrC,MAAMsV,IAAcV,EAAM5U;YAC1B,KAAK,IAAIG,IAAI,GAAGA,IAAImV,EAAYtX,SAAS,GAAGmC,KAAK;gBAC/C,MAAM6T,IAAU,EAACsB,EAAYnV,IAAImV,EAAYnV,IAAI;gBACjDnB,KAAK4F,aACHoP,GACAhU,GACAqV,IAAiBlV,GACjByU,GACAC,GACAC;AAEH;YACDO,KAAkCC,EAAYtX;AAC/C;QAED,MAAMuX,IAAS;QACf,IAAIC,IAAQ;QACZ,MAAM9F,IAAM1Q,KAAK0Q;QACjB,KAAK,IAAI1P,IAAI,GAAGA,IAAI4U,EAAM5W,QAAQgC,KAAK;YACrC,MAAMiU,IAAOW,EAAM5U;YACnB,KAAK,IAAIG,IAAI,GAAGA,IAAI8T,EAAKjW,QAAQmC,KAAK;gBACpC,MAAM8U,IAAavF,EAAIwF,uBACrB;oBAAEnM,GAAGkL,EAAK9T,GAAG;oBAAIkK,GAAG4J,EAAK9T,GAAG;mBAC5BuP,EAAI2B,aAEA0D,IAAU,CAAA;gBACN,MAAN5U,IACF4U,EAAQ/U,KAAK;oBAAEgV,KAAK;qBACLf,EAAKjW,QACpB+W,EAAQ/U,KAAK;oBAAEgV,KAAK7U,IAAI,IAAIqV;;gBAI9B,MAAM7T,IAAQ;oBACZoT;oBACAE;;gBAEFM,EAAOtV,KAAK0B;AACb;YACD6T,KAAgBvB,EAAKjW;AACtB;QACD,KAAK,IAAIgC,IAAI,GAAGA,IAAIuV,EAAOvX,QAAQgC,KAAK;YACtC,MAAM2B,IAAQ4T,EAAOvV;YACrBhB,KAAKyW,gBAAgB9T,GAAO3B,GAAG6U;AAChC;QAED,MACMrM,IADWxJ,KAAK0O,UAEhBgI,IAAuB;QAC7B,KAAK,IAAI1V,IAAI,GAAGA,IAAIuV,EAAOvX,QAAQgC,KAAK;YACtC,MAAM2B,IAAQ4T,EAAOvV,IACf+I,IAAIpH,EAAMsT,WAAWlM,GACzBsB,IAAI1I,EAAMsT,WAAW5K,GACjBO,IAAO,IAAIH,EAAK1B,IAAIP,IAAO,IAAK6B,IAAI7B,IAAO,IAAK,GAAG,IACnD5D,IAAe,IAAIgH,EAAahB;YACtChG,EAAa+Q,eAAehU,EAAMkH,OAClC6M,EAAqBzV,KAAK2E,IAC1B5F,KAAK4U,gBAAgBhP;AACtB;QACD,MAAMgR,IAAgC;QACtC,KAAK,IAAI5V,IAAI,GAAGA,IAAI6U,EAAgB7W,QAAQgC,KAAK;YAC/C,MAAM2B,IAAQkT,EAAgB7U,IACxB+I,IAAIpH,EAAMsT,WAAWlM,GACzBsB,IAAI1I,EAAMsT,WAAW5K,GACjBO,IAAO,IAAIH,EAAK1B,IAAIP,IAAO,IAAK6B,IAAI7B,IAAO,IAAK,GAAG,IACnD5D,IAAe,IAAIgH,EAAahB;YACtChG,EAAa+Q,eAAehU,EAAMkH,OAClC+M,EAA8B3V,KAAK2E,IACnC5F,KAAK4U,gBAAgBhP;AACtB;QACD,KAAK,IAAI5E,IAAI,GAAGA,IAAI0V,EAAqB1X,QAAQgC,KAAK;YACpD,MAAM4E,IAAe8Q,EAAqB1V,IACpC6I,IAAQjE,EAAa+Q;YAC3B,IAAK9M,GAGL,KAAK,IAAIoI,IAAI,GAAGA,IAAIpI,EAAM7K,QAAQiT,KAAK;gBACrC,MAAM/M,IAAO2E,EAAMoI;gBACnB,IAAgB,QAAZ/M,EAAK8Q,KAAa;oBACpB,IAAIa,IAAU;oBACd,MAAMpP,IAAOvC,EAAKuC;oBACL,WAATA,IACFoP,IAAUH,EAAqBxR,EAAK8Q,OAClB,oBAATvO,MACToP,IAAUD,EAA8B1R,EAAK8Q,OAE/ChW,KAAK8U,QAAQ,IAAIrG,EAAK7I,GAAciR;oBACpC7W,KAAK8U,QAAQ,IAAIrG,EAAKoI,GAASjR;AAChC;AACF;AACF;QAED,KAAK,IAAI5E,IAAI,GAAGA,IAAI4V,EAA8B5X,QAAQgC,KAAK;YAC7D,MAAM4E,IAAegR,EAA8B5V,IAC7C6I,IAAQjE,EAAa+Q;YAC3B,IAAK9M,GAGL,KAAK,IAAIoI,IAAI,GAAGA,IAAIpI,EAAM7K,QAAQiT,KAAK;gBACrC,MAAM/M,IAAO2E,EAAMoI;gBACnB,IAAgB,QAAZ/M,EAAK8Q,KAAa;oBACpB,IAAIa,IAAU;oBACd,MAAMpP,IAAOvC,EAAKuC;oBACL,WAATA,IACFoP,IAAUH,EAAqBxR,EAAK8Q,OAClB,oBAATvO,MACToP,IAAUD,EAA8B1R,EAAK8Q,OAE/ChW,KAAK8U,QAAQ,IAAIrG,EAAK7I,GAAciR;oBACpC7W,KAAK8U,QAAQ,IAAIrG,EAAKoI,GAASjR;AAChC;AACF;AACF;AACF;IAYD,eAAA6Q,CAAgB9T,GAAOG,GAAO+S;QAC5B,MAAMiB,IAAU9W,KAAK+W,OAAOpU;QAC5B,IAAImU,GAAS;YACX,OAAMd,KAAEA,GAAGgB,WAAEA,KAAcF;YAC3B,KAAK,IAAI9V,IAAI,GAAGA,IAAI6U,EAAgB7W,QAAQgC,KAAK;gBAC/C,MAAMiW,IAAiBpB,EAAgB7U;gBAErCiW,EAAelB,QAAQiB,MACvBC,EAAelB,QAAQiB,GAAWhB,QAAQA,MAE1CrT,EAAMkH,QAAQ,EAAC;oBAAEmM,KAAKhV;oBAAGyG,MAAM;qBAC1BwP,EAAepN,QAGlBoN,EAAepN,MAAM5I,KAAK;oBAAE+U,KAAKlT,IAAQ;oBAAG2E,MAAM;qBAFlDwP,EAAepN,QAAQ,EAAC;oBAAEmM,KAAKlT,IAAQ;oBAAG2E,MAAM;;AAKrD;YACI9E,EAAMkH,UACTlH,EAAMkH,QAAQ,EAAC;gBAAEmM,KAAKlT,IAAQ;gBAAG2E,MAAM;;AAE1C;AACF;IAUD,MAAAsP,CAAOpU;QACL,KAAK,MAAMqU,KAAarU,EAAMoT,SAC5B,IAAqC,SAAjCpT,EAAMoT,QAAQiB,GAAWhB,KAC3B,OAAO;YAAEA,KAAKrT,EAAMoT,QAAQiB,GAAWhB;YAAKgB;;QAGhD,OAAO;AACR;IASD,KAAAnJ;QACE,OAAO7N,KAAKmQ,IAAI,CAAA;AACjB;IAED,MAAAhF,CAAOhC;QACL,IAAI7F,GAAKhE,GAAIsG;QACb,IAAIuD,IAAQ,GAAG,MAAM1D,MAAM;QAC3BzF,KAAKkX;QACL,MAAMtW,IAAMZ,KAAKiU,cAAcrG;QAC/B,KAAKtO,KAAMsB,GACTgF,IAAehF,EAAItB,IACnBsG,EAAaG,eAAeoF,OAAOhC;QAErC,MAAM/H,IAAOpB,KAAKsR,KAAK1D,OACjB/M,IAAU;QAChB,KAAKvB,KAAM8B,GACTkC,IAAMlC,EAAK9B,IACXgE,EAAI4F,KAAKC,IACJ7F,EAAI6E,QACJtH,EAAQI,UAAK,KADFJ,EAAQI,KAAKjB,KAAKsE,UAAUhB;QAG9C,OAAOzC;AACR;IASD,WAAAqW;QAIE,OAHIlX,KAAKsR,KAAKtS,SAASgB,KAAKkQ,cAC1BlQ,KAAKmX,gBAEHnX,KAAKsR,KAAKtS,SAASgB,KAAKkQ,aACnBlQ,KAAKoX,oBAEP;AACR;IAUD,OAAAtC,CAAQ5P;QAIN,OAHAlF,KAAK6J,MAAM6D,IAAIxI,IACfA,EAAKpF,OAAO+J,MAAM5I,KAAKiE,IACvBA,EAAKnF,OAAO8M,QAAQ5L,KAAKiE,IAClBA,EAAK+H;AACb;IAUD,OAAAoK,CAAQ/X;QACN,OAAOU,KAAK6J,MAAM4D,IAAInO;AACvB;IAUD,MAAAgY,CAAOhU;QACL,OAAOtD,KAAKsR,KAAK5D,IAAIpK;AACtB;IAUD,MAAAiU,CAAOjY;QACL,OAAOU,KAAKsR,KAAK7D,IAAInO;AACtB;IAUD,SAAAgF,CAAUhB;QAER,OADAtD,KAAKwP,SAASvO,KAAKqC,EAAIhE,KAChBU,KAAKsR,KAAK3D,IAAIrK;AACtB;IASD,cAAA8N;QACEpR,KAAKwP,WAAW;AACjB;IAUD,eAAAoF,CAAgBhP;QACd,OAAO5F,KAAKiU,cAAcvG,IAAI9H;AAC/B;IAUD,eAAAiP,CAAgBvV;QACd,OAAOU,KAAKiU,cAAcxG,IAAInO;AAC/B;IASD,YAAA6X;QACE,IAAI5T;QACJ,MAAM2B,IAAOtG,EAAOoB,KAAK6J,MAAM+D;QAC/B,OAAY,QAAR1I,MACF3B,IAAO3E,EAAOsG,EAAKiF,QACP,QAAR5G,KACKvD,KAAKsX,OAAO,IAAI9P,EAAIjE,MAGxB;AACR;IASD,eAAA6T;QACE,MAAM9T,IAAM1E,EAAOoB,KAAKsR,KAAK1D;QAC7B,OAAW,QAAPtK,IACKtD,KAAKsE,UAAUhB,KAEjB;AACR;;;ACjyBmB,sBAAXkO,UAEHA,OAAOY,aAEPZ,OAAOY,SAAS9C,eAAeA;;;;"}
|
package/dist/maptalks.traffic.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @maptalks/traffic v0.98.6
|
|
3
|
-
* LICENSE : UNLICENSED
|
|
4
|
-
* (c) 2016-2024 maptalks.org
|
|
5
|
-
*/
|
|
6
|
-
!function(t,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports,require("maptalks"),require("@turf/turf"),require("@maptalks/gltf-layer")):"function"==typeof define&&define.amd?define(["exports","maptalks","@turf/turf","@maptalks/gltf-layer"],i):i((t="undefined"!=typeof globalThis?globalThis:t||self).maptalks=t.maptalks||{},t.maptalks,t.turf,t.maptalks)}(this,(function(t,i,s,e){"use strict";function h(t){var i=Object.create(null);return t&&Object.keys(t).forEach((function(s){if("default"!==s){var e=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(i,s,e.get?e:{enumerable:!0,get:function(){return t[s]}})}})),i.default=t,Object.freeze(i)}var n=h(i),r=h(s);let o=0;function u(t,i,s){return t.length!==+t.length&&(t=Object.values(t)),t[c(t.length-1)]}function l(t){const i=++o+"";return t?t+i:i}function c(t,i){return i||(i=t,t=0),t+Math.floor(Math.random()*(i-t+1))}class a{constructor(t,i){this.source=t,this.target=i}get vector(){return this.target.subtract(this.source)}get length(){return this.vector.length}get direction(){return this.vector.direction}get center(){return this.getPoint(.5)}split(t,i){let s,e,h,n,r,o;const u=i?function(){r=[];for(let i=n=t-1;n<=0?i<=0:i>=0;n<=0?i++:i--)r.push(i);return r}.apply(this):function(){o=[];for(let i=0,s=t-1;0<=s?i<=s:i>=s;0<=s?i++:i--)o.push(i);return o}.apply(this),l=[];for(e=0,h=u.length;e<h;e++)s=u[e],l.push(this.subsegment(s/t,(s+1)/t));return l}getPoint(t){return this.source.add(this.vector.mult(t))}subsegment(t,i){const s=this.vector,e=this.source.add(s.mult(t)),h=this.source.add(s.mult(i));return new a(e,h)}}class f{constructor(t,i,s,e){this.A=t,this.B=i,this.O=s,this.Q=e,this.AO=new a(this.A,this.O),this.OQ=new a(this.O,this.Q),this.QB=new a(this.Q,this.B),this.len=null}get length(){let t,i,s,e,h;if(null==this.len)for(s=10,e=null,this.len=0,t=h=0;h<=10;t=++h)i=this.getPoint(t/10),e&&(this.len+=i.subtract(e).length),e=i;return this.len}getPoint(t){const i=this.AO.getPoint(t),s=this.OQ.getPoint(t),e=this.QB.getPoint(t),h=new a(i,s).getPoint(t),n=new a(s,e).getPoint(t);return new a(h,n).getPoint(t)}getDirection(t){const i=this.AO.getPoint(t),s=this.OQ.getPoint(t),e=this.QB.getPoint(t),h=new a(i,s).getPoint(t),n=new a(s,e).getPoint(t);return new a(h,n).direction}}class d{constructor(t,i,s){this.id=l("laneposition"),this.free=!0,this.car=t,this.position=s,this.tmpLane=i}get lane(){return this.tmpLane}set lane(t){this.release(),this.tmpLane=t}get relativePosition(){return this.position/this.lane.length}get nextCarDistance(){let t,i;const s=this.getNext();return s?(i=s.position-s.car.length/2,t=this.position+this.car.length/2,{car:s.car,distance:i-t}):{car:null,distance:1/0}}acquire(){let t;return null!=(null!=(t=this.lane)?t.addCarPosition:void 0)?(this.free=!1,this.lane.addCarPosition(this)):null}release(){let t;return!this.free&&(null!=(t=this.lane)?t.removeCar:void 0)?(this.free=!0,this.lane.removeCar(this)):null}getNext(){return this.lane&&!this.free?this.lane.getNext(this):null}}class g{constructor(t,i,s){this.isChangingLanes=!1,this.car=t,this.current=new d(t,i,s||0),this.current.acquire(),this.next=new d(t),this.temp=new d(t)}get lane(){return this.temp.lane||this.current.lane}get absolutePosition(){return null!==this.temp.lane&&void 0!==this.temp.lane?this.temp.position:this.current.position}get relativePosition(){return this.absolutePosition/this.lane.length}get direction(){return this.lane.getDirection()}get coords(){return this.lane.getPoint(this.relativePosition)}get nextCarDistance(){const t=this.current.nextCarDistance,i=this.next.nextCarDistance;return t.distance<i.distance?t:i}get distanceToStopLine(){return this.canEnterIntersection()?1/0:this.getDistanceToIntersection()}get nextIntersection(){return this.current.lane.road.target}get previousIntersection(){return this.current.lane.road.source}isValidTurn(){const t=this.car.nextLane,i=this.current.lane,s=i.getTurnDirection(t);if(3===s)throw Error("no U-turns are allowed");if(0===s&&!i.isLeftmost)throw Error("no left turns from this lane");if(2===s&&!i.isRightmost)throw Error("no right turns from this lane");return!0}canEnterIntersection(){const t=this.car.nextLane,i=this.current.lane;if(!t)return!0;const s=this.nextIntersection,e=i.getTurnDirection(t),h=i.road.targetSideId;return s.controlSignals.state[h][e]}getDistanceToIntersection(){const t=this.current.lane.length-this.car.length/2-this.current.position;return this.isChangingLanes?1/0:Math.max(t,0)}timeToMakeTurn(t){return void 0===t&&(t=0),this.getDistanceToIntersection()<=t}moveForward(t){let i,s;t=Math.max(t,0),this.current.position+=t,this.next.position+=t,this.temp.position+=t,this.timeToMakeTurn()&&this.canEnterIntersection()&&this.isValidTurn()&&this.t(this.car.popNextLane(),0);const e=this.temp.position/(null!=(i=this.temp.lane)?i.length:void 0),h=2*this.car.length;return this.isChangingLanes&&this.temp.position>h&&!this.current.free&&this.current.release(),this.isChangingLanes&&this.next.free&&this.temp.position+h>(null!=(s=this.temp.lane)?s.length:void 0)&&this.next.acquire(),this.isChangingLanes&&e>=1&&this.i(),!this.current.lane||this.isChangingLanes||this.car.nextLane?null:this.car.pickNextLane()}changeLane(t){if(this.isChangingLanes)throw Error("already changing lane");if(null==t)throw Error("no next lane");if(t===this.lane)throw Error("next lane == current lane");if(this.lane.road!==t.road)throw Error("not neighbouring lanes");const i=this.current.position+3*this.car.length;return this.t(t,i)}h(){const t=this.current.lane.getPoint(this.current.relativePosition),i=this.next.lane.getPoint(this.next.relativePosition),s=i.subtract(t).length,e=this.current.lane.middleLine.vector.normalized.mult(.3*s),h=t.add(e),n=this.next.lane.middleLine.vector.normalized.mult(.3*s),r=i.subtract(n);return new f(t,i,h,r)}o(){return this.h()}t(t,i){if(this.isChangingLanes)throw Error("already changing lane");if(null==t)return 0;this.isChangingLanes=!0,this.next.lane=t,this.next.position=i;const s=this.o();return this.temp.lane=s,this.temp.position=0,this.next.position-=this.temp.lane.length}i(){if(!this.isChangingLanes)throw Error("no lane changing is going on");return this.isChangingLanes=!1,this.current.lane=this.next.lane,this.current.position=this.next.position||0,this.current.acquire(),this.next.lane=null,this.next.position=NaN,this.temp.lane=null,this.temp.position=NaN,this.current.lane}release(){let t,i,s;return null!=(t=this.current)&&t.release(),null!=(i=this.next)&&i.release(),null!=(s=this.temp)?s.release():void 0}}const w=[];class p{constructor(t,i){this.type=c(w.length-1),this.id=l("car"),this.color=(300+240*Math.random()|0)%360,this.preferedLane=null,this.width=2,this.length=2,this.tmpSpeed=0,this.maxSpeed=30,this.s0=2,this.timeHeadway=1.5,this.maxAcceleration=1,this.maxDeceleration=3,this.alive=!0,this.trajectory=new g(this,t,i)}get coords(){return this.trajectory.coords}get speed(){return this.tmpSpeed}set speed(t){t<0&&(t=0),t>this.maxSpeed&&(t=this.maxSpeed),this.tmpSpeed=t}get direction(){return this.trajectory.direction}release(){return this.trajectory.release()}getAcceleration(){let t;const i=this.trajectory.nextCarDistance,s=Math.max(i.distance,0),e=this.maxAcceleration,h=this.maxDeceleration,n=this.speed-(null!=(t=i.car)?t.speed:void 0)||0,r=Math.pow(this.speed/this.maxSpeed,4),o=this.s0,u=this.speed*this.timeHeadway,l=o+u+this.speed*n/(2*Math.sqrt(e*h)),c=Math.pow(l/s,2),a=1+u+Math.pow(this.speed,2)/(2*h),f=1-r-c-Math.pow(a/this.trajectory.distanceToStopLine,2);return this.maxAcceleration*f}move(t){const i=this.getAcceleration();if(this.speed+=i*t,!this.trajectory.isChangingLanes&&this.nextLane){const t=this.trajectory.current.lane,i=t.getTurnDirection(this.nextLane),s=function(){switch(i){case 0:return t.leftmostAdjacent;case 2:return t.rightmostAdjacent;default:return t}}();s!==t&&this.trajectory.changeLane(s)}const s=this.speed*t+.5*i*Math.pow(t,2);return this.trajectory.nextCarDistance.distance<s&&console.log("bad IDM"),this.trajectory.timeToMakeTurn(s)&&null==this.nextLane?(this.alive=!1,this.alive):this.trajectory.moveForward(s)}pickNextRoad(){const t=this.trajectory.nextIntersection,i=this.trajectory.current.lane,s=t.roads.filter((function(t){return t.target!==i.road.source}));if(0===s.length)return null;return u(s)}pickNextLane(){if(this.nextLane)throw Error("next lane is already chosen");this.nextLane=null;const t=this.pickNextRoad();if(!t)return null;const i=this.trajectory.current.lane.road.getTurnDirection(t),s=function(){switch(i){case 0:return t.lanesNumber-1;case 1:return c(0,t.lanesNumber-1);case 2:return 0}return null}();return this.nextLane=t.lanes[s],this.nextLane}popNextLane(){const t=this.nextLane;return this.nextLane=null,this.preferedLane=null,t}}class m{constructor(t){this.flipMultiplier=.4*Math.random()-.2+1,this.time=0,this.stateNum=0,this.lightsFlipInterval=20,this.states=[["L","","L",""],["FR","","FR",""],["","L","","L"],["","FR","","FR"]],this.intersection=t}get flipInterval(){return this.flipMultiplier*this.lightsFlipInterval}get state(){let t=this.states[this.stateNum%this.states.length];this.intersection.roads.length<=2&&(t=["LFR","LFR","LFR","LFR"]);const i=[];for(let s=0,e=t.length;s<e;s++){const e=t[s];i.push(this.decode(e))}return i}decode(t){const i=[0,0,0],s=[].indexOf||function(t){for(let i=0,s=this.length;i<s;i++)if(i in this&&this[i]===t)return i;return-1};return s.call(t,"L")>=0&&(i[0]=1),s.call(t,"F")>=0&&(i[1]=1),s.call(t,"R")>=0&&(i[2]=1),i}flip(){return this.stateNum+=1}onTick(t){return this.time+=t,this.time>this.flipInterval?(this.flip(),this.time-=this.flipInterval):null}}class v{constructor(t,i){this.x=0,this.y=0,t&&(this.x=t),i&&(this.y=i)}get length(){return Math.sqrt(this.x*this.x+this.y*this.y)}get direction(){return Math.atan2(this.y,this.x)}get normalized(){return new v(this.x/this.length,this.y/this.length)}add(t){return new v(this.x+t.x,this.y+t.y)}subtract(t){return new v(this.x-t.x,this.y-t.y)}mult(t){return new v(this.x*t,this.y*t)}divide(t){return new v(this.x/t,this.y/t)}}class b{constructor(t,i,s,e){this.x=0,this.y=0,this.width=0,this.height=0,this.x=t||0,this.y=i||0,this.width=s||0,this.height=e||0}static copy(t){return new b(t.x,t.y,t.width,t.height)}toJSON(){return Object.assign({},this)}area(){return this.width*this.height}left(t){return void 0!==t&&(this.x=t),this.x}right(t){return void 0!==t&&(this.x=t-this.width),this.x+this.width}top(t){return void 0!==t&&(this.y=t),this.y}bottom(t){return void 0!==t&&(this.y=t-this.height),this.y+this.height}center(t){return void 0!==t&&(this.x=t.x-this.width/2,this.y=t.y-this.height/2),new v(this.x+this.width/2,this.y+this.height/2)}containsPoint(t){let i,s;return this.left()<=(i=t.x)&&i<=this.right()&&this.top()<=(s=t.y)&&s<=this.bottom()}containsRect(t){return this.left()<=t.left()&&t.right()<=this.right()&&this.top()<=t.top()&&t.bottom()<=this.bottom()}getVertices(){return[new v(this.left(),this.top()),new v(this.right(),this.top()),new v(this.right(),this.bottom()),new v(this.left(),this.bottom())]}getSide(t){const i=this.getVertices();return new a(i[t],i[(t+1)%4])}getSectorId(t){const i=t.subtract(this.center());if(i.y<=0&&Math.abs(i.x)<=Math.abs(i.y))return 0;if(i.x>=0&&Math.abs(i.x)>=Math.abs(i.y))return 1;if(i.y>=0&&Math.abs(i.x)<=Math.abs(i.y))return 2;if(i.x<=0&&Math.abs(i.x)>=Math.abs(i.y))return 3;throw new Error("algorithm error")}getSector(t){return this.getSide(this.getSectorId(t))}}class M{constructor(t){this.id=l("intersection"),this.rect=t,this.roads=[],this.inRoads=[],this.controlSignals=new m(this)}static copy(t){t.rect=b.copy(t.rect);const i=Object.create(M.prototype);return Object.assign(i,t),i.roads=[],i.inRoads=[],i.controlSignals=new m(i),i}toJSON(){return{id:this.id,rect:this.rect}}update(){let t,i,s,e,h;const n=this.roads;for(i=0,e=n.length;i<e;i++)t=n[i],t.update();const r=this.inRoads,o=[];for(s=0,h=r.length;s<h;s++)t=r[s],o.push(t.update());return o}}class y{constructor(t,i){let s,e,h;if(this.objects={},this.factory=t,i&&i.objects)for(s in h=i.objects,h)e=h[s],this.factory instanceof p||(this.objects[s]=this.factory.copy(e))}get length(){return Object.keys(this.objects).length}toJSON(){return this.objects}get(t){return this.objects[t]}put(t){return this.objects[t.id]=t}pop(t){let i;const s=null!==(i=t.id)?i:t,e=this.objects[s];return e instanceof p&&e.release(),delete this.objects[s],e}all(){return this.objects}clear(){return this.objects={}}}class O{constructor(t,i,s){this.leftmostAdjacent=null,this.rightmostAdjacent=null,this.carsPositions={},this.sourceSegment=t,this.targetSegment=i,this.road=s,this.update()}get sourceSideId(){return this.road.sourceSideId}get targetSideId(){return this.road.targetSideId}get isRightmost(){return this===this.rightmostAdjacent}get isLeftmost(){return this===this.leftmostAdjacent}get leftBorder(){return new a(this.sourceSegment.source,this.targetSegment.target)}get rightBorder(){return new a(this.sourceSegment.target,this.targetSegment.source)}toJSON(){const t=Object.assign({},this);return delete t.carsPositions,t}update(){return this.middleLine=new a(this.sourceSegment.center,this.targetSegment.center),this.length=this.middleLine.length,this.direction=this.middleLine.direction}getTurnDirection(t){return t?this.road.getTurnDirection(t.road):1}getDirection(){return this.direction}getPoint(t){return this.middleLine.getPoint(t)}addCarPosition(t){if(t.id in this.carsPositions)throw Error("car is already here");return this.carsPositions[t.id]=t}removeCar(t){if(!(t.id in this.carsPositions))throw Error("removing unknown car");return delete this.carsPositions[t.id]}getNext(t){if(t.lane!==this)throw Error("car is on other lane");let i=null,s=1/0;const e=this.carsPositions;for(const h in e){const n=e[h],r=n.position-t.position;!n.free&&0<r&&r<s&&(s=r,i=n)}return i}}class L{constructor(t,i,s){this.id=l("road"),this.lanes=[],this.lanesNumber=null,this.source=t,this.target=i,this.gridSize=s||32,this.update()}get length(){return this.targetSide.target.subtract(this.sourceSide.source).length}get leftmostLane(){return this.lanes[this.lanesNumber-1]}get rightmostLane(){return this.lanes[0]}copy(t){const i=Object.create(L.prototype);return Object.assign(i,t),null==i.lanes&&(i.lanes=[]),i}toJSON(){return{id:this.id,source:this.source.id,target:this.target.id}}getTurnDirection(t){if(this.target!==t.source)throw Error("invalid roads");const i=this.targetSideId;return(t.sourceSideId-i-1+8)%4}update(){let t,i,s,e,h,n;if(!this.source||!this.target)throw Error("incomplete road");this.sourceSideId=this.source.rect.getSectorId(this.target.rect.center()),this.sourceSide=this.source.rect.getSide(this.sourceSideId).subsegment(.5,1),this.targetSideId=this.target.rect.getSectorId(this.source.rect.center()),this.targetSide=this.target.rect.getSide(this.targetSideId).subsegment(0,.5),this.lanesNumber=0|Math.min(this.sourceSide.length,this.targetSide.length),this.lanesNumber=Math.max(2,this.lanesNumber/this.gridSize|0);const r=this.sourceSide.split(this.lanesNumber,!0),o=this.targetSide.split(this.lanesNumber);if(null==this.lanes||this.lanes.length<this.lanesNumber)for(null==this.lanes&&(this.lanes=[]),t=s=0,h=this.lanesNumber-1;0<=h?s<=h:s>=h;t=0<=h?++s:--s)null==(i=this.lanes)[t]&&(i[t]=new O(r[t],o[t],this));const u=[];for(t=e=0,n=this.lanesNumber-1;0<=n?e<=n:e>=n;t=0<=n?++e:--e)this.lanes[t].sourceSegment=r[t],this.lanes[t].targetSegment=o[t],this.lanes[t].leftAdjacent=this.lanes[t+1],this.lanes[t].rightAdjacent=this.lanes[t-1],this.lanes[t].leftmostAdjacent=this.lanes[this.lanesNumber-1],this.lanes[t].rightmostAdjacent=this.lanes[0],u.push(this.lanes[t].update());return u}}class x{constructor(t){this.toRemove=[],this.carsList={},this.u=0,this.l=0,this.p=new e.GLTFLayer("traffic"),this.m=5,this.v="stop",this.M=[],this.L={},this.options=t||{},this.carsNumber=this.options.carsNumber||10,this.gridSize=this.options.gridSize||32,this.set()}run(){this.v="running",this.C()}stop(){this.v="stop"}remove(){this.N&&cancelAnimationFrame(this.N),this.p.remove(),delete this.map}setSymbols(t){this.M=t;for(let t=0;t<this.M.length;t++){const i=this.M[t];this.L[i.url]=new e.MultiGLTFMarker([],{symbol:i}).addTo(this.p)}}C(){if("running"!==this.v)return;const t=Date.now();this.u=t;const i=Date.now();let s,e=i-this.l||0;e>100&&(e=100),this.l=i,this.onTick(this.m*e/1e3);let h=this.toRemove.length;for(;h--;)this.j(this.toRemove[h]);this.clearTmpRemove();const n=this.cars.all();for(s in n)this.I(n[s]);this.N=window.requestAnimationFrame(this.C.bind(this))}R(){for(const t in this.L)this.L[t].removeData();for(const t in this.carsList){const i=this.carsList[t],s=i.url;this.L[s].addData(i)}}I(t){const i=t.id.substring(3);if(this.carsList[i]){if(!t)return;const s=t.coords,e=t.direction,h=this.map,r=h.pointAtResToCoordinate(new n.Point(s.x/this.gridSize,s.y/this.gridSize),h.getGLRes()),o=e/Math.PI*180+90;this.carsList[i].coordinates=r,this.carsList[i].rotation=[0,0,o];const u=this.S(i),l=this.carsList[i].url;u>-1?this.L[l].updateData(u,this.carsList[i]):this.L[l].addData(this.carsList[i])}else{const t=this.M[Math.floor(Math.random()*this.M.length)];this.carsList[i]={coordinates:null,direction:null,url:t.url},this.showHideCar(this.carsList[i],"show")}}showHideCar(t,i,s){const e=this;n.animation.Animation.animate({symbol:{transparent:1}},{duration:1e3,easing:"out"},(function(h){if("running"===h.state.playState){let n=0;"show"===i?(n=h.styles.symbol.transparent,t.color=[1,1,1,n]):"hide"===i&&(n=1-h.styles.symbol.transparent,t.color=[1,1,1,n],n<.01&&setTimeout((function(){const t=e.S(s);if(!e.carsList[s])return;const i=e.carsList[s].url;t>-1&&e.L[i].removeData(t),delete e.carsList[s]}),100))}})).play()}S(t){const i=this.carsList[t];if(!i)return-1;const s=i.url;return this.L[s].getAllData().indexOf(this.carsList[t])}j(t){const i=t.substring(3);null!=this.carsList[i]&&this.showHideCar(this.carsList[i],"hide",i)}get instantSpeed(){const t=Object.values(this.cars.all()).map((t=>t.speed));return 0===t.length?0:t.reduce((function(t,i){return t+i}))/t.length}get map(){const t=this.T;return t?t.getMap():null}addTo(t){this.T=t,this.p.addTo(t)}set(t){return null==t&&(t={}),this.intersections=new y(M,t.intersections),this.roads=new y(L,t.roads),this.cars=new y(p,t.cars),this.carsNumber=0}save(){const t=Object.assign({},this);return delete t.cars,window.localStorage.world=JSON.stringify(t)}setCarNumber(t){this.carsNumber=t}getCarNumber(){return this.carsNumber}load(){let t,i,s,e;if(t=window.localStorage.world,t=t&&JSON.parse(t),null==t)return null;this.clear(),this.carsNumber=t.carsNumber||0;const h=t.intersections;for(i in h)s=h[i],this.addIntersection(M.copy(s));const n=t.roads,r=[];for(i in n)e=n[i],e=(new L).copy(e),e.source=this.getIntersection(e.source),e.target=this.getIntersection(e.target),r.push(this.addRoad(e));return r}intersectSegment(t,i){for(let s=0;s<i.length-1;s++){const e=[i[s],i[s+1]],h=r.lineString(e),n=r.lineIntersect(t,h);if(n.features.length)return{intersectIndex:s,coord:n.features[0].geometry.coordinates}}return null}intersection(t,i,s,e,h,n){const o=r.lineString(t);for(let t=i+1;t<e.length;t++){const r=e[t],u=this.intersectSegment(o,r);if(!u)continue;const l={};l[i]={pre:s},l[t]={pre:u.intersectIndex+n[t]};const c={inLines:l,coordinate:this.map.coordinateToPointAtRes({x:u.coord[0],y:u.coord[1]},this.map.getGLRes())};h.push(c)}}generateTraffic(t){if(!this.map)return;const i={};let s=0;for(let e=0;e<t.length;e++)i[e]=s,s+=t[e].length;const e=[];let h=0;for(let s=0;s<t.length;s++){const n=t[s];for(let r=0;r<n.length-1;r++){const o=[n[r],n[r+1]];this.intersection(o,s,h+r,t,e,i)}h+=n.length}const n=[];let r=0;const o=this.map;for(let i=0;i<t.length;i++){const s=t[i];for(let t=0;t<s.length;t++){const e=o.coordinateToPointAtRes({x:s[t][0],y:s[t][1]},o.getGLRes()),h={};0===t?h[i]={pre:null}:(s.length,h[i]={pre:t-1+r});const u={inLines:h,coordinate:e};n.push(u)}r+=s.length}for(let t=0;t<n.length;t++){const i=n[t];this.comparePrePoint(i,t,e)}const u=this.gridSize,l=[];for(let t=0;t<n.length;t++){const i=n[t],s=i.coordinate.x,e=i.coordinate.y,h=new b(s*u-.5,e*u-.5,1,1),r=new M(h);r.connectRoads=i.roads,l.push(r),this.addIntersection(r)}const c=[];for(let t=0;t<e.length;t++){const i=e[t],s=i.coordinate.x,h=i.coordinate.y,n=new b(s*u-.5,h*u-.5,1,1),r=new M(n);r.connectRoads=i.roads,c.push(r),this.addIntersection(r)}for(let t=0;t<l.length;t++){const i=l[t],s=i.connectRoads;if(s)for(let t=0;t<s.length;t++){const e=s[t];if(null!=e.pre){let t=null;const s=e.type;"line"===s?t=l[e.pre]:"line-interact"===s&&(t=c[e.pre]),this.addRoad(new L(i,t)),this.addRoad(new L(t,i))}}}for(let t=0;t<c.length;t++){const i=c[t],s=i.connectRoads;if(s)for(let t=0;t<s.length;t++){const e=s[t];if(null!=e.pre){let t=null;const s=e.type;"line"===s?t=l[e.pre]:"line-interact"===s&&(t=c[e.pre]),this.addRoad(new L(i,t)),this.addRoad(new L(t,i))}}}}comparePrePoint(t,i,s){const e=this.getPre(t);if(e){const{pre:h,lineIndex:n}=e;for(let e=0;e<s.length;e++){const r=s[e];r.inLines[n]&&r.inLines[n].pre===h&&(t.roads=[{pre:e,type:"line-interact"}],r.roads?r.roads.push({pre:i-1,type:"line"}):r.roads=[{pre:i-1,type:"line"}])}t.roads||(t.roads=[{pre:i-1,type:"line"}])}}getPre(t){for(const i in t.inLines)if(null!==t.inLines[i].pre)return{pre:t.inLines[i].pre,lineIndex:i};return null}clear(){return this.set({})}onTick(t){let i,s,e;if(t>1)throw Error("delta > 1");this.refreshCars();const h=this.intersections.all();for(s in h)e=h[s],e.controlSignals.onTick(t);const n=this.cars.all(),r=[];for(s in n)i=n[s],i.move(t),i.alive?r.push(void 0):r.push(this.removeCar(i));return r}refreshCars(){return this.cars.length<this.carsNumber&&this.addRandomCar(),this.cars.length>this.carsNumber?this.removeRandomCar():null}addRoad(t){return this.roads.put(t),t.source.roads.push(t),t.target.inRoads.push(t),t.update()}getRoad(t){return this.roads.get(t)}addCar(t){return this.cars.put(t)}getCar(t){return this.cars.get(t)}removeCar(t){return this.toRemove.push(t.id),this.cars.pop(t)}clearTmpRemove(){this.toRemove=[]}addIntersection(t){return this.intersections.put(t)}getIntersection(t){return this.intersections.get(t)}addRandomCar(){let t;const i=u(this.roads.all());return null!=i&&(t=u(i.lanes),null!=t)?this.addCar(new p(t)):null}removeRandomCar(){const t=u(this.cars.all());return null!=t?this.removeCar(t):null}}"undefined"!=typeof window&&window.maptalks&&(window.maptalks.TrafficScene=x),t.TrafficScene=x,"undefined"!=typeof console&&console.log("@maptalks/traffic v0.98.6")}));
|
|
7
|
-
//# sourceMappingURL=maptalks.traffic.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"maptalks.traffic.js","sources":["../src/Util.ts","../src/Segment.ts","../src/Curve.ts","../src/LanePosition.ts","../src/Trajectory.ts","../src/Car.ts","../src/ControlSignals.ts","../src/Point.ts","../src/Rect.ts","../src/Intersection.ts","../src/Pool.ts","../src/Lane.ts","../src/Road.ts","../src/TrafficScene.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["idCounter","sample","obj","num","guard","length","Object","values","rand","uniqueId","prefix","id","min","max","Math","floor","random","Segment","constructor","source","target","this","vector","subtract","direction","center","getPoint","split","n","reverse","k","m","len","ref","results","results1","order","i","push","apply","j","ref1","results2","subsegment","atPoint","add","mult","a","b","offset","start","end","Curve","atA","atB","atO","atQ","A","B","O","Q","AO","OQ","QB","point","pointsNumber","prevoiusPoint","index","p0","p1","p2","r0","r1","getDirection","LanePosition","car","lane","position","free","tmpLane","release","relativePosition","nextCarDistance","frontPosition","rearPosition","next","getNext","distance","Infinity","acquire","addCarPosition","removeCar","Trajectory","isChangingLanes","current","temp","absolutePosition","undefined","coords","distanceToStopLine","canEnterIntersection","getDistanceToIntersection","nextIntersection","road","previousIntersection","isValidTurn","nextLane","sourceLane","turnNumber","getTurnDirection","Error","isLeftmost","isRightmost","intersection","sideId","targetSideId","controlSignals","state","timeToMakeTurn","plannedStep","moveForward","_startChangingLanes","popNextLane","tempRelativePosition","gap","_finishChangingLanes","pickNextLane","changeLane","nextPosition","_getAdjacentLaneChangeCurve","direction1","middleLine","normalized","control1","direction2","control2","_getCurve","curve","NaN","ref2","TYPE_OF_CARS","Car","type","color","preferedLane","width","tmpSpeed","maxSpeed","s0","timeHeadway","maxAcceleration","maxDeceleration","alive","trajectory","speed","getAcceleration","distanceToNextCar","deltaSpeed","freeRoadCoeff","pow","distanceGap","timeGap","safeDistance","sqrt","busyRoadCoeff","safeIntersectionDistance","coeff","move","delta","acceleration","currentLane","leftmostAdjacent","rightmostAdjacent","step","console","log","pickNextRoad","possibleRoads","roads","filter","x","nextRoad","laneNumber","lanesNumber","lanes","ControlSignals","flipMultiplier","time","stateNum","lightsFlipInterval","states","flipInterval","stringState","decode","str","indexOf","item","l","call","flip","onTick","Point","y","atan2","ratio","divide","Rect","height","copy","rect","toJSON","assign","area","left","right","top","bottom","containsPoint","containsRect","getVertices","getSide","vertices","getSectorId","abs","getSector","Intersection","inRoads","result","create","prototype","update","len1","Pool","factory","pool","v","objects","keys","get","put","pop","all","clear","Lane","sourceSegment","targetSegment","carsPositions","sourceSideId","leftBorder","rightBorder","other","carPosition","bestDistance","o","Road","gridSize","targetSide","sourceSide","leftmostLane","rightmostLane","side1","base","i1","sourceSplits","targetSplits","leftAdjacent","rightAdjacent","TrafficScene","options","toRemove","carsList","_lastUpdate","_previousTime","_carlayer","GLTFLayer","_timeFactor","_state","_symbols","_instanceMap","carsNumber","set","run","_update","stop","remove","_rafId","cancelAnimationFrame","map","setSymbols","symbols","symbol","url","MultiGLTFMarker","addTo","now","Date","_removeCar","clearTmpRemove","carsMap","cars","_addCar","window","requestAnimationFrame","bind","_updateInstanceData","t","removeData","addData","substring","p","r","coord","pointAtResToCoordinate","maptalks","getGLRes","PI","coordinates","rotation","_getInstanceIndex","updateData","showHideCar","that","animation","Animation","animate","transparent","duration","easing","frame","playState","opacity","styles","setTimeout","play","getAllData","ids","instantSpeed","speeds","reduce","groupgllayer","_groupgllayer","getMap","intersections","save","data","localStorage","world","JSON","stringify","setCarNumber","getCarNumber","load","parse","addIntersection","getIntersection","addRoad","intersectSegment","segment","line","lineSegment","turfSegment","turf","lineString","lineIntersect","features","intersectIndex","geometry","compareLineIndex","segmentIndex","lines","intersectPoints","lineLengthMap","inLines","pre","coordinate","coordinateToPointAtRes","generateTraffic","lengthFlag","intersectCount","compareLine","Points","count","comparePrePoint","intersections_Points","connectRoads","intersections_intersectPoints","preRoad","preInfo","getPre","lineIndex","intersectPoint","refreshCars","addRandomCar","removeRandomCar","getRoad","addCar","getCar"],"mappings":"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"}
|