What Is New in Cinderella.2

What Is New in Cinderella.2

This chapter provides a very brief overview of the differences between the previously published versions of Cinderella (versions 1.0 to 1.4) and the current release Cinderella.2. The official version name of this release is "2.6". This release offers many substantial improvements, enhancements, and extensions to the old versions. Measured in bytes of written source code, the Cinderella.2 release has a size of about 7 MB. This is approximately five times the size of the old releases. The reason for this significant growth is the fact that Cinderella.2 contains several areas that open completely new possibilities: While Cinderella 1.4 was solely a geometry program, the new release, Cinderella.2, offers (among other things) programming facilities, full support of transformations, many enhanced graphical features, and a complete physics simulation engine.

The following list of items is a rough overview of the major changes. The items appear in no particular order. For details on the topics the reader is referred to the corresponding chapters of the reference part of the manual. For the reader already familiar with Cinderella, this chapter may be a useful guide for exploring the new features.

Enhanced Graphics Primitives

Circular Arcs and Angle Marks
Cinderella.2 offers circular arcs as fully supported geometric elements. Arcs can be defined by clicking three points. The first and third points define its endpoints. The arc is supported by the unique circle that passes through all three points. Like a circle, an arc may be intersected with other geometric elements. Free points can also be bound to an arc. Furthermore, a new graphics primitive has been introduced: a little arc for marking an angle.

Active Segments
While in Cinderella 1.2, segments were of a purely graphical nature and could not be used for constructions, in Cinderella.2 segments are fully featured geometric objects. They behave very similarly to lines. A free point bound to a segment cannot be moved away from the segment. It is also possible to define loci whose movers move only along a segment.

Polygon Modes
Several modes have been added that facilitate the construction of regular polygons. This is particularly important for the construction of regular symmetric patterns based on the symmetry of polygons. Symmetric polygons are very useful in combination with the transformation modes.

Conic Modes
Several new modes have been added for the construction of conic sections. In particular, it is possible to construct ellipses and hyperbolas by the position of the foci and a perimeter point.

Triangular Mesh
In addition to the quadrangular mesh, it is also possible to use a regular triangular mesh for snapping points in Euclidean view.

Background Images
It is possible to load a bitmap as a background image. In particular, this enables the analysis of geometric situations that come from exterior sources by overlaying pictures with dynamic drawings.

PDF and Bitmap Export
To include Cinderella pictures in other documents, an export to PDF and several image formats are provided. The PDF export also provides the possibility of exact scaling.

Enhanced Animations, Traces and Loci

New Animation Concept
Compared to the old concept of animations, the new animation model is much more flexible. While an animation is running, it is still possible to move the base elements of the construction. Also, several animations can be running and controlled at the same time. In particular, it is possible to control the individual speed of each of the animations. The new animations work seamlessly together with the physics simulations that can be constructed using CindyLab.

Traces
All geometric elements can leave traces on the screen. Traces become dimmer with age, creating a nice visual effect. This is a very useful feature for improving the dynamic appearance in printouts. Traces may also be used to study the movement of dependent elements. Sometimes, traces are more flexible than loci for this purpose.

Literal Loci
Loci are usually drawn as solid lines. In Cinderella.2 it is also possible to generate a locus in a way that resembles a trace of the geometric object. For this, a sequence of copies of the traced element is produced on the screen. This feature is particularly valuable in studying traces of objects that cannot be represented by a solid line (such as traces of circles and polygons).

Transformation Geometry

Transformations
Transformations are one of the major improvements in Cinderella.2. One can define reflections, rotations, translations, similarities, affine transformations, projective transformations, and even Möbius transformations. Transformations are very powerful construction tools in many situations. Arbitrary geometric element can be mapped by transformations.

Transformation Groups
Several transformations can be grouped together. A transformation group now allows a geometric element to be mapped iteratively by all the members of the transformation group. With this tool it is easy to generate ornamental structures even in advanced settings such as hyperbolic geometry.

Iterated Function Systems
Like a transformation group, an iterated function system comprises several transformations. However, in this situation a cloud of points is generated that is self-similar with respect of all the translations involved. Usually, an iterated function system is a fractal object that showcases a very interesting and rich structure.

Bases (experimental feature)
It is also possible to perform all drawing operations with respect to a basis that has been chosen in advance. The basis can be either a translation basis, a similarity basis, an affine basis, or a projective basis. Using bases, it is very easy to construct perspectively correct pictures of geometric situations.

Enhanced Construction Facilities

Copy and Paste
It is possible to copy and paste parts of a geometric construction. Together with the redefine operation, this forms a powerful concept for creating large constructions.

Tool from Selection
With the tool from selection mode, one can create individual construction tools that contain their own constructions as macro operations.

Redefine
The redefine feature is very helpful for changing the dependency structure of a construction. With this tool one can convert a dependent point to a free point and vice versa. Especially in combination with copy/paste, this is a very useful concept.

Fundamentally New Program Parts

The Inspector
In Cinderella.2 the inspector became the central controlling unit for all properties of a configuration and its objects. In the inspector one can control and access the appearance properties, the tracing and physical properties, and the definition properties of any object.

CindyScript
As already mentioned in the introduction, CindyScript is one of the most important extensions in Cinderella. CindyScript is a fully featured functional programming language that is designed to work seamlessly together with the other parts of Cinderella. Using CindyScript, it is possible to control the behavior of a dynamic construction. It is also possible to add arbitrary drawing information to a picture.

CindyLab
The second major enhancement is CindyLab. This is an engine for physics simulations based on a point-mass/forces simulation model. In CindyLab one can simply draw a physical experiment and immediately simulate it. In particular, the interplay of physics and geometry can be studied with Cinderella.

Pen-Driven Devices
Cinderella.2 offers an input mode that is designed to support pen-driven devices such as tablet PCs, electronic whiteboards, and PDAs. In this mode Cinderella analyzes hand-drawn strokes and translates them (if possible) into geometric constructions.