Professional Documents
Culture Documents
Adaptive Slicing of Moving Least Squares Surfaces: Toward Direct Manufacturing of Point Set Surfaces
Adaptive Slicing of Moving Least Squares Surfaces: Toward Direct Manufacturing of Point Set Surfaces
Keywords: moving least squares surface, point-set surface, curvatures, adaptive slicing,
layered manufacturing, direct manufacturing
Journal of Computing and Information Science in Engineering SEPTEMBER 2008, Vol. 8 / 031003-1
Copyright © 2008 by ASME
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
eters and heuristic assumptions are needed to estimate the
curvatures, this paper presents a set of closed formulas for
computing curvatures from MLS surfaces without any extra
data specific parameters.
• Single underlying point set surface. The MLS surface pro-
vides a single underlying surface representation of the
physical object that can be applied in a variety of down-
stream design, analysis, and manufacturing applications. It
Fig. 1 Approaches for geometric processing of scanned point
cloud data for LM circumvents the trade-off between the projection error and
the truncation error. It allows upsampling and downsam-
pling. It is robust even for noisy or sparse point sets.
based methods, the density of projected points is limited by the
local density of the input point set. 共3兲 The measurement noise is Figure 3 presents a flowchart of our adaptive direct slicing
relieved by the smoothing effect of MLS. method, in which the differential geometric analysis and MLS are
Salient features of our adaptive direct slicing method include two fundamental components. The differential geometric analysis
the following. provides the normal and curvature information for point set sur-
• Direct processing. The method does not involve any inter- faces. MLS gives the underlying surface representation of the in-
mediate geometric model, completely bypasses the labori- put scanned point set. The 2D contours/2.5D layers are then adap-
ous surface reconstruction, and avoids the potential model tively generated based on the computed curvatures.
conversion induced accuracy loss. The rest of the paper is organized as follows. In Sec. 2, we
• Adaptive contour/layer generation. The contour profile and provide a review of relevant work. In Sec. 3, we introduce MLS
the thickness of each layer are adaptive to surface curvature; surfaces as our underlying representation of the point set surface.
thus, the resulting surface quality and build time are im- In Sec. 4, we present two necessary differential geometric analy-
proved. Existing direct slicing methods do not allow such ses: normal estimation for point data and curvature calculation in
adaptive slicing feature due to the fact that the slice is com- MLS surfaces. In Sec. 5, we explain the overall procedure of our
puted from projection without knowledge of local curvature.
adaptive direct slicing method, followed by details of two main
• Closed formulas for curvature computing. Unlike other cur-
vature estimating methods 关5,6兴, where subjective param- algorithms: adaptive 2D contour generation and adaptive layer
Fig. 2 Comparison of the current projection based and our MLS based slicing ap-
proaches. „a… Isoview of the rabbit data with slicing planes. „b… In the projection based
approach, larger ⌬d leads to more points on the slicing plane and potential projection
error. „c… In the projection based approach, smaller ⌬d leads to fewer points projected
on the slicing plane and potential truncation error. „d… The resulting points of our MLS
based approach.
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
Fig. 4 Illustration of the projection process of a projection
MLS
Journal of Computing and Information Science in Engineering SEPTEMBER 2008, Vol. 8 / 031003-3
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
we adopt a constant scale factor h for each example. Applying the
scale factors listed in Table 3, the resulting MLS surfaces can
properly preserve the small features and avoid potential instabili-
g共x兲 = n共x兲T 冉冏 e共y,n共x兲兲
y
冏 冊 y=x
共5兲
ties due to the quick falloff of the Gaussian weighting function. where n : R3 → R3 is the vector field defined by Eq. 共2兲 and e : R3
In order to search the local minimum of an energy function, we ⫻ R3 → R is the energy function defined by Eq. 共4兲. Let x
define the energy function e : R3 ⫻ R3 → R as = 共x y z兲T, then any planar curve on this MLS surface can be de-
fined as the intersection the MLS surface and a plane as follows:
e共y,n共x j兲兲 = e共y兲 = 兺 共共y − q 兲 n共x 兲兲 共y,q 兲
qi苸Q
i
T
j
2
i 共4兲
兵g共x兲 = g共x,y,z兲 = 0其 艚 兵h共x兲 = Ax + By + Cz + D = 0其
To facilitate the search of the local minimum, we can substitute For a more elegant expression of this planar curve, we can trans-
y = x j + tn共x j兲 into Eq. 共4兲 and restate it as a function of variable t form the problem so that the plane h共x兲 = 0 is transformed to the
as follows
xy-plane ĥ共x兲 = z = 0. Then the expression for the implicit curve
e共t兲 = 兺 共共x j − tn共x j兲 − qi兲Tn共x j兲兲2共x j − tn共x j兲,qi兲 will reduce to
qi苸Q
the rest of this paper, this projection based MLS scheme will be 共6兲
used for locally approximating an underlying surface from a set of
which is only a function of variable x and y 共since z = 0 in the
sample points.
xy-plane兲.
Applying a curvature formula given in Ref. 关22兴, we have the
curvature of this implicit planar curve as
4 Differential Geometric Analysis
T共g共x,y兲兲T · H共g
共x,y兲兲 · T共g共x,y兲兲
4.1 Estimating Surface Normal From Points. As we intro- k=− 共7兲
duced in the previous section, the computation of the normal vec- 共x,y兲储
储ⵜg
tor field n共x兲 requires a preassigned normal at each point of the 共x , y兲兲 is the unit tangent vector of the implicit curve
where T共g
冉 冊
input point set Q. When this normal information is missing, a
statistical analysis of the neighboring samples can be applied to g共x,y兲 g共x,y兲 T
冐冉 冊冐
ance matrix of the point positions. 共x,y兲兲 =
T共g
Let c be the weighted centroid of the neighborhood of q, i.e., g共x,y兲 g共x,y兲 T
−
y x
c=
qi苸Q
兺 q · 共q,q 兲
i i
and
The 3 ⫻ 3 covariance matrix C for the sample point q is then
given by 共x,y兲 =
ⵜg 冉 g共x,y兲 g共x,y兲
x y
冊 T
C= 兺 共q − c兲 · 共q − c兲
qi苸Q
i i
T
· 共q,qi兲 is the gradient of g共x , y兲, H共g
共x , y兲兲 = ⵜ共ⵜ共g
共x , y兲兲兲 is the Hessian
matrix of g共x , y兲. Notice that
Since matrix C is symmetric and positive semidefinite, all its three
eigenvalues 0, 1, and 2 are real valued. Assuming 0 艋 1 共x,y兲
T · ⵜg
共x,y兲兲 =
T共g
艋 2, we can use the eigenvector v0 of the smallest eigenvalue 0 储ⵜg 共x,y兲储
to approximate the surface normal nq at q 关21兴.
Notice that the normal vectors estimated by this method are where T is a 2 ⫻ 2 matrix defined as
unoriented. Although the orientation of a normal vector is not
required to define a normal vector field as in Eq. 共2兲, this infor-
mation is necessary for the adaptive slicing process presented in
T= 冋 册
0 −1
1 0
the next section. A simple scheme can be used to setup a consis- Hence, the curvature formula of Eq. 共7兲 can be simplified as
tent orientation for the normal vectors that point to the “outside”
of the object. This algorithm starts with an extremal point, such as 共x,y兲兲T · H共g共x,y兲兲 · T · ⵜg共x,y兲
共T · ⵜg
the point with the largest x or y coordinate and sets the orientation k=− 共8兲
储ⵜg共x,y兲储3
of its normal as pointing away from the centroid of the point
cloud. Then the orientation of the normal vector of the nearest To further expand this formula, we first apply a new notation: x
neighbors can be adjusted by guaranteeing the angle between the = 共x y 0兲T. Then, taking the derivative of Eq. 共4兲 with respect to y
neighboring normals less than / 2. Such an adjusting process can and setting y equal to x give
冏 冏
finally spread the correct normal orientation to all the sampled
points. e共y,n
共共x y 0兲T兲兲
y 共x y 0兲T
4.2 Curvature Calculation in MLS Surfaces. In our direct
slicing algorithm, the curvature of a planar curve 共or the surface
curvature along the intersection of a surface and a plane兲 plays a
key role in determining the step length in 2D contour generation
= 冏 e共y,n
共x兲兲
y
冏 y=x
and the layer thickness in layer generation.
To calculate the curvature of planar curves on a MLS surface,
we first convert the native form of MLS into an implicit form. It
= 兺 2e
qi苸Q
−储x − qi储2/h2
冉 共x兲兲 · n
共共x − qi兲Tn 共x兲
has been proven, in Refs. 关15,17兴 that the MLS surface is actually
the implicit surface given by the zero-level set of the implicit
function
−
1
h2
共x兲兲2 · 共x − qi兲
共共x − qi兲Tn 冊
031003-4 / Vol. 8, SEPTEMBER 2008 Transactions of the ASME
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
Substituting it into the transformed implicit function 共6兲 and no- H共g共x , y兲兲. Here we just give the resulting formulas. The gradient
共x兲兲T · n
ticing that 共n 共x兲 = 1, we have of g共x , y兲 can be expressed as
g共x,y兲 = n
共x兲 T
冉冏 e共y,n
共x兲兲
冏冊 共x,y兲兲 =
ⵜ共g 兺 2e
qi苸Q
冉
−储x − qi储2/h2 2
h2
共共x − qi兲Tn 冉 1
共x兲兲 · 2 共共x
h
y
冊 冉
y=x
冉 冊
3
共x兲兲2 − 1 · 共x − qi兲 + 1 −
− q i兲 Tn 共共x
兺 2e −储x − qi储2/h2 1
= 1− 共x兲兲2 · 共x − qi兲Tn
共共x − qi兲Tn 共x兲 h2
冊 冊
qi苸Q h2
共9兲 共x兲兲2 · 共n
− q i兲 Tn 共x兲 + ⵜT共n
共x兲兲 · 共x − qi兲兲
共x,y兲兲 = ⵜ共ⵜ共g共x,y兲兲兲 =
H共g 兺
qi苸Q
−
h2
e i 冉
4 −储x − q 储2/h2 2
h2
共共x − qi兲Tn 冉 1
共x兲兲 · 2 共共x − qi兲Tn
h
冊 3
共x兲兲2 − 1 · 共x − qi兲 + 1 − 2 共共x
h
冉
共x兲兲2 · 共n
− q i兲 Tn 冊
共x兲 + ⵜT共n 冊
共x兲兲 · 共x − qi兲兲 · 共x − qi兲T + 2e−储x − qi储
2/h2
冉 6
h4
2
冊
共x兲兲2 − 2 · 共x − qi兲 · 共n
共共x − qi兲Tn
h
T共x兲 + 共x
共x兲兲兲 +
− qi兲T · ⵜ共n
4 −储x − q 储2/h2
h2
e i 共共x − qi兲Tn 冉 1
h
12
h
冊 2 2
共x兲兲2 − 1 · I − 2 e−储x − qi储 /h 共共x − qi兲Tn
共x兲兲 · 2 共共x − qi兲Tn 共x兲兲 · 共n
共x兲
共x兲兲 · 共x − qi兲兲 · 共n
+ ⵜT共n 共x兲兲兲 + 2e−储x − qi储
T共x兲 + 共x − qi兲T · ⵜ共n
2/h2
冉 1−
3
h2
冊
共x兲兲2 · 共ⵜ共n
共共x − qi兲Tn 共x兲兲 + ⵜT共n
共x兲兲
共x兲兲兲 · 共x − qi兲兲
+ ⵜT共ⵜ共n
where I is the identity matrix. Notice that the sign of the result is developed to calculate the intersection points, which creates a
curvature k in Eq. 共8兲 has an explicit physical meaning: If k is set of ordered points and form a 2.5D layer. 共2兲 The step length
negative, then the curvature vector k is opposite to the direction of between adjacent boundary points on a slice is adaptive to the
normal n, or the planar curve is convex at this point; otherwise, k curvature. It enables the control of the error bound of approximat-
and n have the same direction, or the planar curve is concave. It is ing the MLS surface with polylines from these points, since the
important to distinguish between the convex and concave property error of piecewise linear approximation functions depends linearly
of the planar curve since different formulas of the layer thickness on the second derivatives and the spacing of points.
will be applied in these two different cases 关9兴. This marching based adaptive 2D contour generation algorithm
can be summarized as follows:
5 Direct Slicing of Point Set Surfaces Step 1. Given an input point set Q and an initial line l0 on the
slicing plane H, let i = 0.
5.1 Overall Procedure. In our direct slicing scheme for mea- Step 2. Calculate the intersection point pi of the MLS surface S
sured data, we assume that the building orientation is already and the line li.
determined. Without loss of generality, we further assume that the Step 3. Determine a new line li+1 on the slicing plane H, based
building direction is z axis, which means that every slice has a on an adaptively computed step length.
constant z coordinate. Then our direct slicing algorithm can be Step 4. If i ⬎ 2 and 储pi − p0储 ⬍ , stop this process and output
summarized as using measured data and a prescribed cusp height P = 兵p0 , p1 , . . . , pi其 as the resulting 2D contour. Else let i = i + 1 and
␦ as system input, output successive 2.5D layers with layer thick- go to Step 2.
ness, and step length of the contour in each slice adaptive to In Step 1, the initial line l0 could be defined by any suitable
curvature on the underlying MLS surfaces. A stackup of these point c0 and direction vector n0. For example, we can find a point
layers constitute the layered manufactured object. An overall sys- q 苸 Q with the minimum distance to the slicing plane H, then
tem flowchart for our direct slicing algorithm is shown in Fig. 3. project q onto plane H to get the start point c0. The direction
From Fig. 3, we can see that the system flowchart includes three vector n0 could be the normal estimated at point c using the al-
main steps: Point preprocessing, adaptive 2D contour generation, gorithm presented in Sec. 4.
and adaptive layer thickness calculation. The point preprocessing In Step 2, computing the intersection point pi is the core of the
sets up a local neighborhood relation for each input point, which adaptive 2D contour generation algorithm. Recall the definition of
is the base of normal estimation. Since we adopt a standard data the MLS surface in Eq. 共1兲 that the MLS surface S is the station-
sorting algorithm based on the k-d tree structure 关23兴 in the first ary set of a projection operator P, we can easily realize that for
step, we will focus on the last two steps in the remainder of this any point x on the MLS surface S, we have
section.
5.2 Adaptive 2D Contour Generation. Central to the prob- 储 P共x兲 − x储 = 0
lem of direct slicing of point set surfaces is the generation of 2D
contours by intersecting the horizontal slicing plane with the un- Then the problem of computing the intersection point pi can be
derlying MLS surface defined by the input point data. In this transformed to find a local minimum of 储 P共x兲 − x储 over the set
section, we propose a new methodology to generate 2D contours, x 苸 li. Suppose the line li is defined by point ci and direction
which contains the following advantages: 共1兲 A marching process vector ni, we can further substitute x = ci + t · ni into 储 P共x兲 − x储 to
Journal of Computing and Information Science in Engineering SEPTEMBER 2008, Vol. 8 / 031003-5
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
⌬p = 2冑r2 − 共r − ␦s兲2 = 2冑2r␦s − ␦s2 共10兲
Fig. 7 Four cases in determining the layer thickness d with excess deposition: „a… p
in the upper semicircle, k > 0; „b… p in the upper semicircle, k < 0; „c… p in the lower
semicircle, k > 0; „d… p in the lower semicircle, k < 0
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
Table 1 Summary of test data
Number
σ
Part Size (inch) of Source Picture
points (inch)
Synthetic data
Can 2.0×2.0×2.0 5000 0.01 with random
noise
Synthetic data
Wine
1.5×1.5×2.0 35109 0.008 with random
Glass
noise
Scanned data
from
Vase 4.5×4.7×8.2 68097 0.008
www.cyberware
.com
Scanned data
from
Rabbit 1.2×1.4×2.8 67038 0.012
www.cyberware
.com
Synthetic data
Reducer 3.5×4.0×4.3 45326 0.002 with random
noise
With these denotations on hand, we can easily derive a formula mented in MATLAB. Here are several key points during the
of d for each of the four cases illustrated in Fig. 7. Finally, we can implementation.
get four formulas corresponding to the four cases shown in Fig. 7:
共1兲 Projection and intersection. The function fminbnd from
共a兲 d = − sin + 冑2 sin2 + 2␦ + ␦2 MATLAB’s optimization toolbox is applied to compute the
minimal value of the energy function e共y , n共x兲兲 when pro-
共b兲 d = − sin + 冑2 sin2 + 2␦ − ␦2 jecting a point onto a MLS surface in the projection based
MLS scheme in Sec. 3 and the minimal value of 储 P共x兲
共c兲 d = + sin − 冑2 sin2 − 2␦ − ␦2 − x储 when calculating the intersection point of a line and a
MLS surface in adaptive 2D contour generation in Sec. 5.
共d兲 d = + sin − 冑2 sin2 − 2␦ + ␦2 This function finds a local minimum of one variable
With these layer thickness formulas for one point p on a 2D function using a golden section search and parabolic
horizontal slice, we can find the layer thickness for the whole 2D interpolation.
slice by solving a nonlinear optimization problem stated as fol- 共2兲 Step length. The most important part in defining the step
lows: length is the calculation of the curve curvature, which can
be calculated from the curvature formulas developed in the
共1兲 Find x previous section. Meanwhile, it also can be calculated from
共2兲 Minimize d共x兲 an alternative numerical method, where a circle is approxi-
共3兲 Subject to z共x兲 = const, g共x兲 = 0 mated with several 共at least three or five in this paper兲
neighbor points 共distance smaller than the step length ⌬p兲
where z共x兲 equals to the z coordinate of x, and g共x兲 is defined in by a least-squares fitting. Such a circle is a good approxi-
Eq. 共5兲. mate of the osculating circle.
共3兲 Layer thickness. The calculation of layer thickness involves
6 Implementation and Examples a nonlinear optimization problem in finding a minimal layer
thickness for a 2D slice. During our implementations, we
In this section, we introduce the MATLAB implementation of our exhaustively determine the layer thickness for all sliced
direct slicing algorithm and then present the implementation re- points and then find the minimal value as the resulting layer
sults on a variety of synthetic and real data. Five test cases are thickness.
summarized in Table 1 and further analyzed and illustrated later in
this section. 6.1 Curvature Calculation in MLS Surfaces. To validate
Following the procedures in Fig. 3, our algorithm is imple- the curvature formulas, we use a synthetic example from a known
Journal of Computing and Information Science in Engineering SEPTEMBER 2008, Vol. 8 / 031003-7
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
Fig. 8 Validation of the curvature formula for MLS surfaces. „a…
Needle plot of curvatures of three planar curves. „b… Color map of the
curvature deviation. „c… Comparison of the curvature deviation with
different sampling densities of the input point set.
B-spline surface described as the can surface in Table 1. In this three slices, as shown in Figs. 9共b兲–9共d兲. In these figures, the
example, we select three planar curves determined by the inter- yellow planes represent the slicing planes, the red dot points rep-
section of the original can surface 共i.e., the nominal B-spline sur- resent the output 2D contours, and the green cross points represent
face兲 and three horizontal planes at z = 0.5, z = 1, and z = 1.5, whose the input part points with intensity fading away when they are
curvature distribution is shown in Fig. 8共a兲. farther away from the slicing plane. From these figures, we can
Applying the curvature formulas derived in the previous sec- see that the distribution of the points is curvature adaptive.
tion, we can calculate curvature distribution of three planar curves
determined by the intersection of the corresponding MLS surface Noisy or Sparse Point Sets. To validate the robustness of MLS
and the same three horizontal planes. The deviation between these in handling noisy or sparse point sets, we generate six synthetic
two groups of curvature distributions is illustrated with a color data from the nominal can surface by sampling different number
map shown in Fig. 8共b兲. Figure 8共b兲 indicates that larger curvature of points 共i.e., 2500 and 5000兲 and by adding random noise with
deviation between the curvatures computed from the nominal different standard deviations 共i.e., 0.01, 0.02, and 0.03兲. Among
B-spline surface and the curvatures computed from the closed them, three data sets that contain 5000 sampling points are further
formula developed in this paper occurs where the original surface rendered to illustrate the influence of the added noises, as shown
has larger curvatures. From the small curvature deviation, we can in Fig. 10. Using the same parameters and slicing these synthetic
conclude that 共1兲 the MLS surface approximates the original sur- data at the horizontal plane of z = 1.2, we get six sliced data rep-
face with a small error and 共2兲 the curvature formulas for planar resented by red dot points shown in Table 2. Comparing these
curves are correct. Moreover, when increasing the sampling den- sliced data, we can see that there is no significant change in the
sity of the input point set, the resulting curvature deviation tends sliced data when input points become sparse and noisy, which
to decrease. Using half of the middle curve 共z = 1兲 as an example, demonstrates the robustness of our algorithm in slicing noisy or
we showed this tendency in Fig. 8共c兲. sparse point sets.
Applying a similar validation for the alternative numerical For better illustrating the difference in the quality of the gener-
method for computing curve curvature through circle fitting shows ated slices, we employ the maximum error between the nominal
that the result of the alternative method is not as accurate as that can surface and the sliced data as a quantitative description of the
of our analytical method. This accuracy difference is more distinct data quality, as shown in Fig. 11. In Fig. 11, we find that the
in high curvature region, which further demonstrated the advan- maximum error is smaller than the given standard deviation for
tage of our analytical method in terms of accuracy. each of the six synthetic data, which reveals the denoising ability
of our algorithm.
Adaptive 2D Contour Generation. To validate the adaptive
2D contour generation algorithm, three slices at different heights Adaptive Layer Thickness Calculation. To validate the adap-
z = 1.2, z = 1.5, and z = 1.8 are shown in Fig. 9共a兲. For better illus- tive layer thickness strategy, we utilize an example of a synthetic
tration of the sliced data, we further give the top views of these wine glass data described in Table 1. In this example, the wine
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
Fig. 9 Slicing of the can data with three horizontal planes. „a… Isoview of the can data
with resulting 2D contours on three slicing planes. „b… Top view of the slice at z
= 1.2. „c… Top view of the slice at z = 1.5. „d… Top view of the slice at z = 1.8.
glass data are sliced into 87 layers with a prescribed cusp height ␦
as listed in Table 3. Figure 12共a兲 illustrates the input synthetic
data with green points and the slicing planes with black lines,
where a clear variation in the layer thickness is observed. More-
over, to clearly reveal the relationship between the layer thickness
d and the two parameters 共the slope angle and the curvature k兲,
three curves that represent d, , and k as a function of z coordinate
are shown in Fig. 12共b兲. Notice that the nominal wine glass sur-
face is generated by revolving a given profile curve about the z
Fig. 10 Rendered models of synthetic can data with different axis and all the vertical section curves on the surface are identical.
standard deviations of noise: „a… = 0.01, „b… = 0.02, and „c… Hence, we just use this profile curve to calculate the angle and
= 0.03
Table 2 Slicing of the can data with different noise levels and sample densities
2500
5000
Journal of Computing and Information Science in Engineering SEPTEMBER 2008, Vol. 8 / 031003-9
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
amples demonstrate that our algorithm can handle various point
sets, from simple synthetic data to complicated real measured
data.
7 Conclusions
In this paper, we present a MLS based approach for directly
slicing a point set into the LM model. In comparison with tradi-
tional slicing procedures, our method avoids the troublesome sur-
face reconstruction and avoids the potential model conversion in-
duced accuracy loss. When compared with existing direct slicing
procedures, our method circumvents the trade-off between the
projection error and the truncation error. Further, the resulting
contour profile does not depend on the density of the input point
Fig. 11 Illustration of the maximum error between the nominal set as in prevalent projection based slicing methods due to the use
can surface and the sliced data with different noise levels and of upsampling from MLS surfaces.
sample densities Since we employ the MLS as our underlying surface represen-
tation, our algorithm inherits various desirable properties of MLS
surfaces. For example, due to the smoothing effect of MLS, the
the curvature k. From Fig. 12共b兲, we can observe that when either slicing procedure is robust against measurement noise.
the angle or the curvature k becomes larger, the layer thickness Further, we present closed formulas for computing the curva-
d is smaller. ture of planar curves based on the implicit definition of the MLS.
As a result, the use of the curvature based adaptive 2D contour
Direct Slicing Algorithm. Using an excess deposition and and layer thickness generation algorithms increases the surface
specifying the cusp height ␦ as listed in Table 3, we obtained our quality of the resulting LM model and allows the control of the
implementation results illustrated in Table 3, where the yellow slicing error when approximating the MLS surface with discrete
planes with black edges represent the slicing planes. These ex- points.
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm
Fig. 12 Illustration of adaptive layer generation. „a… Front view of the wine glass data with
slicing planes in black. „b… Comparison of d, , and k as a function of z coordinate.
Acknowledgment 关10兴 Qian, X., and Dutta, D., 2001, “Feature Based Fabrication in Layered Manu-
facturing,” ASME J. Mech. Des., 123共3兲, pp. 337–345.
This work was supported in part by the National Science Foun- 关11兴 Pauly, M., Keiser, R., Kobbelt, L. P., and Gross, M., 2003, “Shape Modelling
dation Grant No. 0529165 and Air Force Office of Scientific Re- with Point-Sampled Geometry,” ACM Trans. Graphics, 22共3兲, pp. 641–650.
关12兴 Kobbelt, L., and Botsch, M., 2004, “A Survey of Point-based Techniques in
search Grant No. FA9550-07-1-0241. P.Y. is also supported by the Computer Graphics,” Comput. Graphics, 28共6兲, pp. 801–814.
2007 Fieldhouse Fellowship. 关13兴 Levin, D., 1998, “The Approximation Power of Moving Least-Squares,” Math.
Comput., 67, pp. 1517–1531.
关14兴 Levin, D., 2003, “Mesh-Independent Surface Interpolation,” Geometric Mod-
References elling for Scientific Visualization, G. Brunnett, B. Hamann, H. Muller, and L.
关1兴 Liu, G. H., Wong, Y. S., Zhang, Y. F., and Loh, H. T., 2003, “Error Based Linsen, eds., Springer-Verlag, Berlin, pp. 37–49.
Segmentation of Cloud Data for Direct Rapid Prototyping,” Comput.-Aided 关15兴 Amenta, N., and Kil, Y. J., 2004, “Defining Point-Set Surfaces,” ACM Trans.
Des., 35共7兲, pp. 633–645. Graphics, 23共3兲, pp. 264–270.
关2兴 Wu, Y. F., Wong, Y. S., Loh, H. T., and Zhang, Y. F., 2004, “Modelling Cloud 关16兴 Amenta, N., and Kil, Y. J., 2004, “The Domain of a Point Set Surface,” Eu-
Data Using an Adaptive Slicing Approach,” Comput.-Aided Des., 36共3兲, pp. rographics Workshop on Point-based Graphics, pp. 139–147.
231–240. 关17兴 Dey, T. K., Goswami, S., and Sun, J., 2005, “Extremal Surface Based Projec-
关3兴 Shin, H., Park, S., and Park, E., 2004, “Direct Slicing of a Point Set Model for tions Converge and Reconstruct With Isotopy,” Technical Report No. OSU-
Rapid Prototyping,” Proceedings of CAD’04, Pattaya, Thailand, May. CISRC-4–05-TR25.
关4兴 Saravana, K. G., Kalra, P. K., and Dhande, S. G., 2004, “Direct Layered 关18兴 Dey, T. K., and Sun, J., 2005, “Adaptive MLS Surfaces for Reconstruction
Manufacturing of Point Sampled Geometry,” Int. J. Manufacturing Technology with Guarantees,” Proceeding of the Eurographics Symposium on Geometry
& Management, 6共6兲, pp. 534–549. Processing, pp. 43–52.
关5兴 Mitra, N. J., Nguyen, A., and Guibas, L. J., 2004, “Estimating Surface Nor- 关19兴 Katz, S., Tal, A., and Basri, R., 2007, “Direct Visibility of Point Sets,” ACM
mals in Noisy Point Cloud Data,” Int. J. Comput. Geom. Appl., 14共4–5兲, pp. Trans. Graphics, 26共3兲, 24:1–24:11.
261–276. 关20兴 Pauly, M., 2003, “Point Primitives for Interactive Modeling and Processing of
关6兴 Surazhsky, T., Magid, E., Soldea, O., Elber, G., and Rivlin, E., 2003, “A 3D Geometry,” Ph.D. thesis, Computer Science Department, ETH Zurich, Zu-
Comparison of Gaussian and Mean Curvatures Estimation Methods on Trian- rich, Switzerland.
gular Meshes,” 2003 IEEE International Conference on Robotics & Automa- 关21兴 Hoppe, H., DeRose, T., Duchamp, T., McDonald, J., and Stuetzle, W., 1992,
tion (ICRA2003), pp. 1021–1026. “Surface Reconstruction From Unorganized Points,” Comput. Graphics,
关7兴 Kulkarni, P., Marsan, A., and Dutta, D., 2000, “A Review of Process Planning 26共2兲, pp. 71–78.
Techniques in Layered Manufacturing,” Rapid Prototyping J., 6共1兲, pp. 18–35. 关22兴 Goldman, R., 2005, “Curvature Formulas for Implicit Curves and Surfaces,”
关8兴 Pandey, P. M., Reddy, N. V., and Dhande, S. G., 2003, “Slicing Procedures in Comput. Aided Geom. Des., 22共7兲, pp. 632–658.
Layered Manufacturing: A Review,” Rapid Prototyping J., 9共5兲, pp. 274–288. 关23兴 de Berg, M., van Kreveld, M., Overmars, M., and Schwarzkopf, O., 1997,
关9兴 Kulkarni, P., and Dutta, D., 1996, “An Accurate Slicing Procedure for Layered Computational Geometry: Algorithms and Applications, Springer-Verlag, Ber-
Manufacturing,” CAD, 28共9兲, pp. 683–697. lin.
Journal of Computing and Information Science in Engineering SEPTEMBER 2008, Vol. 8 / 031003-11
Downloaded 20 Aug 2008 to 216.47.153.148. Redistribution subject to ASME license or copyright; see http://www.asme.org/terms/Terms_Use.cfm