Internal unit system

Registered by Alexandru Gagniuc on 2010-10-13

The internal unit system of kicad shall be implemented as 1nm (one
nanometer). A nanometer-scale internal unit enables the _exact_
representation of metric units _and_ imperial down to 1/100 (one
hundredth) mil.
Preferrably, support for nanometer-scaling would be provided by
conditional compilation. A flag would be added to CMakeLists.txt to
enable conditional compilation for nanometer support. Once support
reaches a stable and usable state, old code may be removed.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
Vovanium
Direction:
Needs approval
Assignee:
None
Definition:
Approved
Series goal:
None
Implementation:
Implemented
Milestone target:
None
Started by
Vovanium on 2011-11-11
Completed by
Miguel Angel Ajo on 2013-09-14

Related branches

Sprints

Whiteboard

Brian already has some work done on this here:
https://code.launchpad.net/~bidulock/kicad/kicad-brian

Now Vovanium working on 1nm scale.
length classes are
LENGTH_PCB
VECTOR_PCB
which are defined in "include/lengthpcb.h", implementaion is in "include/length.h" and "include/limited_int.h"

Compilation with 1nm unit is enabled by setting KICAD_NANOMETRE flag to TRUE. Note the code is very experimental, do not use it in critical applications.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.