Plane Geometry

Object Oriented Modeling with Objectica

Stephan Leibbrandt

Symbols and Numbers GbR

Abstract

The package Objectica symbiotically upgrades the powerful language of Mathematica by an easy to use Java/C#-like full-blown object orientation customized for modeling. Thereby, modeling becomes natural: real objects are directly mapped into Objectica. This presentation picks as one example plane geometry as taught at high school. The teacher hides all overhead inside the object classes and students of even lower level classes focus on the current subject without being mentally blocked by secondary details. 

Plane geometry ideally highlights the power of object oriented modeling in Mathematica. Properties like distances, angles, directions as well as objects like points, straight lines, circles and triangles are very concrete and can have a one-to-one class representation. Object orientation allows results of geometric constructions like intersection points to be the base for further constructions. These are even easier done than with compass and ruler, because the classes are equally simple to use while being more precise and skilled. All the fairly complicated analytic methods, for example the foot of perpendicular shown in the presentation, are encapsulated within a class definition, callable by a simple name. Further benefits are shown, for example defining a triangle by inheriting from a polygon and simple referencing of objects in varying coordinate systems.

The presentation shows how easy it is in Objectica to professionally implement a fully new vocabulary of concepts for example in math and natural or social sciences. Every single functionality of Objectica, messages included, is documented with examples.