Vastu Directions Explained: 8 Zones, 16 Directions and Their Exact Boundaries
Most Vastu charts show eight directions as neat slices of a circle and never say where one ends and the next begins. That matters the moment a door faces 22° or 23°. This article gives the exact boundaries the VedIntel™ Vastu API uses, the deity of each direction, and shows how the same plot splits into very different zone areas depending on its shape.
Three direction systems
Every bearing is measured clockwise from True North and normalised to [0, 360). The API classifies it in three systems at once:
- 4 directions, 90° sectors: N = [315, 360) ∪ [0, 45), E = [45, 135), S = [135, 225), W = [225, 315).
- 8 directions (Vastu disha), 45° sectors centred on the cardinal and corner points. This is the system the rules use.
- 16 directions (Shodasha disha), 22.5° sectors, for finer labelling.
| 8-direction | Range (degrees) | Deity in the response |
|---|---|---|
| N | [337.5, 360) ∪ [0, 22.5) | Kubera |
| NE | [22.5, 67.5) | Ishana (Shiva) |
| E | [67.5, 112.5) | Indra |
| SE | [112.5, 157.5) | Agni |
| S | [157.5, 202.5) | Yama |
| SW | [202.5, 247.5) | Nairriti |
| W | [247.5, 292.5) | Varuna |
| NW | [292.5, 337.5) | Vayu |
| 16-direction | Range | 16-direction | Range |
|---|---|---|---|
| N | [348.75, 360) ∪ [0, 11.25) | S | [168.75, 191.25) |
| NNE | [11.25, 33.75) | SSW | [191.25, 213.75) |
| NE | [33.75, 56.25) | SW | [213.75, 236.25) |
| ENE | [56.25, 78.75) | WSW | [236.25, 258.75) |
| E | [78.75, 101.25) | W | [258.75, 281.25) |
| ESE | [101.25, 123.75) | WNW | [281.25, 303.75) |
| SE | [123.75, 146.25) | NW | [303.75, 326.25) |
| SSE | [146.25, 168.75) | NNW | [326.25, 348.75) |
What happens exactly on a boundary
Every sector is left-closed and right-open, [low, high). A bearing that sits exactly on a boundary belongs to the sector that starts there: 22.5° is NE, not N, and 67.5° is E. The 8-direction table is computed on its own, not derived from the 16-direction labels, so the two systems can never disagree about which 8-direction a bearing falls in.
One bearing can carry different names in different systems. 45° is NE in the 8 and 16 systems, but E in the 4-direction system, because E there runs from 45° to 135°. Store the raw bearing and show the system you mean.
POST /api/v1/vastu/direction {"bearing_deg": 45, "north_angle": 0}
"calculation": {
"input_bearing_deg": 45,
"north_angle_applied": 0,
"true_bearing_deg": 45,
"direction_4": "E",
"direction_8": "NE",
"direction_16": "NE",
"sector_16": { "name": "NE", "label_en": "North-East", "range_low_deg": 33.75, "range_high_deg": 56.25 },
"direction_8_metadata": { "label_en": "North-East", "label_hi": "Ishan", "label_sa": "Ishana", "deity": "Ishana (Shiva)" }
}/vastu/direction accepts any number and wraps it, so -10 becomes 350 and 400 becomes 40. The entrance field on /vastu/entrance, /vastu/plot-analysis and /vastu/plan/analyze is stricter: entrance.bearing_deg must be between 0 and 360, otherwise you get 400 INVALID_INPUT.
north_angle: when your drawing is not north-up
Plans are rarely drawn with True North at the top. north_angle is the True North bearing of your drawing's +Y (plan-up) axis, in degrees clockwise. The engine converts every bearing you send with true bearing = bearing + north_angle, and rotates the polygons into a True North frame before it computes zones, the Mandala or rules. Coordinates in the response are in that rotated frame.
- Top of the drawing faces True North: pass 0 (the default).
- Top of the drawing faces due East: pass 90. A door drawn facing the top of the sheet then has a true bearing of 90°, so it is E.
- Top of the drawing faces North-West: pass 315.
Zones are wedges, not grid cells
/vastu/zones splits the plot into eight 45° wedges centred on the plot centroid, each clipped to the boundary. On a square plot the diagonal wedges and the cardinal wedges come out similar. On a rectangle they do not:
POST /api/v1/vastu/zones 20 x 10 rectangle, north_angle 0 direction_8 deity area area_pct N Kubera 10.36 5.18 NE Ishana (Shiva) 24.11 12.06 E Indra 41.42 20.71 SE Agni 24.11 12.06 S Yama 10.36 5.18 SW Nairriti 24.11 12.06 W Varuna 41.42 20.71 NW Vayu 24.11 12.06
The East and West wedges run along the 20-unit length, so each covers four times the area of the North and South wedges, which reach the plot edge after only 5 units. This is a property of the geometry, not a verdict. Show area_pct next to each zone so a reader can see why one zone looks large.
Mandala padas use their own classification
The 81-pada Vastu Purusha Mandala from /vastu/mandala is a 9 × 9 grid over the bounding box of the rotated plot. Each pada gets a zone from the bearing between the grid centre and the pada centre, and the central 3 × 3 padas are labelled BRAHMA. Rows count from the south edge (R1) to the north edge (R9), columns from west (C1) to east (C9), so R5C5 is the centre. A pada's zone can differ from the zone wedge that covers the same spot, because the two are built differently.
Practical tips
- Keep bearings to two decimal places. That is the precision the API returns.
- When a bearing is within a degree or two of a boundary, say so in the report. A small measurement error can move it to the next direction.
- Use
langto get labels in other languages. The direction metadata always includeslabel_en,label_hiandlabel_sa.
Related
Try /vastu/direction with your own bearings. It is open on every plan, including the Free trial.