1,689 research outputs found

    Translation queries for sets of polygons

    Get PDF

    Reasoning about representations in autonomous systems: what Pólya and Lakatos have to say

    Get PDF

    Steinitz Theorems for Orthogonal Polyhedra

    Full text link
    We define a simple orthogonal polyhedron to be a three-dimensional polyhedron with the topology of a sphere in which three mutually-perpendicular edges meet at each vertex. By analogy to Steinitz's theorem characterizing the graphs of convex polyhedra, we find graph-theoretic characterizations of three classes of simple orthogonal polyhedra: corner polyhedra, which can be drawn by isometric projection in the plane with only one hidden vertex, xyz polyhedra, in which each axis-parallel line through a vertex contains exactly one other vertex, and arbitrary simple orthogonal polyhedra. In particular, the graphs of xyz polyhedra are exactly the bipartite cubic polyhedral graphs, and every bipartite cubic polyhedral graph with a 4-connected dual graph is the graph of a corner polyhedron. Based on our characterizations we find efficient algorithms for constructing orthogonal polyhedra from their graphs.Comment: 48 pages, 31 figure

    Computer Graphics and Human Computer Interfaces

    Get PDF

    Visualizing Cells in Three Dimensions Using Confocal Microscopy, Image Reconstruction and Isosurface Rendering: Application to Glial Cells in Mouse Central Nervous System

    Get PDF
    This paper describes a general method for visualizing individual cells in intact tissue in three dimensions. The method involves immunostaining intact tissue to label specific cells, optical sectioning the stained tissue by laser scanning confocal microscopy, computationally reconstructing a three dimensional image data set from the digitized confocal optical sections, delineating isosurfaces of specific intensity within the reconstructed image by a marching cubes algorithm to generate polygon meshes defining boundaries of cells, and displaying individual cells, identified as three dimensional objects enclosed by contiguous polygon meshes, using computer graphics techniques. Each of the components of this method has been described previously in conjunction with other applications. However the combination of these techniques to visualize a variety of different individual cell types in three dimensions in intact tissue represents a new approach. To illustrate the application of this method, we have visualized three different glial cell types in mouse CNS tissue. Oligodendrocytes, specifically stained with antibody to myelin basic protein, were used as an example of cells labelled with an internal membrane antigen. Astrocytes, specifically stained with antibody to glial fibrillary acidic protein, were used as an example of cells labelled with a cytoplasmic antigen. Microglia, specifically stained with Mac.1 antibody, were used as an example of cells labelled with an external membrane antigen. The images that are generated contain remarkably detailed volumetric and textural information that is not obtainable by conventional imaging techniques

    Algorithms for fat objects : decompositions and applications

    Get PDF
    Computational geometry is the branch of theoretical computer science that deals with algorithms and data structures for geometric objects. The most basic geometric objects include points, lines, polygons, and polyhedra. Computational geometry has applications in many areas of computer science, including computer graphics, robotics, and geographic information systems. In many computational-geometry problems, the theoretical worst case is achieved by input that is in some way "unrealistic". This causes situations where the theoretical running time is not a good predictor of the running time in practice. In addition, algorithms must also be designed with the worst-case examples in mind, which causes them to be needlessly complicated. In recent years, realistic input models have been proposed in an attempt to deal with this problem. The usual form such solutions take is to limit some geometric property of the input to a constant. We examine a specific realistic input model in this thesis: the model where objects are restricted to be fat. Intuitively, objects that are more like a ball are more fat, and objects that are more like a long pole are less fat. We look at fat objects in the context of five different problems—two related to decompositions of input objects and three problems suggested by computer graphics. Decompositions of geometric objects are important because they are often used as a preliminary step in other algorithms, since many algorithms can only handle geometric objects that are convex and preferably of low complexity. The two main issues in developing decomposition algorithms are to keep the number of pieces produced by the decomposition small and to compute the decomposition quickly. The main question we address is the following: is it possible to obtain better decompositions for fat objects than for general objects, and/or is it possible to obtain decompositions quickly? These questions are also interesting because most research into fat objects has concerned objects that are convex. We begin by triangulating fat polygons. The problem of triangulating polygons—that is, partitioning them into triangles without adding any vertices—has been solved already, but the only linear-time algorithm is so complicated that it has never been implemented. We propose two algorithms for triangulating fat polygons in linear time that are much simpler. They make use of the observation that a small set of guards placed at points inside a (certain type of) fat polygon is sufficient to see the boundary of such a polygon. We then look at decompositions of fat polyhedra in three dimensions. We show that polyhedra can be decomposed into a linear number of convex pieces if certain fatness restrictions aremet. We also show that if these restrictions are notmet, a quadratic number of pieces may be needed. We also show that if we wish the output to be fat and convex, the restrictions must be much tighter. We then study three computational-geometry problems inspired by computer graphics. First, we study ray-shooting amidst fat objects from two perspectives. This is the problem of preprocessing data into a data structure that can answer which object is first hit by a query ray in a given direction from a given point. We present a new data structure for answering vertical ray-shooting queries—that is, queries where the ray’s direction is fixed—as well as a data structure for answering ray-shooting queries for rays with arbitrary direction. Both structures improve the best known results on these problems. Another problem that is studied in the field of computer graphics is the depth-order problem. We study it in the context of computational geometry. This is the problem of finding an ordering of the objects in the scene from "top" to "bottom", where one object is above the other if they share a point in the projection to the xy-plane and the first object has a higher z-value at that point. We give an algorithm for finding the depth order of a group of fat objects and an algorithm for verifying if a depth order of a group of fat objects is correct. The latter algorithm is useful because the former can return an incorrect order if the objects do not have a depth order (this can happen if the above/below relationship has a cycle in it). The first algorithm improves on the results previously known for fat objects; the second is the first algorithm for verifying depth orders of fat objects. The final problem that we study is the hidden-surface removal problem. In this problem, we wish to find and report the visible portions of a scene from a given viewpoint—this is called the visibility map. The main difficulty in this problem is to find an algorithm whose running time depends in part on the complexity of the output. For example, if all but one of the objects in the input scene are hidden behind one large object, then our algorithm should have a faster running time than if all of the objects are visible and have borders that overlap. We give such an algorithm that improves on the running time of previous algorithms for fat objects. Furthermore, our algorithm is able to handle curved objects and situations where the objects do not have a depth order—two features missing from most other algorithms that perform hidden surface removal

    Sculpting in cyberspace: Parallel processing the development of new software

    Get PDF
    Stimulating creativity in problem solving, particularly where software development is involved, is applicable to many disciplines. Metaphorical thinking keeps the problem in focus but in a different light, jarring people out of their mental ruts and sparking fresh insights. It forces the mind to stretch to find patterns between dissimilar concepts, in the hope of discovering unusual ideas in odd associations (Technology Review January 1993, p. 37). With a background in Engineering and Visual Design from MIT, I have for the past 30 years pursued a career as a sculptor of interdisciplinary monumental artworks that bridge the fields of science, engineering and art. Since 1979, I have pioneered the application of computer simulation to solve the complex problems associated with these projects. A recent project for the roof of the Carnegie Science Center in Pittsburgh made particular use of the metaphoric creativity technique described above. The problem-solving process led to the creation of hybrid software combining scientific, architectural and engineering visualization techniques. David Steich, a Doctoral Candidate in Electrical Engineering at Penn State, was commissioned to develop special software that enabled me to create innovative free-form sculpture. This paper explores the process of inventing the software through a detailed analysis of the interaction between an artist and a computer programmer

    PLOT3D user's manual

    Get PDF
    PLOT3D is a computer graphics program designed to visualize the grids and solutions of computational fluid dynamics. Seventy-four functions are available. Versions are available for many systems. PLOT3D can handle multiple grids with a million or more grid points, and can produce varieties of model renderings, such as wireframe or flat shaded. Output from PLOT3D can be used in animation programs. The first part of this manual is a tutorial that takes the reader, keystroke by keystroke, through a PLOT3D session. The second part of the manual contains reference chapters, including the helpfile, data file formats, advice on changing PLOT3D, and sample command files

    Supporting Focus and Context Awareness in 3D Modeling Using Multi-Layered Displays

    Get PDF
    Although advances in computer technology over the past few decades have made it possible to create and render highly realistic 3D models these days, the process of creating these models has remained largely unchanged over the years. Modern 3D modeling software provide a range of tools to assist users with creating 3D models, but the process of creating models in virtual 3D space is nevertheless still challenging and cumbersome. This thesis, therefore, aims to investigate whether it is possible to support modelers more effectively by providing them with alternative combinations of hardware and software tools to improve their 3D modeling tasks. The first step towards achieving this goal has been to better understand the type of problems modelers face in using conventional 3D modeling software. To achieve this, a pilot study of novice 3D modelers, and a more comprehensive study of professional modelers were conducted. These studies resulted in identifying a range of focus and context awareness problems that modelers face in creating complex 3D models using conventional modeling software. These problems can be divided into four categories: maintaining position awareness, identifying and selecting objects or components of interest, recognizing the distance between objects or components, and realizing the relative position of objects or components. Based on the above categorization, five focus and context awareness techniques were developed for a multi-layer computer display to enable modelers to better maintain their focus and context awareness while performing 3D modeling tasks. These techniques are: object isolation, component segregation, peeling focus, slicing, and peeling focus and context. A user study was then conducted to compare the effectiveness of these focus and context awareness techniques with other tools provided by conventional 3D modeling software. The results of this study were used to further improve, and evaluate through a second study, the five focus and context awareness techniques. The two studies have demonstrated that some of these techniques are more effective in supporting 3D modeling tasks than other existing software tools

    A One Step collision Detection Method for Computer Graphics Programs

    Get PDF
    The topic of this thesis is a collection detection algorithm for use in computer programs dealing in three dimensional graphics. Collision detection is usually accomplished by breaking the movement into small steps and checking if a collision has occurred at each of these discrete steps. This method is a very time-intensive way to detect for collisions and therefore, inefficient for a system which typically moves in large increments. For this kind of system, a method could be developed which checks once for collisions without dividing the move into multiple small increments. The subject of this paper is an algorithm, developed for use in a computer program, that will allow the user to make large movements of the objects and check for collisions quickly and efficiently
    corecore