#!/usr/bin/env wolframscript -local (* ::Package:: *) (* ::Input:: *) fileName="one_case_data-2d.txt"; generateNewCase=1; imageSize=800; Import["sample_data_parser.wl"] rangeX={Min[Table[dat[C][[i,1]]-dat[R][[i]],{i,1,dat[n]}]], Max[Table[dat[C][[i,1]]+dat[R][[i]],{i,1,dat[n]}]]}; rangeY={Min[Table[dat[C][[i,2]]-dat[R][[i]],{i,1,dat[n]}]], Max[Table[dat[C][[i,2]]+dat[R][[i]],{i,1,dat[n]}]]}; graphColors={Darker[Red],Darker[Green],Darker[Blue],Darker[Cyan], Darker[Magenta],Darker[Yellow],Darker[Brown],Darker[Orange], Darker[Pink],Darker[Purple], LightRed,LightGreen,LightBlue,LightCyan,LightMagenta,LightYellow, LightBrown,LightOrange,LightPink}; lambdaFunc[pPnt_]:=-Sum[ Abs[EuclideanDistance[pPnt,dat[C][[i]]]-dat[R][[i]]],{i,1,dat[n]}]; heatMapGraph=DensityPlot[lambdaFunc[{x,y}],{x,rangeX[[1]],rangeX[[2]]}, {y,rangeY[[1]],rangeY[[2]]},AspectRatio->{1,1},(*PlotLegends->Automatic,*) ColorFunction->"Rainbow",ImageSize->imageSize]; inhSize=ImageDimensions[heatMapGraph]; circlesGraph=Graphics[Table[{ Thickness[Medium],graphColors[[i]],Circle[dat[C][[i]],dat[R][[i]]]}, {i,1,dat[n]}],ImageSize->inhSize]; centersGraph=Graphics[Table[{ Thickness[Large],graphColors[[i]],Point[dat[C][[i]]]},{i,1,dat[n]}], ImageSize->inhSize]; routesGraphs=Table[Graphics[{ Thickness[Medium],Black,Line[{Table[rts[[j]][[i]][P], {i,1,Length[rts[[j]]]}]}]},ImageSize->inhSize],{j,1,Length[rts]}]; stFinGraphs=Table[Graphics[{ {Thickness[Medium],Inset[Style["\[CircleTimes]",20],rts[[j,1]][P]]}, {Thickness[Medium],Black,Circle[rts[[j,Length[rts[[j]]]]][P],0.05]}, {Thickness[Large],Black,Point[rts[[j,Length[rts[[j]]]]][P]]} },ImageSize->inhSize],{j,1,Length[rts]}]; bestGuessGraph=Graphics[{ Thickness[Large],Darker[Purple],Inset[Style["+",20],bestGuess[P]]}, ImageSize->inhSize]; realPointGraph=Graphics[{ Thickness[Large],Darker[Purple],Inset[Style["*",20],dat[realPoint]]} ,ImageSize->inhSize]; listOfGraphs=Table[Labeled[Show[heatMapGraph,centersGraph,circlesGraph, routesGraphs[[i]],stFinGraphs[[i]], bestGuessGraph,realPointGraph], "Maximum of sensors uncertainty: "<> ToString[dat[unc]]<> "; Number of known spheres: "<>ToString[dat[n]]<> ";\nStart point #"<>ToString[i]<> "; Final error: "<>ToString[dat[error]]], {i,1,Length[rts]}] Table[Export["sample_start_point_"<>ToString[i]<>".png",listOfGraphs[[i]], OverwriteTarget->True],{i,1,Length[rts]}] (*Table[Export["sample_start_point_"<>ToString[i]<>".svg",listOfGraphs[[i]], OverwriteTarget->True],{i,1,Length[rts]}]*)