Sei sulla pagina 1di 11

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/332794094

Topological Modeling for Vector Graphics

Article  in  IEEE Computer Graphics and Applications · May 2019


DOI: 10.1109/MCG.2019.2891277

CITATIONS READS

0 16

2 authors, including:

Boris Dalstein
VGC Software
4 PUBLICATIONS   48 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Vector graphics and animation View project

All content following this page was uploaded by Boris Dalstein on 08 May 2019.

The user has requested enhancement of the downloaded file.


Dissertation Impact

Topological Modeling
for Vector Graphics
Boris Dalstein
VGC Software

Editor: Jim Foley [foley@cc.gatech.edu]

Editor’s note:
Boris Dalstein received the 2017 Alain Fournier Award for the best Canadian
Computer Graphics Dissertation.

Abstract—Vector graphics refers to the use of geometrical primitives, such as Be  zier


curves, to represent digital images. It is becoming increasingly popular among graphic
designers who need to deliver resolution-independent content that looks sharp across all
types of desktop and mobile devices, or need to support user interactivity and animation.
Unfortunately, most vector graphics tools today have many limitations, such as the
inability to represent shapes sharing a common edge. In my doctoral dissertation, we
address this issue by developing a novel data structure, called the vector graphics
complex, which supports fundamental topological modeling operations for vector graphics
illustrations. We also extend this data structure to animation, allowing features of a
connected drawing to merge, split, appear, or disappear at desired times via keyframes
that introduce the desired topological change. The resulting space-time continuous
complex directly captures the time-varying topological structure, and allows features to
be readily edited in both space and time in a way that reflects the intent of the drawing.

& MY PHD DISSERTATION is about representing two of the existing edges (see Figure 1). While
the connectivity between two-dimensional (2-D) this seems simple enough, it turns out to be
shapes. For example, a user might draw a rectan- a challenging problem in the general case, for
gle, then draw another rectangle, and finally counterintuitive reasons, but before going into
decide that the two rectangles should share more details, let me tell you a relevant story.
a common edge, thus, effectively “gluing together” No more than a few months ago, while I was
curiously wandering through the numerous
Digital Object Identifier 10.1109/MCG.2019.2891277 aisles of SIGGRAPH 2018’s exhibition floor, what a
Date of current version 24 April 2019. surprise! I noticed a reproduction of Sutherland’s

0272-1716 ß 2019 IEEE Published by the IEEE Computer Society IEEE Computer Graphics and Applications
86
Figure 1. Simple topological operation on 2-D
vector graphics shapes: Gluing two rectangles along
a shared edge.

Sketchpad program,14 developed in 1963, and Figure 2. Sketchpad allows the explicit representation of n-way
widely recognized as one of the first interactive joins. Today’s most popular vector graphics editors and file
graphical programs. Barely anyone else seemed formats do not.
to notice it, or care much about it, but I was truly
ecstatic and I immediately started to play with it
drawing are automatically indicated by the
for a few minutes. Why the excitement? I had grad-
user as he sketches.
uated not long before, and Sutherland’s PhD dis-
Therefore, already back in 1963, Sutherland
sertation about Sketchpad is cited in the first
understood the value of explicitly storing topolog-
sentence of my own dissertation.
ical information about a drawing, such as the inci-
The reason for telling you this story is that my
dence relationship between lines: it allows users
dissertation can be seen as a direct follow-up of
to interact with the drawing in intuitive ways
Sutherland’s brilliant and highly impactful disser-
which would otherwise not be possible. In fact,
tation from 1963. And as of today, I am still baffled
not only did Sutherland pioneer vector graphics,
that my dissertation had not been written at least
but he also pioneered topological modeling.
30 years ago by somebody else. Indeed, apart
However, something surprising happened.
from a few other topological data structures
Fast-forward to 2018, the leading commercial
developed in the 1980s, I am essentially not build-
vector graphics editor in the industry, Adobe
ing on any other work more recent than that. Simi-
Illustrator CC, poorly supports this feature.
larly to how most of SIGGRAPH’s attendees failed
The leading open-source vector graphics editor,
to notice the beautiful reproduction of Sketchpad,
Inkscape, does not support this feature at all.
the computer graphics community seems to have
The leading and widely adopted open file format
failed to notice that such a deceptively simple
for vector graphics, W3C SVG 1.1, does not sup-
problem—representing the connectivity between
port this feature at all. Despite how obviously
2-D shapes—was still largely unsolved.
desirable this feature is, despite being described
in the abstract of one of the most well-known
1963–2018: A STEP BACKWARD? PhD dissertation in computer graphics history,
One of the core functionalities of Sketchpad despite the apparent simplicity of implementing
was to allow users to simultaneously edit three this feature, and despite more than 50 years of
or more incident lines by simply moving the development of the field, this feature is largely
point where they meet (see Figure 2, top). In the absent in today’s vector graphics landscape.
abstract of his dissertation, Sutherland writes: What went wrong? How did this happen? One
Sketchpad stores explicit information can only speculate. However, it may be a hint
about the topology of a drawing. If the user that there are some nonobvious, hidden issues
moves one vertex of a polygon, both adja- that make implementing this feature harder
cent sides will be moved. If the user moves than it looks: some intrinsic properties of vector
a symbol, all lines attached to that symbol graphics that went in the way and some funda-
will automatically move to stay attached mental problems that 50 years of research failed
to it. The topological connections of the to identify and solve.

May/June 2019
87
Dissertation Impact

filling), but dropping others (topological model-


ing). Still, it is surprising that so little research
has been done to try and reconcile the two, espe-
cially when topological modeling is common-
place within the 3-D modeling world. Is not 2-D
easier than 3-D? We will answer this question
later in this paper, but let us first get an intuition
of the challenges to overcome.
The vast majority of today’s vector graphics
editors use an internal representation similar to
that of the W3C SVG 1.1 standard. Topologically
Figure 3. Unlike our data structure, no previous vector graphics speaking, this representation is extremely sim-
representations support overlapping shapes with shared edges. ple: it is a sequence of independent curves
assigned attribute values such as “stroke-width,”
“stroke-color,” and “fill-color,” which is enough
to represent 2-D shapes. These shapes are
allowed to overlap each others (see Figure 3,
left), but they cannot share a common edge. It is
possible to create two shapes that appear to
have a common edge, but in fact no topological
information is explicitly stored, and the
“common edge” is in fact two unrelated edges
that just happen to have the same geometry.
Less commonly, other vector graphics editors
(or subtools such as Live Paint groups in Illustra-
Figure 4. Allowing shapes to overlap, and allowing them to be tor) are based on planar maps.3,2 Planar maps are
glued together along edges may result in nonplanar topologies. For able to represent a partition of the 2-D plane into
example, the object on the right is nonplanar: it is an orientable nonoverlapping regions, which is stored using a
surface of genus 1, homeomorphic to a torus with a missing disk. halfedge data structure. They are able to explic-
itly store the topological connections between
Somehow, a fascinating subfield of computer two shapes (see Figure 3, middle), but by defini-
graphics, topological modeling for vector graphics, tion they cannot represent overlapping shapes. In
failed to materialize in the 1970s to tackle these practice, this means that most vector graphics
problems. My dissertation is a long overdue tools are not compatible with this representation,
analysis of these problems, and a first attempt to and any geometric edit results in an expensive
solve a few of them. recomputation of the planar map, potentially los-
ing previously authored attributes. This severely
impedes artistic freedom.
MIXING OVERLAPPING Unlike these previous approaches, our new
WITH TOPOLOGY data structure6 is able to support both overlap-
A major limitation of Sketchpad, however, is ping and topological modeling (see Figure 3, right).
that it does not support “color filling.” In other The reason why this is more complicated than it
words, Sketchpad only allows the representation seems is that by allowing shapes to overlap, and
of 1-D lines, while today’s vector graphics also allowing to “glue” these shapes together
editors also support the representation of 2-D along edges, we may in the general case end
shapes, which is arguably more important than up with nonplanar topologies (see Figure 4), or
supporting topological modeling. In this sense, even nonorientable topologies (see Figure 5),
the period 1963–2018 is in fact not a step back- which are a special case of nonplanar topologies.
ward for vector graphics, but rather a step in a By definition, such nonplanar topologies cannot
different direction, adding some features (color be embedded in R2 (only an immersion can be

88 IEEE Computer Graphics and Applications


defined), which breaks many assumptions com-
monly done in vector graphics, and brings a few
complications detailed in my dissertation.

DATA STRUCTURE
Our data structure (see Figure 6), called vector
graphics complex (VGC), is a topological structure
made of four types of cell: vertices, open edges,
closed edges, and faces. A vertex is simply defined
as a 2-D point. An open edge is defined as a 2-D
directed curve that starts and ends at some verti-
ces, possibly equal. A closed edge is defined as a
2-D directed closed curve, with no start or end
vertex at all. Finally, a face is defined as a 2-D
closed region delimited by vertices and edges, Figure 5. Top: Constructing a topological Mo €bius strip via simple
ordered in cycles. A cycle is defined as either: a user interactions. Although users only manipulate an immersion in
closed sequence of consecutive open edges; or a R2 , the represented surface would be nonorientable if embedded
single closed edge; or a single vertex. in R3 , that is, it would only have one side. Bottom: Comparison
Typically, one of the cycles represents with an annulus. Note how the Mo €bius strip and the annulus are
the outer boundary of the face, and the other both composed of two vertices, three edges, and one face, but
cycles represent inner holes, possibly degener- the unique cycle of the face is different: in the case of the Mo €bius
ate (missing curves/points). However, because strip, e2 is used two times in the same direction, while in the case
the cycles of a given face may intersect, the of the annulus, e2 is used once in each direction. Constructing
distinction between outer boundary and inner topological Mo €bius strips in R2 is not possible if edges are not
holes is in general ill-defined. For this reason, allowed to overlap.
the VGC does not explicitly store whether a
cycle is an outer boundary or an inner hole.
Cycles made of consecutive open edges may
use the same edge e any number of times, and applications only represent the surface of 3-D
each of these edge-uses independently specifies shapes, that is, 2-D objects. The fact that in our
whether e is traversed in its intrinsic direction, or case, we immerse these 2-D objects in R2 rather
in the opposite direction. We use the term half- than R3 has little influence on the underlying
edge to refer to an edge with such specified direc- topological model. However, our specific use
tion, and we respectively denote by e and e1 the case targets less technical users with higher
two possible directions. This allows us to denote expectations in terms of artistic freedom, which
cycles using a convenient multiplicative notation, requires us to support a few special cases that
such as g ¼ e2 e1 1 are typically not supported in 3-D modeling
5 e6 e6 e7 . Cycles made of a single
closed edge e may use it multiple times, but all applications.
uses must be with the same direction, i.e., either For example, as we detail in the dissertation,
g ¼ en or g ¼ en . This represents a cycle that not only do we need to be able to represent non-
circles around the same closed edge multiple planar topologies, but also nonorientable topolo-
times. Finally, cycles made of a single vertex v are gies. This excludes the use of the popular halfedge
called Steiner cycles and denoted g ¼ v. and winged-edge data structures,4 which can only
represent orientable surfaces. Also, 2-D artists
often use a variety of techniques to depict their
COMPARISON WITH 3-D MODELING subjects, often including thin features drawn as
Our data structure is a boundary-based a single line, such as the whiskers of a cat. This
representation (B-rep), and has many similari- results in frequent use of nonmanifold objects
ties with existing data structures used for 3-D (see Figure 7), which cannot be represented by
topological modeling. In fact, many 3-D modeling the quad-edge data structure,10 for example.

May/June 2019
89
Dissertation Impact

Figure 6. Example C++ implementation of the VGC. In addition to the minimal information required, this implementation
also stores the star of each cell c, which is the set of cells c0 whose boundary contains c.

Potential data structures supporting mixed- radial-edge data structure,15 or generalized


dimensional nonmanifold topologies include maps.12 Unfortunately, they all have shortcom-
simplicial complexes (= triangulations), the ings for our use case, such as the need to decom-
pose the object into more entities than an artist
would like to. For example, 2-D artists often like
to be able to represent and manipulate closed
curves as one single entity, without the need to
arbitrarily have to split the curve with a vertex.
It would be possible to use these other struc-
tures as underlying representations hidden by the
user interface, but this does not remove the
need to define a higher level layer of abstraction.
Figure 7. Example of nonmanifold topologies supported by our In other words, VGCs could be implemented
data structures. In the case of surfaces with boundary, “manifold” in terms of triangulations, but the need for a
means “everywhere locally homeomorphic to R2 or R  ½0; 1Þ”, user-friendly “VGC interface” still remains, and
that is, no tie-vertices (bottom-left), no 1-D features (bottom- implementing this interface in terms of triangula-
middle, and right), and every edge must have either one or two tions is not necessarily helpful. A relevant
incident faces. data structure with almost all our desiderata

90 IEEE Computer Graphics and Applications


(e.g., able to represent a closed curve as one
entity) is the selective geometric complex,13 but
unfortunately it can only represent embeddings,
while we also require to represent immersions.
At the end of the day, we chose a representation
most similar to Weiler’s radial-edge structure,15
but removing some features that we do not need, Figure 8. Topology of these two keyframes is not the same: how
and adding some others that we do need. to interpolate between them?

2-D ANIMATION WITH TIME- TOPOLOGICAL KEYFRAMING


VARYING TOPOLOGY In order to get an intuition behind this space-
As a follow-up to this paper, we extended this time structure, consider a simpler example: ani-
data structure to support animation.7 In particu- mating a point P that splits into two points Q
lar, we were interested to be able to represent and R. To specify such animation, one needs to
animations of shapes whose topology continu- represent:
ously changes over time. Although we published  An animated position P ðtÞ for t 2 ½t0 ; t1 ,
this work a year later, it was in fact our original where t0 is some time before the split, and t1
motivation, and I had been working on this prob- is when the split occurs.
lem since my Master’s.  Animated positions QðtÞ and RðtÞ for t 2
Although relatively rare in the world of 3-D ½t1 ; t2 , where t2 is some time after the split.
animation, time-varying topology is the norm
rather than the exception in 2-D hand-drawn The first observation is that we must have
animation. Indeed, since each keyframe is manu- P ðt1 Þ ¼ Qðt1 Þ ¼ Rðt1 Þ. To avoid redundancy, we
ally drawn by hand, consecutive keyframes tend store this value only once as a pair v1 ¼ ðt1 ; p1 Þ
not to use the same number of strokes or which we call a key value, and which can be seen
the same connections between these strokes as the temporal equivalent of storing only once a
(see Figure 8). This makes it really hard to auto- shared edge between two shapes. Other key values
mate the generation of inbetween frames, that is, we need are v0 ¼ ðt0 ; P ðt0 ÞÞ, v2 ¼ ðt2 ; Qðt2 ÞÞ, and
to automatically interpolate between two hand- v3 ¼ ðt2 ; Rðt2 ÞÞ, respectively, storing the initial
drawn keyframes. This problem has been identi- position of P , and the final positions of Q and R.
fied early on by Ed Catmull in 1978,5 and remains Once we have defined this set of key values
largely unsolved today. Attempted solutions V ¼ fv0 ; v1 ; v2 ; v3 g, we simply need to specify that
are either pixel based and result in blurring v0 must be interpolated into v1 , and then that v1
artefacts,1 or are limited to cases that could must be interpolated into both v2 and v3 . This can
be solved via layering11 (that is, hidden be done by interpreting V as the nodes of a graph
strokes are automatically reconstructed), or G, where ðv0 ; v1 Þ, ðv1 ; v2 Þ, and ðv1 ; v3 Þ would be the
only provide automation for the subset of the edges of this graph. We call this paradigm
keyframes with consistent topology, and let “topological keyframing”: it contrasts with the
the artist manually draw the remaining subset more conventional paradigm (which we call
with inconsistent topology.16 “sequential keyframing”), where a fixed number of
None of the approaches really had an effec- animation variables are defined and then animated
tive mathematical representation to describe independently, making it impossible for the num-
the topological changes going from one image to ber of degrees of freedom to change over time. See
another. Such a representation seemed like an Figure 10, for a comparison of these paradigms.
obvious prerequisite to solve the inbetweening Our proposed space-time topological com-
problem, therefore we decided to focus on this. plex is an extension of this idea to represent not
Our idea was to represent a 2-D animation as only points that split and merge, but also curves
a 3-D space-time topological complex, as illus- and 2-D shapes that split and merge. We refer to
trated in Figure 9. the paper for more details, but in particular, one

May/June 2019
91
Dissertation Impact

Figure 9. Time-continuous 2-D animation of a bird represented as a 3-D space-time topological complex. Top: Space-
time view. Bottom: output animation.

can notice that within this paradigm, an ani- users (most likely the most enthusiastic users, so
mated 2-D shape is in fact a volume in space- this should be taken with a grain of salt: we did
time, and representing volumes, especially with not conduct any formal user study). Overall, the
nonmanifold topology, is notoriously hard. feedback was extremely positive, with users being
excited by the potential of the technology both for
static images and animation. However, the current
PRESENT AND FUTURE IMPACT lack in our prototype of many features commonly
Our approach has been implemented in found in other editors (e.g., brush styles, textures,
the open-source prototype VPaint (https://www. grids, guides, compositing, grouping, cloning,
vpaint.org), which has been downloaded around alignment tools, curve tangents editing, text fea-
15 000 times as of this writing, and we have tures, color management, better import–export
received spontaneous feedback from a few dozen options, better timeline editing operations) makes

92 IEEE Computer Graphics and Applications


Figure 10. Left: The existing keyframing paradigm, defining an animation as ordered sequences of key values. Right: Our
more general approach, where key values are unordered but labeled, and inbetween values specify which ones to interpolate.

it frustrating to use for anything other than toy explicitly tracks time-continuous topological
examples. Also, while topological operations are changes as we do, that is, either they are pixel
generally extremely fast by nature (just a few bits based and subject to blurring artefacts, or they
to update), we did not optimize at all rendering do not support topological changes. Vector-
and it is currently a bottleneck in VPaint, making based approaches could certainly benefit from
the sketching experience subpar past a few hun- using the VGC.
dred strokes. That being said, we have no reason Not surprisingly, current 2-D drawing pro-
to believe that rendering a VGC should be notice- grams have not been updated to use the VGC,
ably slower than rendering any other vector as this new drawing paradigm represents quite a
graphics representation, once optimized using significant shift, changing at its core the internal
comparable techniques. representation of illustrations and animations.
Several researchers have leveraged the This makes it almost impossible for existing
expressiveness of the VGC data structure for tools to adopt it without rewriting most of their
their use cases. Garcia et al.9 developed a backend, and it is typically impossible to imple-
method to assist geologists in finding out and ment the VGC as a plugin since the core
describing a sequence of geological events (e.g., representation of a program is generally not
the formation of a mountain range), where the customizable. This is obviously a big barrier
topological connections between geological for adoption.
layers are stored using the VGC. This is quite an Also, it is important to note that hand-drawn
unexpected use case, but our data structure is in animation requires a lot of artistic skills, precision,
fact eminently suitable for it. More related to our and patience, and that it is very unusual for aca-
intended use case, Entem et al.8 proposed an demic researchers to have the time to build a user
approach to convert a given contour drawing of interface polished enough for artists to be able to
organic shapes (animals, humans, etc.) into a do any meaningful testing. Also, finding skilled tra-
layered structure with added semantics, using ditional animators in the first place is quite diffi-
the VGC as their output format. cult. As a consequence of all these factors,
Unfortunately, there is yet to be seen any progress in this field is typically quite slow.
work using or extending our space-time data In the long term, it is entirely possible that
structure for 2-D animation. There are a few par- commercial tools will incorporate VGC concepts.
allel attempts to tackle the problem of automatic As a strict superset of the representations
inbetweening,17; 18 but none using a method that currently in use, it enables useful drawing

May/June 2019
93
Dissertation Impact

paradigms without sacrificing any other fea- a selection mechanism, a rendering engine,
tures, and it is quite simple to implement if doing brush styles, layers, and others. Indeed, while
it from scratch (replacing an existing architec- 3-D software typically has a lot of modularity
ture may be more complicated). If deemed too to test out techniques as plugins, it is much
confusing for beginner users, the additional less common in 2-D software, slowing down
features such as allowing the representation of academic research.
shared edges may even be disabled by default, Finally, as far as 2-D animation is concerned,
and only made available on an opt-in basis. we are only scratching the surface of what can
However, there still remain a few details to be possible. Surprisingly, this field seems much
figure out before such structures are production- less mature than 3-D animation, with only very
ready. For example, now that it is possible to rep- basic tools commercially available compared to
resent three strokes incident at a common vertex, what is available for 3-D animation. With our
it is necessary to be able to render this junction research, we now have a data structure to repre-
appropriately. This is not necessarily trivial if the sent the topological events which are so com-
strokes have different widths or colors: what mon in 2-D hand-drawn animation, but we still
should the geometry of the junction look like? have no good tools to automatically generate
Should it be a round or a Miter join? How should such topology from scanned drawings, for exam-
the color or brush style transition from one stroke ple. More generally, how to create, manipulate,
to the others? All of these are currently open and visualize this structure in a way that is use-
questions, but we believe are reasonably answer- ful for users is still mostly open, and an exciting
able, and it is likely that different tools choose dif- future direction to explore.
ferent solutions, providing artists with different
controls on how to style these junctions.
Other open-ended questions are about subtle
& REFERENCES
choices in the user interface: how should the clas- 1. M. Alexa, D. Cohen-Or, and D. Levin, “As-rigid-as-
sical concept of “groups” interact with the topol- possible shape interpolation,” in Proc. SIGGRAPH,
ogy? Should we allow shapes in different groups 2000, pp. 157–164.
to share common edges? How about the concept 2. P. Asente, M. Schuster, and T. Pettit, “Dynamic planar
of “layers”? There are also questions related to map illustration,” ACM Trans. Graph., vol. 39, no. 3,
the selection mechanism: should selecting a face pp. 30:1–30:10, 2007.
automatically select its bounding edges? How 3. P. Baudelaire and M. Gangnet, “Planar maps: An
about deleting a face, should it preserve its interaction paradigm for graphic design,” in Proc. CHI,
boundary by default? All these questions have no 1989, pp. 313–318.
equivalent in the representations currently in 4. B. G. Baumgart, “Winged edge polyhedron
use, where a face and its boundary are typically representation,” Tech. Rep. STAN-CS-72-320, DTIC
represented as one single curve entity with a Document, Stanford Univ., Stanford, CA, USA, 1972.
“stroke-color” and “fill-color” attributes. 5. E. Catmull, “The problems of computer-assisted
Exploring these questions is one of the animation,” SIGGRAPH Comput. Graph., vol. 12, no. 3,
goals of my new startup company VGC Software pp. 348–353, 1978.
(https://www.vgc.io). By developing a full- 6. B. Dalstein, R. Ronfard, and M. van de Panne, “Vector
featured professional vector graphics editor graphics complexes,” ACM Trans. Graph., vol. 33, no. 4,
based on the VGC data structure, I hope to pp. 133:1–133:12, 2014.
attract more users, whose interactions with the 7. B. Dalstein, R. Ronfard, and M. van de Panne, “Vector
software might provide more insight on the graphics animation with time-varying topology,” ACM
relevance of this data structure, and its long- Trans. Graph., vol. 34, no. 4, pp. 145:1–145:12,
term prospect. By keeping the software open- Jul. 2015.
source and embedding a Python console, I 8. E. Entem, A. Dev Parakkat, M.-P. Cani, and L. Barthe,
also hope that it will make research in this “Structuring and layering contour drawings of organic
field more accessible, avoiding the need for shapes,” in Proc. Joint Symp. Comput. Aesthetics
graduate students to implement from scratch Sketch-Based Interfaces Modeling Non-Photorealistic

94 IEEE Computer Graphics and Applications


Animation Rendering, Vol. 18, Vic., Canada, 14. I. E. Sutherland, “Sketchpad, a Man-Machine Graphical
Aug. 2018, pp. 1–14. Communication System,” Ph.D. dissertation,
9. M. Garcia, M.-P. Cani, R. Ronfard, C. Gout, and Massachusetts Inst. Technol., Cambridge, MA, USA,
C. Perrenoud, “Automatic generation of geological 1963.
stories from a single sketch,” in Proc. Expressive, Vic., 15. K. Weiler, “Topological structures for geometric
Canada, Aug. 2018, pp. 17–19. modeling,” Ph.D. dissertation, Rensselaer Polytechnic
10. L. Guibas and J. Stolfi, “Primitives for the manipulation Inst., Troy, NY, USA, 1986.
of general subdivisions and the computation of 16. B. Whited, G. Noris, M. Simmons, R. Sumner, M. Gross,
Voronoi,” ACM Trans. Graph., vol. 4, no. 2, pp. 74–123, and J. Rossignac, “BetweenIT: An interactive tool for
Apr. 1985. tight inbetweening,” Comput. Graph. Forum, vol. 29,
11. A. Kort, “Computer aided inbetweening,” in Proc. 2nd no. 2, pp. 605–614, 2010.
Int. Symp. Non-Photorealistic Animation Rendering, 17. J. Xing, L.-Y. Wei, T. Shiratori, and K. Yatani,
2002, pp. 125–132. “Autocomplete hand-drawn animations,” ACM
12. P. Lienhardt, “Subdivisions of n-dimensional Trans. Graph., vol. 34, no. 6, pp. 169:1–169, Oct.
spaces and n-dimensional generalized maps,” in 2015.
Proc. 5th Annu. Symp. Comput. Geometry, 1989, 18. W. Yang, H.-S. Seah, Q. Chen, H.-Z. Liew, and
pp. 228–236. D. Sykora, “FTP-SC: Fuzzy topology preserving stroke
13. J. Rossignac and M. O’Connor, “SGC: A dimension- correspondence,” Comput. Graph. Forum, vol. 37,
independent model for pointsets with internal no. 8, pp. 125–135, 2018.
structures and incomplete boundaries,” Res. Rep. IBM
T. J. Watson Research Center, Yorktown Heights, NY, Contact department editor Jim Foley at foley@
USA, 1989. cc.gatech.edu.

May/June 2019
95
View publication stats

Potrebbero piacerti anche