--- a
+++ b/Tools/ModelUtilities/DrawObjects/Circles/Circles.any
@@ -0,0 +1,637 @@
+//Visualisation of coordinate distances 
+//This small tool can help you to find the distances between two points in the local coordinate system.
+//Insert this file in the Refframe you are interested in (e.g. some node) and analyse the distance to some point.
+//right now there are 5 circles per axis, You can define the maximal radius with rm and can also draw colored spheres 
+//SD 2008
+
+
+AnyFloat rm = 0.05;
+AnyFloat lf=1.5;//scale kontrast
+AnyFloat lt=0;//scale transparency
+
+//1st
+AnySurfSphere circ1 = 
+{
+  Radius = .rm/5;
+  
+  
+  AnyDrawParamSurf drwcirc1 = 
+  {
+    RGB = {0.65, 0.2, 0.65}*..lf;
+    
+    ScaleXYZ = {1, 1, 1};
+    Transparency = 0.7*..lt;
+    Face = 2;
+    WireFrameOnOff = Off;
+  };
+};
+
+//2nd
+AnySurfSphere circ2 = 
+{
+  Radius = .rm/5*2;
+  
+  
+  AnyDrawParamSurf drwcirc1 = 
+  {
+    RGB = {0.65, 0.6, 0.2}*..lf;
+    ScaleXYZ = {1, 1, 1};
+    Transparency = 0.5*..lt;
+    Face = 2;
+    WireFrameOnOff = Off;
+  };
+};
+
+//3th
+AnySurfSphere circ3 = 
+{
+  Radius = .rm/5*3;
+  
+  
+  AnyDrawParamSurf drwcirc1 = 
+  {
+    RGB = {0.65, 0.4, 0.65}*..lf;
+    ScaleXYZ = {1, 1, 1};
+    Transparency = 0.4*..lt;
+    Face = 2;
+    WireFrameOnOff = Off;
+  };
+};
+
+//4th
+AnySurfSphere circ4 = 
+{
+  Radius = .rm/5*4;
+  
+  
+  AnyDrawParamSurf drwcirc1 = 
+  {
+    RGB = {0.65, 0.4, 0.65}*..lf;
+    ScaleXYZ = {1, 1, 1};
+    Transparency = 0.3*..lt;
+    Face = 2;
+    WireFrameOnOff = Off;
+  };
+};
+
+//5th
+AnySurfSphere circ5 = 
+{
+  Radius = .rm/5*5;
+  
+  AnyDrawParamSurf drwcirc1 = 
+  {
+    RGB = {0.65, 0.4, 0.65}*..lf;
+    ScaleXYZ = {1, 1, 1};
+    Transparency = 0.2*..lt;
+    Face = 2;
+    WireFrameOnOff = Off;
+  };
+};
+
+//levelcurves x-y
+AnyRefNode lc1 = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ1.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve.any"
+};
+
+AnyRefNode lc2 = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ2.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve.any"
+};
+
+AnyRefNode lc3 = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ3.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve.any"
+};
+
+AnyRefNode lc4 = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ4.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve.any"
+};
+
+AnyRefNode lc5 = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ5.Radius;
+  AnyFloat th = 0.0003;
+  #include "levelcurve.any"
+};
+
+
+//levelcurves z-y
+AnyRefNode lc1a = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ1.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve2.any"
+};
+
+AnyRefNode lc2a = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ2.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve2.any"
+};
+
+AnyRefNode lc3a = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ3.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve2.any"
+};
+
+AnyRefNode lc4a = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ4.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve2.any"
+};
+
+AnyRefNode lc5a = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ5.Radius;
+  AnyFloat th = 0.0003;
+  #include "levelcurve2.any"
+};
+
+
+
+//levelcurves x-z
+AnyRefNode lc1b = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ1.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve3.any"
+};
+
+AnyRefNode lc2b = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ2.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve3.any"
+};
+
+AnyRefNode lc3b = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ3.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve3.any"
+};
+
+
+AnyRefNode lc4b = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ4.Radius;
+  AnyFloat th = 0.0002;
+  #include "levelcurve3.any"
+};
+
+
+AnyRefNode lc5b = {
+  sRel ={0,0,0};
+  AnyFloat ra = .circ5.Radius;
+  AnyFloat th = 0.0003;
+  #include "levelcurve3.any"
+};
+
+
+
+
+
+////additional level curves 
+//AnyRefNode lc1c = {
+//  sRel ={0.0,0,.rm/5};
+//  AnyFloat ra = sqrt((.rm-.circ1.Radius)*2*.rm-(.rm-.circ1.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve.any"
+//};
+////
+//AnyRefNode lc1d = {
+//  sRel ={0.0,0,.rm/5*2};
+//  AnyFloat ra = sqrt((.rm-.circ2.Radius)*2*.rm-(.rm-.circ2.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve.any"
+//};
+//AnyRefNode lc1e = {
+//  sRel ={0.0,0,.rm/5*3};
+//  AnyFloat ra = sqrt((.rm-.circ3.Radius)*2*.rm-(.rm-.circ3.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve.any"
+//};
+//
+//AnyRefNode lc1f = {
+//  sRel ={0.0,0,.rm/5*4};
+//  AnyFloat ra = sqrt((.rm-.circ4.Radius)*2*.rm-(.rm-.circ4.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve.any"
+//};
+//
+//AnyRefNode lc2c = {
+//  sRel ={.rm/5,0,0};
+//  AnyFloat ra = sqrt((.rm-.circ1.Radius)*2*.rm-(.rm-.circ1.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve2.any"
+//};
+//
+//AnyRefNode lc2d = {
+//  sRel ={.rm/5*2,0,0};
+//  AnyFloat ra = sqrt((.rm-.circ2.Radius)*2*.rm-(.rm-.circ2.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve2.any"
+//};
+//AnyRefNode lc2e = {
+//  sRel ={.rm/5*3,0,0};
+//  AnyFloat ra = sqrt((.rm-.circ3.Radius)*2*.rm-(.rm-.circ3.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve2.any"
+//};
+//
+//AnyRefNode lc2f = {
+//  sRel ={.rm/5*4,0,0};
+//  AnyFloat ra = sqrt((.rm-.circ4.Radius)*2*.rm-(.rm-.circ4.Radius)^2);
+//  AnyFloat th = 0.0001;
+//  #include "levelcurve2.any"
+//};
+//
+//AnyRefNode lc3c = {
+//  sRel ={0,.rm/5,0};
+//  AnyFloat ra = sqrt((.rm-.circ1.Radius)*2*.rm-(.rm-.circ1.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve3.any"
+//};
+//
+//AnyRefNode lc3d = {
+//  sRel ={0,.rm/5*2,0};
+//  AnyFloat ra = sqrt((.rm-.circ2.Radius)*2*.rm-(.rm-.circ2.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve3.any"
+//};
+//AnyRefNode lc3e = {
+//  sRel ={0,.rm/5*3,0};
+//  AnyFloat ra = sqrt((.rm-.circ3.Radius)*2*.rm-(.rm-.circ3.Radius)^2);
+//AnyFloat th = 0.0001;
+//  #include "levelcurve3.any"
+//};
+//
+//AnyRefNode lc3f = {
+//  sRel ={0,.rm/5*4,0};
+//  AnyFloat ra = sqrt((.rm-.circ4.Radius)*2*.rm-(.rm-.circ4.Radius)^2);
+//  AnyFloat th = 0.0001;
+//  #include "levelcurve3.any"
+//};
+
+//end additional curves 
+
+
+
+
+
+//AnyDrawRefFrame drwframe = 
+//{
+//  RGB = {0.91796875, 0.76953125, 0.06640625};
+//  ScaleXYZ = {0.1, 0.1, 0.1}*.Scale;
+//  Transparency = 1;
+//  TextFont = 
+//  {
+//  RGB = {0, 0, 0};
+//  FontName = "Times New Roman";
+//  Height = 20;
+//  Width = 8;
+//  Bold = Off;
+//  Italic = Off;
+//  };
+//};
+//Draw Axes
+AnyChart drwchart = 
+{ 
+  Style = 
+  {
+    Style = CartesianChart3D;
+    Sizes = {..rm,..rm,..rm};
+    Axes = 
+    {
+      Style = Line3DStyleFull;
+      Thickness = 1;
+      RGB = {0.25, 0.25, 0.25};
+    };
+    Title = 
+    {
+      Visible = On;
+      Font = 
+      {
+        RGB = {0, 0, 0};
+        FontName = "Times New Roman";
+        Height = 0;
+        Width = 0;
+        Bold = Off;
+        Italic = Off;
+      };
+      Text = "y";
+    };
+    MessageFont = 
+    {
+      RGB = {0, 0, 0};
+      FontName = "Times New Roman";
+      Height = 1;
+      Width = 1;
+      Bold = Off;
+      Italic = Off;
+    };
+  };
+  /*Legend = 
+  {
+  Visible = Off;
+  };*/
+  AbsAxis = 
+  {
+    Visible = On;
+    Min = 0;
+    Max = ..rm;
+    AutoMin = On;
+    AutoMax = On;
+    Title = 
+    {
+      Visible = On;
+      Font = 
+      {
+        RGB = {0, 0, 0};
+        FontName = "Times New Roman";
+        Height = 20;
+        Width = 8;
+        Bold = On;
+        Italic = Off;
+      };
+      Text = "x";
+    };
+    Unit1 = 
+    {
+      Visible = On;
+      AutoUnit = On;
+      
+      Divisions = 5;
+      Unit = ...rm/5;
+      TickInside = 0;
+      TickOutside = 0;
+      GridLines = Off;
+      GridLineStyle = 
+      {
+        Style = Line3DStyleFull;
+        Thickness = 1;
+        RGB = {0.25, 0.25, 0.25};
+      };
+      Text = On;
+      TextFont = 
+      {
+        RGB = {0, 0, 0};
+        FontName = "Times New Roman";
+        Height = 20;
+        Width = 8;
+        Bold = Off;
+        Italic = Off;
+      };
+      TextSpace = 0;
+      NumberFormat = 
+      {
+        Digits = 2;
+        Style = 0;
+        Scale = Off;
+        ScaleVal = 1;
+      };
+    };
+  };
+  ValueAxis = 
+  {
+    Visible = On;
+    Min = 0;
+    Max = ..rm;
+    AutoMin = On;
+    AutoMax = On;
+    Title = 
+    {
+      Visible = On;
+      Font = 
+      {
+        RGB = {0, 0, 0};
+        FontName = "Times New Roman";
+        Height = 20;
+        Width = 8;
+        Bold = On;
+        Italic = Off;
+      };
+      Text = "z";
+    };
+    Unit1 = 
+    {
+      Visible = On;
+      AutoUnit = On;
+      Divisions = 5;
+      Unit = ...rm/5;
+      TickInside = 0;
+      TickOutside = 0;
+      GridLines = Off;
+      GridLineStyle = 
+      {
+        Style = Line3DStyleFull;
+        Thickness = 1;
+        RGB = {0.25, 0.25, 0.25};
+      };
+      Text = On;
+      TextFont = 
+      {
+        RGB = {0, 0, 0};
+        FontName = "Times New Roman";
+        Height = 20;
+        Width =8;
+        Bold = Off;
+        Italic = Off;
+      };
+      TextSpace = 0;
+      NumberFormat = 
+      {
+        Digits = 2;
+        Style = 1;
+        Scale = Off;
+        ScaleVal = 1;
+      };
+    };
+  };
+  //AnyChartSerie &<Insert name0> = <Insert object reference (or full object definition)>; You can make any number of these objects!
+};
+
+
+AnyRefNode Rotaxes = {
+  sRel ={0,0,0};
+  ARel = {{0,1,0},{0,0,1},{1,0,0}};
+  AnyChart drwchart = 
+  { 
+    Series = 
+    {
+      //RGBdef = ;
+      //AnyChartSerie &<Insert name0> = <Insert object reference (or full object definition)>; You can make any number of these objects!
+    };
+    Style = 
+    {
+      Style = CartesianChart3D;
+      Sizes = {...rm,...rm,...rm};
+      Axes = 
+      {
+        Style = Line3DStyleFull;
+        Thickness = 1;
+        RGB = {0.25, 0.25, 0.25};
+      };
+      Title = 
+      {
+        Visible = On;
+        Font = 
+        {
+          RGB = {0, 0, 0};
+          FontName = "Times New Roman";
+          Height = 0;
+          Width = 0;
+          Bold = Off;
+          Italic = Off;
+        };
+        Text = "";
+      };
+      MessageFont = 
+      {
+        RGB = {0, 0, 0};
+        FontName = "Times New Roman";
+        Height = 1;
+        Width = 1;
+        Bold = Off;
+        Italic = Off;
+      };
+    };
+    /*Legend = 
+    {
+    Visible = Off;
+    };*/
+    AbsAxis = 
+    {
+      Visible = Off;
+      Min = 0;
+      Max = ...rm;
+      AutoMin = On;
+      AutoMax = On;
+      Title = 
+      {
+        Visible = On;
+        Font = 
+        {
+          RGB = {0, 0, 0};
+          FontName = "Times New Roman";
+          Height = 20;
+          Width = 8;
+          Bold = Off;
+          Italic = Off;
+        };
+        Text = "";
+      };
+      Unit1 = 
+      {
+        Visible = On;
+        AutoUnit = On;
+        
+        Divisions = 5;
+        Unit = ....rm/5;
+        TickInside = 0;
+        TickOutside = 0;
+        GridLines = Off;
+        GridLineStyle = 
+        {
+          Style = Line3DStyleFull;
+          Thickness = 1;
+          RGB = {0.25, 0.25, 0.25};
+        };
+        Text = On;
+        TextFont = 
+        {
+          RGB = {0, 0, 0};
+          FontName = "Times New Roman";
+          Height = 20;
+          Width = 8;
+          Bold = Off;
+          Italic = Off;
+        };
+        TextSpace = 0;
+        NumberFormat = 
+        {
+          Digits = 2;
+          Style = 0;
+          Scale = Off;
+          ScaleVal = 1;
+        };
+      };
+    };
+    ValueAxis = 
+    {
+      Visible = On;
+      Min = 0;
+      Max = ...rm;
+      AutoMin = On;
+      AutoMax = On;
+      Title = 
+      {
+        Visible = On;
+        Font = 
+        {
+          RGB = {0, 0, 0};
+          FontName = "Times New Roman";
+          Height = 20;
+          Width = 8;
+          Bold = On;
+          Italic = Off;
+        };
+        Text = "y";
+      };
+      Unit1 = 
+      {
+        Visible = On;
+        AutoUnit = On;
+        Divisions = 5;
+        Unit = ....rm/5;
+        TickInside = 0;
+        TickOutside = 0;
+        GridLines = Off;
+        GridLineStyle = 
+        {
+          Style = Line3DStyleFull;
+          Thickness = 1;
+          RGB = {0.25, 0.25, 0.25};
+        };
+        Text = On;
+        TextFont = 
+        {
+          RGB = {0, 0, 0};
+          FontName = "Times New Roman";
+          Height = 20;
+          Width =8;
+          Bold = Off;
+          Italic = Off;
+        };
+        TextSpace = 0;
+        NumberFormat = 
+        {
+          Digits = 2;
+          Style = 1;
+          Scale = Off;
+          ScaleVal = 1;
+        };
+      };
+    };
+    //AnyChartSerie &<Insert name0> = <Insert object reference (or full object definition)>; You can make any number of these objects!
+  };
+};
+//Draw Axes
+
+
+