Resources Numerical accuracy
Calculations
Every calculation under our calculation policies: what it works out, its formula and the precision it runs at. Open one to see its code as it is in the released app.
Calculations
-
Frame of an interior elevation
The width and height of the wall shown, and how deep the view looks.
x₀, x₁ = min, max of p·right; depth from the room's middle to max(p·dir) + 50 mm
Interior elevations and their dimensions comforts-views.js64-bit- BimCraft
-
Dimension values on elevations and sections
The widths, heights and level spacings written on a view.
width = x₁ − x₀; height = y₁ − y₀; level spacing = yᵢ₊₁ − yᵢ
Interior elevations and their dimensions comforts-views.js64-bit- BimCraft
-
Where a door or window is tagged
The plan point, the height range and the outward side of each opening.
middle station = offset + width ÷ 2; top = sill + height
Interior elevations and their dimensions comforts-views.js64-bit- BimCraft
-
Views placed at scale on the sheet
Takes view millimeters to paper millimeters at the sheet's scale.
k = 1 ÷ scale ratio; paper = origin + view × k
Interior elevations and their dimensions comforts-views.js64-bit- BimCraft
-
Where a drag puts an item
The position and turn saved when a placed item is dragged or turned by its grip.
turn = round(atan2(dy, dx) × 180 ÷ π ÷ step) × step, step 15° or 1° with Shift
Interior elevations and their dimensions comforts-ui.js64-bit- BimCraft
-
Room height on the interior elevations
The floor-to-floor height the elevations are framed to, and the height of each tagged item.
height = next level − this level, else the level's own height
Interior elevations and their dimensions comforts-ui.js64-bit- BimCraft
-
Project origin and survey point
Where the site's survey point is in the file's coordinates, with its elevation and map grid position.
survey point = site placement origin × file unit in mm; elevation in m = RefElevation × unit ÷ 1000
Coordinate readouts and survey point coords.js64-bit- BimCraft
-
Level a height is on
Picks the level whose floor is at or just below a height.
the highest level with elevation ≤ z + 1 mm
Coordinate readouts and survey point coords.js64-bit- BimCraft
-
Foot and US survey foot
The two sizes of foot a map's unit is compared with.
ft = 0.3048 m; US ft = 1200 ÷ 3937 m
Coordinate readouts and survey point coords.jsExact- BimCraft
-
Map grid coordinates as text
A point's eastings and northings in the map's own unit.
value = meters ÷ map unit in meters, written with 3 decimals
Coordinate readouts and survey point coords.js64-bit- BimCraft
-
Height above the level
The lines of a readout: the level and the height above its floor, X and Y from the project origin, Z, and the map position.
height above the level = z − level elevation
Coordinate readouts and survey point coords.js64-bit- BimCraft
-
Plan point to file coordinates
A point in a storey's plan, in the file's coordinates.
q = M (x, y, 0)
Coordinate readouts and survey point coords.js64-bit- BimCraft
-
File coordinates to plan point
A point in the file's coordinates, in a storey's plan.
p = M⁻¹ q
Coordinate readouts and survey point coords.js64-bit- BimCraft
-
File coordinates to the 3D view
Where a point of the file sits in the 3D view, to draw the origin and survey markers.
(x, y, z) × unit → (x, z, −y) → C → placement
Coordinate readouts and survey point coords.js64-bit- BimCraft
-
Unit factors for priced quantities
The size of each pricing unit in m, m² or m³.
1 yd³ = 0.764554858 m³; 1 ft³ = 0.0283168466 m³; 1 ft² = 0.09290304 m²; 1 ft = 0.3048 m
Costs on the schedule cost5d.js64-bit- BimCraft
-
Dollars to whole cents
Rounds an amount to a whole number of cents.
cents = round(dollars × 100)
Costs on the schedule cost5d.js64-bit- BimCraft
-
Whole cents to dollars
The amount reported, in dollars.
dollars = round(cents) ÷ 100
Costs on the schedule cost5d.js64-bit- BimCraft
-
Quantity in the price's unit
An element's volume, area, length, weight or count in the unit its price is per.
qty = quantity ÷ unit factor; weight = volume × density
Costs on the schedule cost5d.js64-bit- BimCraft
-
Cost of each element
The material and labor cost of every element, and the total.
line = round(qty × (1 + waste) × material rate × 100) + round(qty × labor rate × 100) cents
Costs on the schedule cost5d.js64-bit- BimCraft
-
Cost of each scheduled task
Adds up the cost of a task's elements, sharing an element that is in several tasks.
task cents = round(Σ element cents ÷ n), n = the tasks that hold the element
Costs on the schedule cost5d.js64-bit- BimCraft
-
Spending profile of a task
The weight each day of a task gets: even, front-loaded, back-loaded or bell-shaped.
even 1; front D − i; back i + 1; bell sin(π (i + 0.5) ÷ D)
Costs on the schedule cost5d.js64-bit- BimCraft
-
A task's cost per day
Divides a task's cost over its days in whole cents.
dayᵢ = floor(cents × wᵢ ÷ W), then one more cent to the days with the largest remainders
Costs on the schedule cost5d.js64-bit- BimCraft
-
Cash flow curve
The cost per day, week or month and the running total.
period cost = Σ day cents; cumulative = running sum
Costs on the schedule cost5d.js64-bit- BimCraft
-
Planned, built and earned value on a day
What the schedule plans to have spent by a day, what is built, running and remaining, and the earned value from typed progress.
earned = Σ task cents × progress, progress clamped to 0…1
Costs on the schedule cost5d.js64-bit- BimCraft
-
Grand total
Runs the whole calculation and states the total cost.
grand = scheduled + unscheduled
Costs on the schedule cost5d.js64-bit- BimCraft
-
Rates read from TakeoffCraft
Turns TakeoffCraft's stored rates into prices per unit.
rate = stored whole number ÷ 10000
Costs on the schedule cost5d.js64-bit- BimCraft
-
Costs in the CSV export
The amounts written to the exported table.
Costs on the schedule cost5d.js64-bit- BimCraft
-
Rounding of stored map values
Rounds an easting, northing or height before it is stored.
round(v × 10⁶) ÷ 10⁶
Placing a model on the map crs-georef.js64-bit- BimCraft
-
Latitude and longitude of a grid point
The longitude and latitude of an easting and northing in the chosen system.
Placing a model on the map crs-georef.js64-bit- BimCraft
-
Map conversion as a matrix
The matrix that takes model coordinates to map coordinates.
x' = s (a x − b y) + E; y' = s (b x + a y) + N; z' = s z + H, with (a, b) the normalized X axis
Placing a model on the map crs-georef.js64-bit- BimCraft
-
Rotation of the model on the grid
The angle of the model's X axis from grid east, in degrees.
θ = atan2(ordinate, abscissa) × 180 ÷ π
Placing a model on the map crs-georef.js64-bit- BimCraft
-
True north in the model
The direction of true north in the model's own X and Y.
g = grid direction of a 0.0001° step north; true north = (cos(g − m), sin(g − m)), m the model's rotation
Placing a model on the map crs-georef.js64-bit- BimCraft
-
Map conversion moved to another system
The same place on the earth described in a different coordinate system: new origin, rotation and scale.
origin' = T(E, N); p₁ = T(origin + 10 m along the X axis); axis' = (p₁ − origin') ÷ D; scale' = scale × D ÷ step
Placing a model on the map crs-georef.js64-bit- BimCraft
-
Illuminance of the whole sky
The horizontal illuminance of an unobstructed overcast sky, which every component is divided by.
E_h = 7π ÷ 9, in units of the zenith luminance
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Overcast sky integrated in altitude
The light a vertical plane gets from the sky between the horizon and an altitude.
F(θ) = (θ ÷ 2 + sin 2θ ÷ 4) ÷ 3 + (2 ÷ 9)(1 − cos³θ)
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Overcast sky luminance
The sky's brightness at an altitude, relative to the zenith.
L(θ) = (1 + 2 sin θ) ÷ 3
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Hidden altitude intervals joined
Joins the altitude ranges hidden by separate objects into one list.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
What hides the sky in one direction
The altitudes hidden along one level direction from a window.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Sky profile of a window
For each direction across the window's front, the altitudes that are hidden.
φᵢ = −90° + step ÷ 2 + i × step, i = 0 … 180 ÷ step − 1
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Weight of an azimuth band
How much a band of directions counts, by how squarely it faces the window.
w = sin(φ + step ÷ 2) − sin(φ − step ÷ 2)
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Vertical sky component
The share of the unobstructed sky's light that reaches the window, in percent.
VSC = 100 × Σ over bands of w × Σ over visible intervals of (F(b) − F(a)) ÷ (7π ÷ 9)
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Share of a uniform sky seen
The share of a uniform sky's light a window still gets, used for diffuse sun gain.
fraction = Σ w × Σ (G(b) − G(a)) ÷ Σ w × G(π ÷ 2), G(θ) = θ ÷ 2 + sin 2θ ÷ 4
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Angle of obstruction
The altitude of the top of whatever hides the horizon square to the window.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Is a ray hidden
Decides whether a ray from a point through the window meets sky or an obstruction.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Floor of a room
Picks the floor triangles out of a room's shell.
floor when |n_z| > 0.7 |n| and the triangle's mean height is below the shell's middle
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Is a grid point over the floor
Tests a plan point against one floor triangle.
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Grid of points in a room
The points at working-plane height where the daylight factor is worked out.
spacing = max(0.25, ceil(√(area ÷ max) × 20) ÷ 20) m; points at lo + s ÷ 2, then every s
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Window opening as a rectangle
The rectangle that stands for a window's opening.
k = √(area ÷ (width × height)); half sizes = k × width ÷ 2 and k × height ÷ 2
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
Sky and externally reflected components at a point
The light a point gets through one window straight from the sky and from obstructions, in percent.
SC = 100 ÷ E_h × Σ over patches of L(θ) sin θ × dA cos ω ÷ r²
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
-
C factor by angle of obstruction
The coefficient C of the internally reflected component.
straight lines between table rows at 0°, 10° … 80°
Sky view and daylight factor daylight-bim-sky.js64-bit- BimCraft
A calculation is added only after its source was read. Each statement can be checked in the code shown on its policy's page; the app repositories are public. When a release changes a calculation, its page says so until it has been read again.