Research Teaching Software Miscellaneous About me Resume

Welcome to Xianming Chen's homepage. I graduated from the doctoral program at the School of Computing, University of Utah in May 2008. I am doing research and development in the area of geometric modeling, and I am generally interested in any geometry/topology related topics in various areas including modeling, graphics, hepatics, visualization, imaging, and robotics etc.

I was a research assistant at the Geometric Design and Computation Group (GDC) of University of Utah from 2002 to 2007, and was a graphics instructor at Summer programs for high school students at Columbia University in 2004. I left Salt Lake City early 2007, and was a lead scientist consulting at Siemens Technology-To-Business Center from 2007 to 2008. I joined SolidWorks Corp. in 2008. I also hold a B.S. degree in Physics from the University of Science and Technology of China and was a physics lecturer in Tianjin Institute of Urban Construction from 1989 to 1998.

Ph.D. Thesis

An Application of Singularity Theory to Robust Geometric Calculation of Intersections Among Dynamically Deforming Geometric Objects
Ph.D. thesis, University of Utah, May 2008. (paper) (abstract) (Demo video) (bibtex)


An Algorithm for Direct B-spline Multiplication
To appear in IEEE Transactions on Automation Science and Engineering, October 2009. (paper) (bibtex)
Xianming Chen, Riesenfeld, Elaine Cohen

B-spline multiplication, that is, finding the coefficients of the product B-spline of two given B-splines is useful as an end result, in addition to being an important prerequisite component to many other symbolic computation operations on B-splines. Algorithms for B-spline multiplication standardly use indirect approaches such as nodal interpolation or computing the product of each set of polynomial pieces using various bases. The original direct approach is complicated. B-spline blossoming provides another direct approach that can be straightforwardly translated from mathematical equation to implementation; however, the algorithm does not scale well with degree or dimension of the subject tensor product B-splines. To addresses the difficulties mentioned heretofore, we present the Sliding Windows Algorithm (SWA), a new blossoming based algorithm for the multiplication of two B-spline curves, two B-spline surfaces, or any two general multivariate B-splines.

Index Terms
NURBS Multiplication Algorithm, B-spline Multiplication Algorithm, SWA, Sliding Windows Algorithm, Blossoming, B-spline Curve, B-spline Surface, Multi-variate B-spline

Theoretically Based Algorithms for Robustly Intersection Curves of Deforming Surfaces
Computer-Aided Design,Volume 39, Issue 5, May 2007, Pages 389-397 (paper) (bibtex)
Xianming Chen, Richard Riesenfeld, Elaine Cohen, James Damon

This paper applies singularity theory of mappings of surfaces to 3-space and the generic transitions occurring in their deformations to develop algorithms for continuously and robustly tracking the intersection curves of two deforming parametric spline surfaces, when the deformation is represented as a family of generalized offset surfaces. The set of intersection curves of 2 deforming surfaces over all time is formulated as an implicit 2-manifold in the augmented (by time domain) parametric 5-space. Hyper-planes corresponding to some fixed time instants may touch the implicit 2-manifold at some isolated transition points, which delineate transition events, i.e., the topological changes to the intersection curves. These transition points are the 0-dimensional solution to a rational system of 5 constraints in 5 variables, and can be computed efficiently and robustly with a rational constraint solver using subdivision and hyper- tangent bounding cones. The actual transition events are computed by contouring the local osculating paraboloids. Away from any transition points, the intersection curves do not change topology and evolve according to a simple evolution vector field that is constructed in the euclidean space in which the surfaces are embedded.

Index Terms
Deforming Surface/Surface Intersection, Generalized Offset Surface, Evolution Vector Field, Topological Transition Event, Shape Computation of Implicit 2-Manifold in 5-Space, Morse Function, Critical Point, B-spline Surface,

Complexity Reduction for Symbolic Computation with Rational B-splines
International Journal of Shape Modeling (IJSM) Volume 13, Issue 1, June 2007, Page: 25-49 (paper) (bibtex)
Xianming Chen, Riesenfeld, Elaine Cohen

Symbolic computation of NURBS plays an important role in many areas of NURBS-based geometric computation and design. However, any nontrivial symbolic computation, especially when rational B-splines are involved, would typically result in B-splines with high degrees. In this paper we develop degree reduction strategies for NURBS symbolic computation on curves. The specific topics we consider include zero curvatures and critical curvatures of plane curves, various ruled surfaces related to space curves, and point/curve bisectors and curve/curve bisectors.

Index Terms
NURBS Symbolic Computation, Rational B-spline, B-spline Degree Reduction, Zero Curvature, Curve Inflection Point, Critical Curvature, Torsion, Evolute, Focal Curve, Tangent Developable, Normal Scroll, Binormal Scroll, Rectifying Developable, Point-Curve Bisector, Curve-Curve Bisector.

Dynamic Point-Curve Critical Distances
Springer-Verlag Lecture Notes in Computer Science 4077, 2006, Page: 87-100 (paper) (bibtex)
Xianming Chen, Elaine Cohen, Richard Riesenfeld

This paper presents a novel approach to continuously and robustly tracking critical (geometrically, perpendicular and/or extremal) distances from a moving plane point p to a parametrized piecewise rational plane curve. The approach is a combination of local marching, and the detection and computation of global topological change, both based on the differential properties of a constructed implicit surface. Unlike many techniques, it does not use any global search strategy except at initialization. Implementing the mathematical idea from singularity community, we encode the critical distance surface as an implicit surface in the augmented parameter space of dimension 3. In most situations, when p is perturbed, its corresponding critical distances can be evolved without structural change by marching along a sectional curve on this implicit surface of 3-space. However, occasionally, when the perturbation crosses the evolute of the plane curve, there is a transition event at which a pair of p's current critical distances is annihilated, or a new pair is created and added to the set of p's critical distances. To safely eliminate any global search for critical distances, we develop robust and efficient algorithm to perform the detection and computation of transition events. Additional transition events caused by various curve discontinuities are also investigated. Our implementation assumes a B-spline representation for the curve and has interactive speed even on a lower end laptop computer.

Index Terms
B-spline Curve, Curve Evolute, Extended Curve Evolute, Transition Set, Critical Distance, Perpendicular Distance, Extremal Distance, Minimal Distance, Transition Event, Annihilation Event, Creation Event, Normal Bundle, Lifted Normal Bundle, Evolute Cusp,

Rational Bezier Patch Differentiation using the Rational Forward Difference Operator
Proceedings of IEEE Computer Graphics International 2005, Page:129-134. (paper) (bibtex)
Xianming Chen, Richard F. Riesenfeld, Elaine Cohen

This paper introduces the rational forward difference operator for differential computation on a rational Bezier patch based on its control mesh. With this rational version of the forward difference operator, and by ignoring the appropriate dependent (on lower order derivatives) terms of various derivatives, the derivatives themselves have the same expressions as their polynomial counterparts; the curvature and torsion, and the first and second fundamental forms, all have very similar expressions as those equations from classical differential geometry. This new approach also allows straightforward generalization to higher dimensional rational Bezier patches, the special co-dimension 1 case of which is treated with the result of the first and second fundamental forms.

Index Terms
Derivatives at End Points of Bezier Patch, Forward Difference, Rational Forward Difference, Rational Bezier Patches, Curvature, Torsion, Higher Dimension Rational Bezier Patches.

Mold Accessibility via Gauss Map Analysis
ASME Transactions, Journal of Computing and Information Science in Engineering Volume 5, Issue 2, June 2005, Page:79-85. (paper) (bibtex)
Gershon Elber, Xianming Chen, Elaine Cohen

In manufacturing processes like injection molding or die casting, a two-piece mold is required to be separable, that is, be able to have both pieces of the mold removed in opposite directions while interfering neither with the mold nor with each other. The fundamental problem is to find a viewing (i.e., separating) direction, from which a valid partition line (i.e., the contact curves of the two mold pieces) exists. While previous research work on this problem exists for polyhedral models, verifying and finding such a partition line for general freeform shapes, represented by NURBS surfaces, is still an open question. This paper shows that such a valid partition exists for a compact surface of genus g, if and only if there is a viewing direction from which the silhouette consists of exactly g+1 nonsingular disjoint loops. Hence, the two-piece mold separability problem is essentially reduced to the topological analysis of silhouettes. In addition, we deal with removing almost vertical surface regions from the mold so that the form can more easily be extracted from the mold. It follows that the aspect graph, which gives all topologically distinct silhouettes, allows one to determine the existence of a valid partition as well as to find such a partition when it exists. In this paper, we present an aspect graph computation technique for compact free-form objects represented as NURBS surfaces. All the vision event curves (parabolic curves, flecnodal curves, and bitangency curves) relevant to mold separability are computed by symbolic techniques based on the NURBS representation, combined with numerical processing. An image dilation technique is then used for robust aspect graph cell decomposition on the sphere of viewing directions. Thus, an exact solution to the two-piece mold separability problem is given for such models.

Index Terms
2-Piece Mold, Mold Separability, Injection Molding, Die Casting, Silhouette Generator, Silhouette, Aspect Graph, Vision Event, Visibility, Parabolic Curve, Second Fundamental Form, Gauss Map, Asymptotic Direction, Asympotitic Curve, Flecnodal Curve, Geodesic Inflection Point, Axis Cylinder Developable, Flecnodal Scroll, Bi-tangent Developable, Beak-to-Beak Event, Swallow-Tail Event, Cusp, Cusp-Crossing, T-Junction, Triple-Point Event, Image Dilation.


These are the web pages of the course I taught at Columbia University summer 2004.
Columbia Summer High School Program Graphics Course: Session 1
Columbia Summer High School Program Graphics Course: Session 2


sShape is an ongoing project of geometric modeling with B-spline, emphasizing on the differential and topological problems related to geometric modeling. Closely related to my Ph.D. dissertation,singularity detection and analysis have their major plays in some components of sShape.

Some example images generated using sShape

euler: euler: A C++ implementation of the Geometric WorkBench by Martti Mantyla, as described in his book:
An Introduction to Solid Modeling (1988).


I once planned to work on physically realistic rendering, and have spent much time on these course works.
Ray Tracer projects in the class Ray Tracing
Image Synthesis projects in the class Image Synthesis