
This page contains the design document for an enhancement or feature. The design should be considered a work in progress and may not represent the final design. As this is a collaborative design, contributions and participation from other developers and users is encouraged. Use the discussion page for providing comments and suggestions.

Types of Implicit Parameters[edit]
At the level of constraint networks, calculations are done in terms of Variables or indpendent real values / floating point numbers. But in the construction of geometry these are clustered together in terms of implicit parameters. Typical implicit parameters are
 Vectors  A 3 dimensional vector is a 3tuple which is used to hold direction as well as magnitude. In BRLCAD primitives, they may represent
 Radius vectors ( Center of a sphere)
 Direction vectors (Direction of a plane)
Types of Implicit Constraints[edit]
An enumeration of the set of contraints observed in the primitives below
 Modulus Comparison : Comparison of the modulus of a vector to a real number ( 0 for nonnegativity ) or the modulus of another vector
 Perpendicularity of Vectors
Implict Constraints by Primitive[edit]
ell (Ellipse)[edit]
Ellipse is built using the Center (radius vector V) and 3 Vectors (A, B, C st. A = radius)
2 types: Nonnegativity/Modulus comparison, Perpendicularity
Constraints:
 A > 0
 B > 0
 C > 0
 A.B = 0
 B.C = 0
 C.A = 0
rec (Right elliptical cylinder)[edit]
3 types: Nonnegativity/Modulus comparison, Perpendicularity, Vector equality
Constraints:
 H > 0
 A > 0
 B > 0
 A = C
 B = D
 A.B = 0
 H.A = 0
 H.B = 0
rhc (Right hyperbolic cylinder)[edit]
3 types: Nonnegativity/Modulus comparison, Perpendicularity
Constraints:
 H > 0
 B > 0
 R > 0
 H • B = 0
 c > 0
 B ≥ c
rpc (Right parabolic cylinder)[edit]
2 types: Nonnegativity/Modulus comparison, Perpendicularity
Constraints:
 H > 0
 B > 0
 R > 0
 H.B = 0
sph (Sphere)[edit]
Sphere is a particular case of the ellipse
Constraints:
2 types: Modulus comparison, Perpendicularity
 A > 0
 B > 0
 C > 0
 A = B
 A = C
 B = C
 A.B = 0
 B.C = 0
 C.A = 0
tgc (Truncated General Cone)[edit]
Constraints:
5 types: Modulus comparison, Logical Combination, Perpendicularity, Nonplanarity, Parallelism
 H > 0
 A & B not zero together
 B & D not zero togehter
 A*B and C*D not zero together
 H is nonplanar to AB plane
 A.B = 0
 C.D = 0
 A  C ( A is parallel to C )
tor (Torus)[edit]
Tor is built using the following input fields
V V from origin to center
H Radius Vector, Normal to plane of torus. H = R2
A, B perpindicular, to CENTER of torus. A==B==R1
F5, F6 perpindicular, for inner edge (unused)
F7, F8 perpindicular, for outer edge (unused)
Constraints:
2 types: Modulus comparison, Perpendicularity
 A = B
 A.B = 0
 B.H = 0
 H.A = 0
 H > 0
 H < A