modelling
pology is
iot to deal
> they are
? straight-
ith an in-
ly a more
/ patches,
are to be
ng is less
'n to data
cannot be
t property
le objects
which are
primitives
properly.
fit to real
forming a
, but will
ess is de-
imultane-
st of CSG
e a set of
; a single
ga "real"
enforced
he differ-
» relaxed:
; and thus
nt primi-
o achieve
sisting of
ected by
epts out-
eak prim-
with con-
'€ similar
r of "pre-
strate the
involves
a for the
ingle, for
inbul 2004
International Archives of the Photogrammetry, Remote Sensin
(Xe Yo)
Figure 2: Description of a rectangle in 2D. Left: using 5
parameters. Right: using 4 corner points.
a total of 5 parameters (figure 2, left). From those 5 param-
eters, all vertices and edges of the rectangle can be derived.
The rectangle can also be described by its vertices (points),
edges (lines), and constraints (figure 2, right). If the ver-
tices are given, the edges are defined as well and vice versa.
Using vertices as unknowns, one obtains the 8 unknowns
(;,9:).1 € i < 4. Since two of the edges are perpen-
dicular and one is parallel to the first edge, 3 constraints
apply, so that again 5 parameters remain. Formulating
constraints can be done in different ways. Especially in
projective geometry, linear constraints can often be ob-
tained (Heuel, 2002). However, in this case, the points
as well as the lines are unknown which leads to bilinear
equations, as used e.g. by (Brenner, 2000b) or (Griin and
Wang, 2001) in the context of building models. The con-
straint equations thus are linearized and have to be iterated.
Four line equations given in Hesse normal form (HNF)
GZ by +o.= 0,1 < 1 < A.vield 1? additional pa-
rameters and 4 additional constraints for normalizing the
normal vectors, a? -- b? — 1. Two points are on each line,
leading to two equations of the form a;x; + b;y; + €; = 0.
Three other equations hold for the normal vectors of the
lines, enforcing parallel and perpendicular edges. Table 2
summarizes unknowns and constraints for this case.
| * | Description [UTC |
4 | Points: (z;, y) 8
4 | Lines a;z + biy +6: = 0 12
4 | Normal vector length = 1: a? + b7 = 1 4
8 | Point on line: a;x; + biy; + € = 0 8
2 | Perpendicular normals: a;a; + b;b; = 0 2
| |. Parallel normal: apbs — boas = 0 l
| Total unknowns | 5 | |
Table 2: Unknowns (U) and constraints (C) for a simple
rectangle in 2D.
4.3 Packaging Constraints as Weak Primitives
If one “packages” unknowns and constraints as weak prim-
itives, some of the constraints will become invisible: en-
forcing the normal vector length and points lying on their
respective lines are internal constraints which a user won°t
change. Parallel and perpendicular constraints will be-
come properties of the object to be switched on and off.
The point coordinates, being unknowns, will become fields
which can be connected to fields of other primitives. What
about the HNF line coefficients? In the above formulation,
they are needed when regularization conditions should be
met. However, after performing an adjustment, their esti-
mated values are not used, since the object is defined by its
points only, which are estimated as well. Thus, a line has
1089
8 and Spatial Information Sciences, Vol XXXV, Part B3. Istanbul 2004
| 7 Point on line EN
[CS 7 Aline] | \ [^58 |
———
| Points[4] | J B.Poins(0] | 7 Points[4] |
Lines[4] x E UAE ped / Lines[4]
A >] Point on line 2
B A-Lines[1] |
[ B. Points[3} | 3] |
Figure 3: Two rectangles, A and B, standing side by side.
Left: geometry. Right: user view of constraints between A
and B.
e Fone
s ug 08080
Fag
Figure 4: Internal representation of the two rectangles of
figure 3 as a graph connecting unknowns by constraints.
Unknowns are depicted as circles, constraints as boxes.
The icons represent the “rectangular” and “point on line”
constraints.
only to take part in the estimation if i) regularization condi-
tions are used which involve the line, or ii) the line is a field
which is connected by a constraint to another primitive.
Thus, one sees that fields offered by a primitive are inde-
pendent from the parameters which represent its geome-
try. If a field directly corresponds to a parameter, this pa-
rameter will be introduced as unknown into the estimation.
If not, the field will be introduced as unknown and equa-
tions will be added relating the unknowns to the parame-
ters of the primitive. In fact, both the “5-parameter” and
the “4-point” representations can define the same interface
in terms of the fields which are available for connection by
constraints.
Figure 3, left shows an example. Two rectangles are re-
quired to stand side by side. In order to make them pre-
cisely aligned, constraints are introduced, say in this case
that the two left points of rectangle B have to lie on the
right line of rectangle A. So from an operator’s point of
view, the rather simple figure 3, right, reflects the scene
structure: two objects, À and B, are present which are con-
nected by constraints of type “Point on line”.
Internally, however, if the rectangles are represented by
four points, the structure of unknowns and constraints
more complex. Figure 4 depicts the graph of unknowns
and constraints which results. Each time an operator inter-
action changes parts of the graph, the required graph nodes
are determined, unknowns and constraints are set up, and
an estimation is performed. Figure 5 shows how the two
example primitives react to different user interactions.
5 CONCLUSIONS AND OUTLOOK
In this paper, a new modelling approach termed weak CSG
modelling is proposed. Its main idea is to package, or hide,