Ching-Kuang Shene

dblp:20/3462 · DBLP profile ↗
← Back
49ranked-venue papers
10as first author
2since 2021 · last 2022
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Human-computer interaction and ubiquitous computing · 30 · 4 first-author · 2 since 2021Graphics, computer vision, multimedia, augmented reality and games · 17 · 5 first-authorApplied, interdisciplinary, general and emerging computing · 2 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer graphics and multimedia
7 papers
Visualization and visual analytics · 82% Geometric modeling and processing · 18%
Databases, data mining, and information retrieval
1 paper
Information retrieval · 77% Data mining · 23%

Topics — the 13 heaviest of 15, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Visualization and visual analytics
flow visualization
0.952016
A Vocabulary Approach to Partial Streamline Matching and Exploratory Flow Visualization · IEEE Trans. Vis. Comput. Graph. 2016
A Deformation Framework for Focus+Context Flow Visualization · IEEE Trans. Vis. Comput. Graph. 2014
A Graph-Based Interface for VisualAnalytics of 3D Streamlines and Pathlines · IEEE Trans. Vis. Comput. Graph. 2014
Information retrieval › similarity search
string retrieval
0.212016
A Vocabulary Approach to Partial Streamline Matching and Exploratory Flow Visualization · IEEE Trans. Vis. Comput. Graph. 2016
Geometric modeling and processing
deformation
0.212014
A Deformation Framework for Focus+Context Flow Visualization · IEEE Trans. Vis. Comput. Graph. 2014
Visualization and visual analytics
focus+context visualization
0.212014
A Deformation Framework for Focus+Context Flow Visualization · IEEE Trans. Vis. Comput. Graph. 2014
Visualization and visual analytics
graph visualization
0.212014
A Graph-Based Interface for VisualAnalytics of 3D Streamlines and Pathlines · IEEE Trans. Vis. Comput. Graph. 2014
Visualization and visual analytics › volume visualization
viewpoint selection
0.212013
A Unified Approach to Streamline Selection and Viewpoint Selection for 3D Flow Visualization · IEEE Trans. Vis. Comput. Graph. 2013
Visualization and visual analytics › flow visualization
streamline placement
0.112012
Hierarchical Streamline Bundles · IEEE Trans. Vis. Comput. Graph. 2012
Data mining
clustering
0.112016
A Vocabulary Approach to Partial Streamline Matching and Exploratory Flow Visualization · IEEE Trans. Vis. Comput. Graph. 2016
Information theory › information measures
mutual information
0.012013
A Unified Approach to Streamline Selection and Viewpoint Selection for 3D Flow Visualization · IEEE Trans. Vis. Comput. Graph. 2013
Geometric modeling and processing › computational geometry › geometric queries
geometric intersection
0.011994
Test for intersection between a plane and a connected compact polyhedron · Comput. Aided Des. 1994
Geometric modeling and processing › surface processing › surface intersection
quadric surface intersection
0.011994
On the lower degree intersections of two natural quadrics · ACM Trans. Graph. 1994
Geometric modeling and processing › computational geometry
polyhedral geometry
0.011994
Test for intersection between a plane and a connected compact polyhedron · Comput. Aided Des. 1994
Geometric modeling and processing
solid modeling
0.011994
On the lower degree intersections of two natural quadrics · ACM Trans. Graph. 1994

Methods — techniques the papers use, named apart from their topics

string encoding · 0.5shape invariant features · 0.5empirical expert evaluation · 0.5fisheye comparison · 0.4energy minimization · 0.4GPU solver · 0.4hierarchical clustering · 0.3streamline clustering · 0.3information-theoretic framework · 0.3brushing and linking · 0.2viewpoint partitioning · 0.2
YearPublicationVenuePosition
2022 Design and Use of a Visualization for Teaching Integer Coercion
Steve Carr 0001, Yu Chin Cheng, Yu-Hsiang Hu, Jean Mayo, Ahmed Radwan, Ching-Kuang Shene, James W. Walker
SIGCSE (1)6
2021 A Visualization for Teaching Integer Coercion
abstract
Integer errors continue to create vulnerabilities. In fact, Integer Overflow or Wraparound is listed at position 11 in the 2020 CWE Top 25 Most Dangerous Software Weaknesses. This poster describes the Expression Evaluation (EE) visualization tool that helps students understand the type conversions that take place implicitly within a C program. This tool depicts step-wise the coercions that take place within the evaluation of a user specified expression with mixed integer type operands. The system enables students to create unlimited examples to test their understanding. The tool was evaluated in the classroom and shown to be easy to use and effective.
James W. Walker, Steve Carr 0001, Ahmed Radwan, Yu-Hsiang Hu, Yu Chin Cheng, Jean Mayo, Ching-Kuang Shene
ITiCSE (2)7
2020 A System for Visualizing the Process Address Space in the Context of Teaching Secure Coding in C
abstract
Seemingly small coding errors can create significant vulnerabilities in C programs. This often occurs due to memory being overwritten in unexpected ways. If a student understands where program variables appear in the process address space, then she can understand the effect of writing beyond the memory allocated to a variable. With this understanding, she can tie her code to its effect within an executing process and is more likely to appreciate the significance of these seemingly harmless errors and to avoid them. We have developed a program analysis and visualization tool to help students understand the impact of common memory errors with the goal to help students avoid introducing these errors into their code. The visualization is through the Program Address Space (PAS) window within a larger system for analysis and visualization of security issues in C programs. The larger system is called SecureCvisual. In this paper, we describe our experience with teaching students fundamental concepts about process address spaces and the impact of buffer overflows using the PAS window. We also present the results from an evaluation of the tool. Our results indicate that students found the tool useful and that it enhanced the course in which it was used.
James W. Walker, Steve Carr 0001, Jean Mayo, Ching-Kuang Shene
SIGCSE5
2019 Teaching Integer Security Using Simple Visualizations
abstract
Integer errors can introduce significant vulnerabilities into C programs. We have developed a program analysis and visualization tool to help students understand integer representation and type conversions with the goal to help students avoid introducing these errors into the code they develop. The visualization is through the Integer Representation (IR) window within a larger system for analysis and visualization of security issues in C programs. The system is called the Visualization and Analysis for C Code Security (VACCS) system. In this paper, we describe our experience with teaching fundamental aspects of integer security in a junior-level systems programming course, the IR window, and an evaluation of the tool. Our results indicate that students found the tool to be useful and that it enhanced the course in which it was used.
James W. Walker, Steve Carr 0001, Jean Mayo, Ching-Kuang Shene
ITiCSE5
2017 Visualization for Secure Coding in C
abstract
This paper describes a pedagogical system to visualize program execution.1 The visualization is designed to help students understand how to develop more secure and robust C programs. The system provides several perspectives on the execution including: the values of registers and the logical address space, a call graph, the file descriptor and inode tables, and the handling of sensitive data like passwords and keys. These visualizations are designed to help students understand fundamental concepts such as: buffer overflows, integer overflows, proper handling of sensitive data and application of the principle of least privilege in several contexts including file operations, secure SUID programming, and use and management of the process environment.
James W. Walker, Jean Mayo, Ching-Kuang Shene, Steve Carr 0001
ITiCSE3
2017 UNIXvisual: A Visualization Tool for Teaching UNIX Permissions
abstract
UNIXvisual is a user-level visualization tool designed to facilitate the study and teaching of access control in UNIX. UNIXvisual is aimed at both novice users, who need only to control access to their own files, and students of computer security, who need a deeper and more comprehensive understanding. The system allows students to analyze permission settings in the underlying real file system, as well as in a combination of real and pseudo file systems defined through a specification file. It also allows a student to trace the value and effect of credentials within an executing process. UNIXvisual gives instructors flexibility in the allocation of lecture time by supporting self-study, lowers the overhead required for teaching access control by running under an ordinary user account, and enhances learning through the use of visualization. We also present the results of an evaluation of UNIXvisual within a junior-level course on concurrent computing. The evaluation indicated that UNIXvisual helped students understand UNIX permissions and enhanced the course coverage of UNIX permissions, regardless of their prior UNIX experience.
Jean Mayo, Ching-Kuang Shene, Steve Carr 0001, Chaoli Wang 0001
ITiCSE3
2016 AESvisual: A Visualization Tool for the AES Cipher
abstract
This paper describes a visualization tool AESvisual that helps students learn and instructors teach the AES cipher. The software allows the user to visualize all the major steps of AES encryption and decryption. The demo mode is useful and efficient for classroom presentation and the practice mode provides the user with an environment to practice AES encryption with error checking. AESvisual is quite versatile, providing support for both beginners learning how to encrypt and decrypt, and also for the more advanced users wishing to see all the details, including the GF(28) addition and multiplication operations. Classroom evaluation of the tool was positive.
Jun Ma 0014, Jun Tao 0002, Jean Mayo, Ching-Kuang Shene, Melissa S. Keranen, Chaoli Wang 0001
ITiCSE4
2016 UNIXvisual: A Visualization Tool for Teaching the UNIX Permission Model
abstract
This paper describes UNIXvisual, which helps students learn access control in UNIX. UNIXvisual is aimed both at novice users, who need only to control access to their own files, and students of computer security, who need a deeper and more comprehensive understanding. UNIXvisual allows students to analyze permission settings without the need for a special environment. It allows a student to trace the value and effect of credentials within an executing process. It also provides a mechanism for instructors to give quizzes UNIXvisual gives instructors flexibility in covering the material by supporting self-study, lowers the overhead required for teaching access control by running under an ordinary user account, and enhances learning by leveraging visualization. UNIXvisual is available for download and runs on the Linux and MacOS platforms.
Jean Mayo, Ching-Kuang Shene, Steve Carr 0001, Chaoli Wang 0001
ITiCSE3
2016 VesselMap: A web interface to explore multivariate vascular data
Jun Tao 0002, Chaoli Wang 0001, Jingfeng Jiang, Ching-Kuang Shene, Ye Zhao 0003, Daphne Yu
Comput. Graph.6
2016 A Vocabulary Approach to Partial Streamline Matching and Exploratory Flow Visualization
abstract
Measuring the similarity of integral curves is fundamental to many important flow data analysis and visualization tasks such as feature detection, pattern querying, streamline clustering, and hierarchical exploration. In this paper, we introduce FlowString, a novel vocabulary approach that extracts shape invariant features from streamlines and utilizes a string-based method for exploratory streamline analysis and visualization. Our solution first resamples streamlines by considering their local feature scales. We then classify resampled points along streamlines based on the shape similarity around their local neighborhoods. We encode each streamline into a string of well-selected shape characters, from which we construct meaningful words for querying and retrieval. A unique feature of our approach is that it captures intrinsic streamline similarity that is invariant under translation, rotation and scaling. We design an intuitive interface and user interactions to support flexible querying, allowing exact and approximate searches for partial streamline matching. Users can perform queries at either the character level or the word level, and define their own characters or words conveniently for customized search. We demonstrate the effectiveness of FlowString with several flow field data sets of different sizes and characteristics. We also extend FlowString to handle multiple data sets and perform an empirical expert evaluation to confirm the usefulness of this approach.
Jun Tao 0002, Chaoli Wang 0001, Ching-Kuang Shene, Raymond A. Shaw
IEEE Trans. Vis. Comput. Graph.3
2015 VIGvisual: A Visualization Tool for the Vigenère Cipher
abstract
This paper describes a visualization tool VIGvisual that helps students learn and instructors teach the Vigenère cipher. The software allows the user to visualize both encryption and decryption through a variety of cipher tools. The demo mode is useful and efficient for classroom presentation. The practice mode allows the user to practice encryption and decryption. VIGvisual is quite versatile, providing support for both beginners learning how to encrypt and decrypt, and also for the more advanced users wishing to practice cryptanalysis in the attack mode. Classroom evaluation of the tool was positive.
Jun Ma 0014, Jun Tao 0002, Jean Mayo, Ching-Kuang Shene, Melissa S. Keranen, Chaoli Wang 0001
ITiCSE5
2015 RBACvisual: A Visualization Tool for Teaching Access Control using Role-based Access Control
abstract
This paper presents RBACvisual, a user-level visualization tool designed to facilitate the study and teaching of the role-based access control (RBAC) model, which has been widely used in companies to restrict access to authorized users. RBACvisual provides two graphical abstractions of the underlying specification. Policies can be input and modified graphically or using text-based files. Students can use an embedded Query system to answer commonly asked questions and to test their understanding of a given policy. A Practice subsystem is also provided for instructors to assign quizzes to students; the answers can be sent to the instructor via email. We also present the results of an evaluation of RBACvisual within a senior-level course on information security. The student feedback was positive and indicated that RBACvisual helped students understand the model and enhanced the course.
Jean Mayo, Ching-Kuang Shene, Thomas Lake 0001, Steve Carr 0001, Chaoli Wang 0001
ITiCSE3
2015 Extracting flow features via supervised streamline segmentation
Chaoli Wang 0001, Ching-Kuang Shene
Comput. Graph.3
2014 FlowTour: An Automatic Guide for Exploring Internal Flow Features
abstract
We present FlowTour, a novel framework that provides an automatic guide for exploring internal flow features. Our algorithm first identifies critical regions and extracts their skeletons for feature characterization and streamline placement. We then create candidate viewpoints based on the construction of a simplified mesh enclosing each critical region and select best viewpoints based on a viewpoint quality measure. Finally, we design a tour that traverses all selected viewpoints in a smooth and efficient manner for visual navigation and exploration of the flow field. Unlike most existing works which only consider external viewpoints, a unique contribution of our work is that we also incorporate internal viewpoints to enable a clear observation of what lies inside of the flow field. Our algorithm is thus particularly useful for exploring hidden or occluded flow features in a large and complex flow field. We demonstrate our algorithm with several flow data sets and perform a user study to confirm the effectiveness of our approach.
Jun Ma 0014, James W. Walker, Chaoli Wang 0001, Scott A. Kuhl, Ching-Kuang Shene
PacificVis5
2014 FlowString: Partial Streamline Matching Using Shape Invariant Similarity Measure for Exploratory Flow Visualization
abstract
Measuring the similarity of integral curves is fundamental to many important flow data analysis and visualization tasks such as feature detection, pattern querying, streamline clustering and hierarchical exploration. In this paper, we introduce FlowString, a novel approach that extracts shape invariant features from streamlines and utilizes a string-based method for exploratory streamline analysis and visualization. Our solution first resamples streamlines by considering their local feature scales. We then classify resampled points along streamlines based on the shape similarity around their local neighborhoods. We encode each streamline into a string of well-selected shape characters, from which we construct meaningful words for querying and retrieval. A unique feature of our approach is that it captures intrinsic streamline similarity that is invariant under translation, rotation and scaling. Leveraging the suffix tree, we enable efficient search of streamline patterns with arbitrary lengths with the complexity linear to the size of the respective pattern. We design an intuitive interface and user interactions to support flexible querying, allowing exact and approximate searches for robust partial streamline similarity matching. Users can perform queries at either the character level or the word level, and define their own characters or words conveniently for customized search. We demonstrate the effectiveness of FlowString with several flow field data sets of different sizes and characteristics.
Jun Tao 0002, Chaoli Wang 0001, Ching-Kuang Shene
PacificVis3
2014 SHAvisual: a secure hash algorithm visualization tool
abstract
This poster presents a visualization tool SHAvisual for instructors to teach and students to learn the SHA-512 algorithm visually with demo and practice modes. This poster will also discuss some findings of classroom use and student reactions, which are very positive and encouraging.
Jun Ma 0014, Jun Tao 0002, Melissa S. Keranen, Jean Mayo, Ching-Kuang Shene, Chaoli Wang 0001
ITiCSE5
2014 MLSvisual: a visualization tool for teaching access control using multi-level security
abstract
Information security continues to be a pressing issue for industry and government. Perhaps the two most fundamental mechanisms for controlling access to information are cryptography and access control systems. This paper presents MLSvisual, a tool that helps students learn the multi-level(Bell-LaPadula) access control model. MLSvisual allows students to create, explore, and modify an MLS policy through a graphical visualization system. A query system can be used by students to test their understanding of a given policy. Instructors can utilize a test function in the tool to assign an exercise or quiz, with answers sent to them via email. We also present the results of an evaluation of MLSvisual within a senior-level course on information security. This evaluation received positive feedback and showed that MLSviusal helped the understanding of the Bell-LaPadula model and enhanced the course. We believe that this user-level tool will help instructors to teach this material more effectively, and make teaching this material more practical in resource-constrained environments.
Steve Carr 0001, Jean Mayo, Ching-Kuang Shene, Chaoli Wang 0001
ITiCSE4
2014 RSAvisual: a visualization tool for the RSA cipher
abstract
This paper describes a visualization tool RSAvisual that helps students learn and instructors teach the RSA cipher. This tool permits the user to visualize the steps of the RSA cipher, do encryption and decryption, learn simple factorization algorithms, and perform some elementary attacks. The demo mode of RSAvisual can be used for classroom presentation and self-study. With the practice mode, the user may go through steps in encryption, decryption, the Extended Euclidean algorithm, two simple factorization algorithms and three elementary attacks. The user may compute the output of each operation and check for correctness. This helps students learn the primitive operations and how they are used in the RSA cipher. The opportunity for self-study provides an instructor with greater flexibility in selecting a lecture pace for the detailed materials. Classroom evaluation was positive and very encouraging.
Jun Tao 0002, Jun Ma 0014, Melissa S. Keranen, Jean Mayo, Ching-Kuang Shene, Chaoli Wang 0001
SIGCSE5
2014 A Graph-Based Interface for VisualAnalytics of 3D Streamlines and Pathlines
abstract
Visual exploration of large and complex 3D steady and unsteady flow fields is critically important in many areas of science and engineering. In this paper, we introduce FlowGraph, a novel compound graph representation that organizes field line clusters and spatiotemporal regions hierarchically for occlusion-free and controllable visual exploration. It works with any seeding strategy as long as the domain is well covered and important flow features are captured. By transforming a flow field to a graph representation, we enable observation and exploration of the relationships among field line clusters, spatiotemporal regions and their interconnection in the transformed space. FlowGraph not only provides a visual mapping that abstracts field line clusters and spatiotemporal regions in various levels of detail, but also serves as a navigation tool that guides flow field exploration and understanding. Through brushing and linking in conjunction with the standard field line view, we demonstrate the effectiveness of FlowGraph with several visual exploration and comparison tasks that cannot be well accomplished using the field line view alone. We also perform an empirical expert evaluation to confirm the usefulness of this graph-based technique.
Jun Ma 0014, Chaoli Wang 0001, Ching-Kuang Shene, Jingfeng Jiang
IEEE Trans. Vis. Comput. Graph.3
2014 A Deformation Framework for Focus+Context Flow Visualization
abstract
Striking a careful balance among coverage, occlusion, and complexity is a resounding theme in the visual understanding of large and complex three-dimensional flow fields. In this paper, we present a novel deformation framework for focus+context streamline visualization that reduces occlusion and clutter around the focal regions while compacting the context region in a full view. Unlike existing techniques that vary streamline densities, we advocate a different approach that manipulates streamline positions. This is achieved by partitioning the flow field's volume space into blocks and deforming the blocks to guide streamline repositioning. We formulate block expansion and block smoothing into energy terms and solve for a deformed grid that minimizes the objective function under the volume boundary and edge flipping constraints. Leveraging a GPU linear system solver, we demonstrate interactive focus+context visualization with 3D flow field data of various characteristics. Compared to the fisheye focus+context technique, our method can magnify multiple streamlines of focus in different regions simultaneously while minimizing the distortion through optimized deformation. Both automatic and manual feature specifications are provided for flexible focus selection and effective visualization.
Jun Tao 0002, Chaoli Wang 0001, Ching-Kuang Shene
IEEE Trans. Vis. Comput. Graph.3
2013 FlowGraph: A compound hierarchical graph for flow field exploration
abstract
Visual exploration of large and complex 3D flow fields is critically important for understanding many aero- and hydro-dynamical systems that dominate various physical and natural phenomena in the world. In this paper, we introduce the FlowGraph, a novel compound graph representation that organizes streamline clusters and spatial regions hierarchically for occlusion-free and controllable visual exploration. Our approach works with any seeding strategies as long as the domain is well covered and important flow features are captured. By transforming a flow field to a graph representation, we enable observation and exploration of the relationships among streamline clusters, spatial regions and their interconnection in the transformed space. The FlowGraph not only provides a visual mapping that abstracts streamline clusters and spatial regions in various levels of detail, but also serves as a navigation tool that guides flow field exploration and understanding. Through brushing and linking in conjunction with the spatial streamline view, we demonstrate the effectiveness of FlowGraph with several visual exploration and comparison tasks that can not be well accomplished using the streamline view alone. As occlusion and clutter are almost ubiquitous in 3D flows, the FlowGraph represents a promising direction for enhancing our ability to understand large and complex flow field data.
Jun Ma 0014, Chaoli Wang 0001, Ching-Kuang Shene
PacificVis3
2013 A Unified Approach to Streamline Selection and Viewpoint Selection for 3D Flow Visualization
abstract
We treat streamline selection and viewpoint selection as symmetric problems which are formulated into a unified information-theoretic framework. This is achieved by building two interrelated information channels between a pool of candidate streamlines and a set of sample viewpoints. We define the streamline information to select best streamlines and in a similar manner, define the viewpoint information to select best viewpoints. Furthermore, we propose solutions to streamline clustering and viewpoint partitioning based on the representativeness of streamlines and viewpoints, respectively. Finally, we define a camera path that passes through all selected viewpoints for automatic flow field exploration. We demonstrate the robustness of our approach by showing experimental results with different flow data sets, and conducting rigorous comparisons between our algorithm and other seed placement or streamline selection algorithms based on information theory.
Jun Tao 0002, Jun Ma 0014, Chaoli Wang 0001, Ching-Kuang Shene
IEEE Trans. Vis. Comput. Graph.4
2012 ECvisual: a visualization tool for elliptic curve based ciphers
abstract
This paper describes a visualization tool ECvisual that helps students understand and instructors teach elliptic curve based ciphers. This tool permits the user to visualize elliptic curves over the real field and over a finite field of prime order, perform arithmetic operations, do encryption and decryption, and convert plaintext to a point on an elliptic curve. The demo mode of ECvisual can be used for classroom presentation and self-study. With the practice mode, the user may go through steps in finite field computations, encryption, decryption and plaintext conversion. The user may compute the output for each operation check each answer for correctness. This helps students understand the primitive operations and how they are used in an elliptic curve cipher. The opportunity for self-study provides an instructor greater flexibility in selecting a lecture pace for this detail-filled material. Classroom evaluation was positive and very encouraging.
Jun Tao 0002, Jun Ma 0014, Melissa S. Keranen, Jean Mayo, Ching-Kuang Shene
SIGCSE5
2012 Hierarchical Streamline Bundles
abstract
Effective 3D streamline placement and visualization play an essential role in many science and engineering disciplines. The main challenge for effective streamline visualization lies in seed placement, i.e., where to drop seeds and how many seeds should be placed. Seeding too many or too few streamlines may not reveal flow features and patterns either because it easily leads to visual clutter in rendering or it conveys little information about the flow field. Not only does the number of streamlines placed matter, their spatial relationships also play a key role in understanding the flow field. Therefore, effective flow visualization requires the streamlines to be placed in the right place and in the right amount. This paper introduces hierarchical streamline bundles, a novel approach to simplifying and visualizing 3D flow fields defined on regular grids. By placing seeds and generating streamlines according to flow saliency, we produce a set of streamlines that captures important flow features near critical points without enforcing the dense seeding condition. We group spatially neighboring and geometrically similar streamlines to construct a hierarchy from which we extract streamline bundles at different levels of detail. Streamline bundles highlight multiscale flow features and patterns through clustered yet not cluttered display. This selective visualization strategy effectively reduces visual clutter while accentuating visual foci, and therefore is able to convey the desired insight into the flow data.
Hongfeng Yu 0001, Chaoli Wang 0001, Ching-Kuang Shene, Jacqueline Chen
IEEE Trans. Vis. Comput. Graph.3
2007 Visualizing and animating the winged-edge data structure
Bryan Neperud, John L. Lowther, Ching-Kuang Shene
Comput. Graph.3
2005 Photon mapping made easy
abstract
This paper presents the authors' introduction of photon mapping in an undergraduate computer graphics course, Software was designed as a pedagogical and demonstration tool which permitted students to practice and learn photon mapping. Classroom experience and examples that illustrate soft shadows, color bleeding, indirect illumination and caustic are also discussed.
Tin-Tin Yu, John L. Lowther, Ching-Kuang Shene
SIGCSE3
2004 Curve and surface interpolation and approximation: knowledge unit and software tool
abstract
This paper describes a knowledge unit and the use of a software tool, DesignMentor, for teaching a very challenging topic in computer graphics and visualization, namely: curve and surface interpolation and approximation. Topics include global and local interpolation, global approximation, and curve network interpolation. For the past six years, a junior-level course has successfully used this approach.
John Fisher, John L. Lowther, Ching-Kuang Shene
ITiCSE3
2004 If you know b-splines well, you also nnow NURBS!
abstract
This paper presents our attempt in designing intuitive and interesting materials for teaching NURBS in an undergraduate course with the help of our tool DesignMentor. This approach does not require tedious mathematics and is based on learning-by-doing and visualization. Our approach was classroom tested and used world-wide in the last seven years.
John Fisher, John L. Lowther, Ching-Kuang Shene
SIGCSE3
2003 Teaching B-splines is not difficult!
abstract
This paper describes the authors' approach of introducing important concepts and algorithms of B-splines to junior computer science students with the help of a pedagogical tool DesignMentor. This approach is non-mathematical and intuitive, and has been used and refined in the past six years.
John L. Lowther, Ching-Kuang Shene
SIGCSE2
2003 ThreadMentor: a pedagogical tool for multithreaded programming
abstract
ThreadMentor is a multiplatform pedagogical tool designed to ease the difficulty in teaching and learning multithreaded programming. It consists of a C++ class library and a visualization system. The class library supports many thread management functions and synchronization primitives in an object-oriented way, and the visualization system is activated automatically by a user program and shows the inner working of every thread and every synchronization primitive on-the-fly. Events can also be saved for playback. In this way, students will be able to visualize the dynamic behavior of a threaded program and the interaction among threads and synchronization primitives.
Steve Carr 0001, Jean Mayo, Ching-Kuang Shene
ACM J. Educ. Resour. Comput.3
2002 Channels, visualization, and topology editor
abstract
This paper presents our effort in designing pedagogical tools for teaching message passing using channels. These tools include a class library that supports channels, a visualization system that helps students see the execution behavior of threads and message passing, and a topology editor that provides an environment for students to design network topologies. Moreover, since we have made sure the uniformity of the channel de.nition across the thread, parallel and distributed environments, porting a threaded program to a parallel/distributed environment is easy.
Steve Carr 0001, Tim Jozwowski, Jean Mayo, Ching-Kuang Shene
ITiCSE5
2002 ThreadMentor: a system for teaching multithreaded programming
abstract
No abstract available.
Ching-Kuang Shene
ITiCSE1
2002 A communication library to support concurrent programming courses
abstract
A number of communication libraries have been written to support concurrent programming. For a variety of reasons, these libraries generally are not well-suited for use in undergraduate courses. We have written a communication library uniquely tailored to an academic environment. The library provides two levels of communication abstraction (topology and channel) and supports communication among threads, processes on the same machine, and processes on different machines, via a unified interface. The routines facilitate controlled message loss along channels and can be integrated with an existing graphical tool that supports visualization of the communication that occurs. An editor has been developed for automatic code generation for arbitrary topologies via a graphical interface. All these tools run over Solaris, Linux, and Windows.
Steve Carr 0001, Changpeng Fang, Tim Jozwowski, Jean Mayo, Ching-Kuang Shene
SIGCSE5
2002 GraphicsMentor: a tool for learning graphics fundamentals
abstract
This paper discusses the functionality of GraphicsMentor. GraphicsMentor permits a student to modify many parameters of the camera, objects, and light sources interactively, and to visualize the rendered result on-the-fly. It also supports basic keyframe animation. With GraphicsMentor, a student should be able to grasp the fundamentals of computer graphics quickly and easily in a learning-by-doing way.
Dejan Nikolic, Ching-Kuang Shene
SIGCSE2
2001 Computing with geometry as an undergraduate course: a three-year experience
abstract
Article Share on Computing with geometry as an undergraduate course: a three-year experience Authors: John L. Lowther Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MIView Profile , Ching-Kuang Shene Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MIView Profile Authors Info & Claims SIGCSE '01: Proceedings of the thirty-second SIGCSE technical symposium on Computer Science EducationFebruary 2001Pages 119–123https://doi.org/10.1145/364447.364558Published:01 February 2001Publication History 13citation290DownloadsMetricsTotal Citations13Total Downloads290Last 12 Months4Last 6 weeks0 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access
John L. Lowther, Ching-Kuang Shene
SIGCSE2
2000 A portable class library for teaching multithreaded programming
abstract
All modern operating systems support multithreaded programming (MTP). To ensure our students can lead the trend of computer science in the foreseeable future, we have been teaching MTP for four years [6]. Our experience shows that the paradigm shift from sequential to multithreaded causes students significant problems [7], such as (1) MTP requires a new mindset, (2) multithreaded program behavior is dynamic, making debugging very difficult, (3) proper synchronization is more difficult tha anticipated, and (4) programming interfaces are usually more complex than necessary, causing students to spend time in learning the system details rather than the fundamentals.
Steve Carr 0001, Ching-Kuang Shene
ITiCSE2
2000 Computing with geometry as an undergraduate course (poster session)
Ching-Kuang Shene, John L. Lowther
ITiCSE1
2000 DesignMentor (poster session): a pedagogical tool for graphics and computer-aided design
Ching-Kuang Shene, John L. Lowther
ITiCSE1
2000 A visualization system for multithreaded programming
abstract
Article Free Access Share on A visualization system for multithreaded programming Authors: Michael Bedy Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MIView Profile , Steve Carr Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MIView Profile , Xianlong Huang Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MIView Profile , Ching-Kuang Shene Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MISearch about this author Authors Info & Claims SIGCSE '00: Proceedings of the thirty-first SIGCSE technical symposium on Computer science educationMay 2000Pages 1–5https://doi.org/10.1145/330908.331798Published:01 March 2000Publication History 24citation607DownloadsMetricsTotal Citations24Total Downloads607Last 12 Months46Last 6 weeks4 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Michael Bedy, Steve Carr 0001, Xianglong Huang, Ching-Kuang Shene
SIGCSE4
2000 Do blending and offsetting commute for Dupin cyclides?
Ching-Kuang Shene
Comput. Aided Geom. Des.1
1999 Teaching surface design made easy
abstract
article Free Access Share on Teaching surface design made easy Authors: Yan Zhou Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MIView Profile , Yuan Zhao Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MIView Profile , John L. Lowther Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MIView Profile , Ching-Kuang Shene Department of Computer Science, Michigan Technological University, Houghton, MI Department of Computer Science, Michigan Technological University, Houghton, MIView Profile Authors Info & Claims ACM SIGCSE BulletinVolume 31Issue 1March 1999 pp 222–226https://doi.org/10.1145/384266.299763Published:01 March 1999Publication History 14citation336DownloadsMetricsTotal Citations14Total Downloads336Last 12 Months8Last 6 weeks1 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my Alerts New Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
John L. Lowther, Ching-Kuang Shene
SIGCSE4
1998 Multithreaded programming in an introduction to operating systems course
abstract
I' a ( iiis 'paper ,prksents 'a wai 'if tea&ng multithre&ded programming.as a component in an introduction to operating systems course.Topics include programming assignments, term projects, and experiences.This paper also ,suggests future,wqrk for overcoming a bottleneck that occurs in t$e current yersipn of this course.i:1 It : ',iTo help ?yrsfqd$&' early' $ appr&hFg systkm oriented courses and research pfojedtgi c system program: ming course was r@sed to become an introduction to pperating system?cpurse.Since there is another elective operating systems course for senior and graduate students, this course only provides a survey, of important concepts and related programming, skills.I !Students enrolled 'ip this course normally haye completed the CSl, i CSZ,.computer organization and assembly language, and, project oriented software development courses, and' are sophomores and juniors.As a result, this course must be.elementary and informative.Tanenbaum's Modent Operating Systems was selected as our text.In a lo-week quarter system, only the most important ,topics of the first' five chapters were covered, including a brief discussion of deadlocks.With the continuing emergence of multithr&didicomputation as a powerful vehicle for science and engineer-
Ching-Kuang Shene
SIGCSE1
1998 A tool for teaching curve design
abstract
This paper describes a tool for teaching curve design. This tool is a component of the software tools to be used in a computing with geometry course [3, 4] that is being developed under the support of National Science Foundation. Curve design is important in computer graphics, animation, and computer aided design. Unfortunately, curve design requires very involved mathematics even though many curve design concepts are intuitive. As a result, it has been a challenging job for instructors teaching curves and surfaces in computer graphics, computer aided design, and other related courses. During past years, there have not been very many efforts dedicated to curve design tool development. Yen [7] produced a well-received video program explaining important concepts of B-spline curves and surfaces and Rockwood and Chambers [6] published a multimedia tutorial on computer aided geometric design. The former only provides a one-way communication, while the latter restricts users to a predefined environment with very limited interaction for users to carry out experiments. To fill this gap, our tool provides students with a fully interactive environment in which they are free to design, modify, and manipulate curve objects and perform experiments without constraints.
John L. Lowther, Ching-Kuang Shene
SIGCSE3
1998 Blending two cones with Dupin cyclides
Ching-Kuang Shene
Comput. Aided Geom. Des.1
1997 An Analysis of Two In-Place Array Rotation Algorithms
abstract
This paper presents a complexity analysis of two STL in-place rotation algorithms. If an array of n elements is rotated to the right Δ positions, the first STL version, which uses forward iterators, used n − gcd(n, Δ) swaps, while the second version, which uses random access iterators, uses only n+gcd(n, Δ) array elements movements. This paper also proves the optimality of the second version. A performance comparison is included.
Ching-Kuang Shene
Comput. J.1
1994 Test for intersection between a plane and a connected compact polyhedron
Ching-Kuang Shene
Comput. Aided Des.1
1994 Computing the intersection of a plane and a revolute quadric
Ching-Kuang Shene, John K. Johnstone
Comput. Graph.1
1994 On the lower degree intersections of two natural quadrics
abstract
In general, two quadric surface intersect in a space quartic curve. However, the intersection frequently degenerates to a collection of plane curves. Degenerate cases are frequent in geometric/solid modeling because degeneracies are often required by design. Their detection is important because degenerate intersections can be computed more easily and allow simpler treatment of important problems. In this paper, we investigate this problem for natural quadrics. Algorithms are presented to detect and compute conic intersections and linear intersections. These methods reveal the relationship between the planes of the degenerate intersections and the quadrics. Using the theory developed in the paper, we present a new and simplified proof of a necessary and sufficient condition for conic intersection. Finally, we present a simple method for determining the types of conic in a degenerate intersection without actually computing the intersection, and an enumeration of all possible conic types. Since only elementary geometric routines such as line intersection are used, all of the above algorithms are intuitive and easily implementable.
Ching-Kuang Shene, John K. Johnstone
ACM Trans. Graph.1
1992 Computing the intersection of a plane and a natural quadric
abstract
A method of computing the intersection of a plane and a natural quadric surface is presented. This problem is basic in geometric areas such as solid modeling and descriptive geometry. Our method, arising out of recent work on lower degree intersections of quadrics, computes the directions of the axes of the intersection, and then computes their lengths using the Dandelin sphere. The method also gives all parallel plane sections of the natural quadric, with no added computation.
John K. Johnstone, Ching-Kuang Shene
Comput. Graph.2