ILNumerics.Drawing.Platforms 7.0.58-beta01

Prefix Reserved
This is a prerelease version of ILNumerics.Drawing.Platforms.
There is a newer version of this package available.
See the version list below for details.
dotnet add package ILNumerics.Drawing.Platforms --version 7.0.58-beta01                
NuGet\Install-Package ILNumerics.Drawing.Platforms -Version 7.0.58-beta01                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ILNumerics.Drawing.Platforms" Version="7.0.58-beta01" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ILNumerics.Drawing.Platforms --version 7.0.58-beta01                
#r "nuget: ILNumerics.Drawing.Platforms, 7.0.58-beta01"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install ILNumerics.Drawing.Platforms as a Cake Addin
#addin nuget:?package=ILNumerics.Drawing.Platforms&version=7.0.58-beta01&prerelease

// Install ILNumerics.Drawing.Platforms as a Cake Tool
#tool nuget:?package=ILNumerics.Drawing.Platforms&version=7.0.58-beta01&prerelease                

ILNumerics Ultimate VS

This package is part of ILNumerics Ultimate VS - a powerful framework for technical application development on .NET. ILNumerics provides packages for the convenient authoring of:

Compatibility

ILNumerics is compatible with all .NET runtimes since .NET Framework 4.6.1., including .NET Core, .NET 5.0, .NET 6.0.

We've invested great effort to translate and keep up to date the quasi standard algorithms for all computational routines, including linear algebra, FFT and optimization methods. These purely managed implementations are the first to bring professional robustness and precision to .NET. Hence, ILNumerics runs efficiently on any platform supported by .NET! Optionally, native libraries can be used to replace the managed default implementation. For the Windows platform, such native, optimized libraries are provided, too.

Performance

ILNumerics apps are typically much faster than alternatives: faster to implement and faster during execution. With ILNumerics the size of your data is not limited by the managed heap. ILNumerics n-dimensional Array<T> bridges the gap from high-level mathematical expressions down to native memory robustly, efficiently, and transparently. It allows to connect your data to any 3rd party without hassle. Further, it is able to host your data on any computational resource found, including CPUs and GPUs - key for heterogeneous, parallel computing.

Visualization Engine (dynamic controls)

Start with this package for authoring of interactive professional, technical visualizations in 2D and 3D. This package enables one to utilize any scene graph configured with ILNumerics Visualization Engine to be displayed inside a specialized Windows.Forms control: ILNumerics.Drawing.Panel. Hardware accelerated rendering (OpenGL) ensures fast interactions even for large data. The control can be used on Windows in .NET Framework, .NET Core / .NET5... applications within in Windows Forms and WPF (via WinformsHost control) projects.

For robust distribution on legacy machines a fully featured fallback renderer based on GDI+ is included. Mouse eventing (bubbling) and picking is supported as well as standard mouse interace: rotation, panning, zoom. All scenes and parts of it are designed to be dynamically updatable.

For static visualizations and offscreen rendering on any platform start with ILNumerics.Drawing.

For more / faster / more complex plotting types see the ILNumerics.Toolboxes.Drawing2 package.

In order to write efficient algorithms, use the Computing Engine package. While not being a requirement, it is often handy for data pre-processing.

General Preparation

Quick Start - in Visual Studio

  • Create a new C# Windows Forms application.

  • reference the ILNumerics.Drawing.Platforms package in your project.

  • reference the Computing Engine package in your project.

  • Include the following 'using' directives (C#) on top of your Form1.cs file:

      using ILNumerics;
      using ILNumerics.Drawing;
      using ILNumerics.Drawing.Plotting;
      using static ILNumerics.ILMath;
      using static ILNumerics.Globals; 
    
  • Add the following code to the Form1 class:

      ILNumerics.Drawing.Panel m_panel; 
      protected override void OnLoad(EventArgs e) {
          base.OnLoad(e);
          // create and wire up a new 3D panel: 
          m_panel = new ILNumerics.Drawing.Panel();
          m_panel.Load += M_panel_Load;
          Controls.Add(m_panel);
          // any size is fine: 
          m_panel.Dock = DockStyle.Fill;
      }
    
      private void M_panel_Load(object sender, EventArgs e) {
          // simple example data
          Array<float> A = tosingle(ILNumerics.SpecialData.sinc(30, 20));
          // a new 3D surface 
          var surf = new Surface(A, colormap: Colormaps.Copper);
          // add a colorbar
          surf.Add(new Colorbar());
          // add a plot cube and insert the surface
          m_panel.Scene.Add(new PlotCube(twoDMode: false) { surf }); 
      }
    
  • Hit F5, resize and rotate the scene.

  • read the beginners guide and start writing more visualizations!

Documentation

Examples

ILNumerics example collection

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.1 is compatible. 
.NET Framework net461 is compatible.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on ILNumerics.Drawing.Platforms:

Package Downloads
ILNEditor

Properties editor and plot browser for ILNumerics (http://ilnumerics.net/) scene graphs and plot cubes

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
7.0.245-rc03 70 10/11/2024
7.0.230-rc02 73 10/4/2024
7.0.223-rc01 69 9/28/2024
7.0.163 136 7/16/2024
7.0.121 185 4/5/2024
7.0.115 110 4/3/2024
7.0.104 119 3/30/2024
7.0.58-beta01 199 11/1/2022
7.0.54-beta01 144 11/1/2022
6.0.148 832 6/1/2022
6.0.127 374 1/7/2022
6.0.124 440 11/16/2021
6.0.120 422 10/28/2021
6.0.115 433 8/26/2021
6.0.111 691 8/24/2021
6.0.86 335 8/18/2021
6.0.78 338 8/15/2021
6.0.69-beta05 218 7/28/2021
6.0.68-beta04 261 7/21/2021
6.0.53-beta03 288 7/12/2021
6.0.48-beta02 372 7/11/2021 6.0.48-beta02 is deprecated because it is no longer maintained and has critical bugs.
6.0.43-beta01 358 7/7/2021 6.0.43-beta01 is deprecated because it is no longer maintained and has critical bugs.