  A new predictor-corrector type incremental algorithm is proposed for the
exact construction of weighted straight skeletons of 2D general planar polygons
of arbitrary complexity based on the notion of deforming polygon. In the
proposed algorithm, the raw input provided by the polygon itself is enough to
resolve edge collapse and edge split events. Neither the construction of a
kinetic triangulation nor the computation of a motorcycle graph is required.
Due to its incremental nature, there is always a room in the algorithm for the
interactive construction of the straight skeleton. The proposed algorithm is of
predictor-corrector type. In the algorithm, the edge collapse and edge split
events are tackled by a completely different novel original approach which is
first of its kind. In the predictor step, the position of the vertices is
advanced in time by direct integration assuming no event. Then predicted
positions are corrected by using linear interpolation if there are edge
collapse or edge split events within the same increment. In the algorithm edge
collapse and edge split events are detected by, respectively, edge swap and
edge penetration. The proposed algorithm has been used to construct roof
topology starting from a floor plan of various complexity ranging from simple
convex to highly nonconvex with holes. In order to construct, improve and test
the building blocks of the underlying algorithm, a graphical user interface,
Straight Skeleton Development Kit, has also been developed in parallel by the
author using C++ programming language.
