Difference between revisions of "A Survey of Implicit Constraints in Primitives"
From BRL-CAD
Homovulgaris (talk | contribs) (ell, sph, tor) |
(→sph (Sphere)) |
||
Line 33: | Line 33: | ||
# |B| > 0 | # |B| > 0 | ||
# |C| > 0 | # |C| > 0 | ||
− | # |A| | + | # |A| ~= |B| |
+ | # |A| ~= |C| | ||
+ | # |B| ~= |C| | ||
# A.B = 0 | # A.B = 0 | ||
# B.C = 0 | # B.C = 0 |
Revision as of 08:00, 5 August 2008
Contents
Types of Implicit Parameters
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 3-tuple which is used to hold direction as well as magnitude. In BRL-CAD primitives, they may represent
- Radius vectors ( Center of a sphere)
- Direction vectors (Direction of a plane)
Types of Implicit Constraints
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 non-negativity ) or the modulus of another vector
- Perpendicularity of Vectors
Implict Constraints by Primitive
ell (Ellipse)
Ellipse is built using the Center (radius vector V) and 3 Vectors (A, B, C st. |A| = radius) 2 types: Non-negativity/Modulus comparison, Perpendicularity Constraints:
- |A| > 0
- |B| > 0
- |C| > 0
- A.B = 0
- B.C = 0
- C.A = 0
sph (Sphere)
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
tor (Torus)
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
- 0 < |H| < |A|