# Basic Features of Mini GaussSense

### Tutorials - GaussToys Developers

With GaussSense SDK for Processing, you can easily visualize the magnetic field on Mini GaussSense as well as the bipolar points (north and south), roll angle, and pitch angle of tilt. In this tutorial, you will learn how to use the examples of GaussSense SDK to showcase the basic features of Mini GaussSense.

Open File > Examples… > Contributed Libraries > GaussSense SDK for Processing. You can see 9 examples in the Basics folder. We are going through the first 5 examples here.

## 1. Draw Raw Data

Open `e1_HelloGaussSense` example, you can see a function called `drawRawData2D` . This function draws the magnetic field sensed by Mini GaussSense in 2D. Simply change the value of `this.width` and `this.height` to create images of the size you want.

`gs.drawRawData2D(this.width, this.height);` ## 2. Draw Smooth Data

In the second example `e2_UpsampledData2d` , you can use the `drawUpsampledData2D` function to draw a smoother magnetic field.

```int upsampleFactor = 5; // Set between 1 ~ 10
gs.drawUpsampledData2D(this.width, this.height, upsampleFactor);``` GData

Before moving on, let's first take a look at the GData data type.
GData stores useful information about a polar point such as its position in the Processing window, intensity, pitch and roll angles, etc.

Get Methods Return Type Meaning
`getX()`floatGet the X coordinate on the display.
`getY()`floatGet the Y coordinate on the display.
`getIntensity()`intGet the magnetic field intensity. Unit: Gauss
`getAngle()`floatGet the angle of roll. Unit: Radian
`getPitch()`floatGet the pitch of tilt.
`getPolarity()`intGet the polarity of magnetic field. (0: North, 1: South)

## 3. Draw/Get Polar Points

Open `e3_BasicBipolarPoints` example. Draw different kinds of polar points with `drawBasicBipolarPoints`, `drawBasicNorthPoint`, and `drawBasicSouthPoint`. Also, simply get their information (without drawing) with `getNorthPoint` and `getSouthPoint`.

```float thld = 15; // Unit: Gauss

// Draw both polar points with intensity threshold
// Draw N/S polar point with intensity threshold

// Get information (position, intensity) of N/S polar point
GData pNorth = gs.getNorthPoint(thld);
GData pSouth = gs.getSouthPoint(thld);
``` ## 4. Draw/Get Tiltable Polar Points

In example `e4_TiltableBipolarPoints` , we could visualize the tilt of each polar point. Use `drawTiltableNorthPoint` and `drawTiltableSouthPoint` functions to draw the tilting angle and intensity.

```float lowThld = 15;
float highThld = 30;

// Select high and low thresholds to draw the tilt of N/S polar point
gs.drawTiltableNorthPoint(lowThld, highThld);
gs.drawTiltableSouthPoint(lowThld, highThld);

// Get information (position, intensity, angle, pitch) of N/S polar point
GData pTiltableNorth = gs.getTiltableNorthPoint(lowThld, highThld);
GData pTiltableSouth = gs.getTiltableSouthPoint(lowThld, highThld);
``` ## 5. Draw/Get Bipolar Midpoint

When you put a magnet in a vertical position on the Mini GaussSense, both polar points can be detected by the Mini GaussSense. In our 5th example `e5_RollAndTiltBipolarMidPoint` , you can use `drawBasicBipolarMidpoint` function to draw the midpoint between both polar points, including its rotation and tilt.

```float thld = 15;
float RectSize = 60;

// Draw midpoint with intensity threshold and size specified
gs.drawBasicBipolarMidpoint(thld, RectSize);

// Get information (position, intensity, angle, pitch) of midpoint
GData pBipolarMidpoint = gs.getBipolarMidpoint(thld);
``` Great! Let's explore the 2x2 Mini GaussSense now.
Or, start learning How to Use NFC Reader for GaussSense.

Get more advanced features of GaussSense SDK for Processing here: GaussSense SDK for Processing Documentation