Replacement for KmPlot

todd rme toddrme2178 at gmail.com
Sun Jul 29 10:52:46 UTC 2012


On Sat, Jul 28, 2012 at 1:28 PM, Percy Camilo Triveño Aucahuasi
<percy.camilo.ta at gmail.com> wrote:
> First aspect: the main goal of Khipu is to support the teaching process of
> math concepts, thats why the main clients of this application are teachers
> and this is the most important part, because it will avoid that Khipu become
> into a "just a utility for plotting". You know math concepts (and their
> properties) are easy to learn if you see it, indeed, I propose this basic
> work-flow for the application:
>
> Step 1: Consume a repository/collection* of mathematical objects** (this
> step allow to select objects from the repository) then
> Step 2: Categorize/group those selected objects
> Step 3: Study their specific properties
> Step 4: Provide a way to deploy/export the work
>
> *The repository is a collection of math expressions and meta-data that
> define each object
> **Here, objects are any kind of math concept that can be plotted (specially
> functions)
>
> For example, if a teacher want to work with plane curves (conics) he/she may
> use the repository of "Famous Conics" and, this way, have all the objects
> ready for study (step 1) Later, the teacher can group some objects with a
> criteria (his criteria): "This ones will be used for exam 1", "This others
> for the class" ... and so on (step 2) Step 3 will depend of what properties
> of conics (for each group) he/she wants to study. Step 4 involve some form
> of export their work (it could be a snapshots or animations inside the
> application): this way he/she can use the output for the class.
>
> Currently[2] there is an implementation for step 2 (and partially: step 1) I
> hope you can help me with ideas for step 3 and 4, and if is possible take
> advantage of the forums for this task.
>
> Second aspect is the technical part of this replacement process. First
> place, I will port all KmPlot's features (that I can) to Khipu: is important
> not to drop the work of KmPlot that can be useful.
>
> To avoid the duplication of code: all the features related to
> plotting/analysis of objects will be inside analitza (KAlgebra
> parser/symbolic library) in a library called analitzaplot: KAlgebra will use
> the library for plot some functions too. This library will focus on 4 tasks:
>
> * Manage the core objects (like curves/surfaces/...)
> * Analyze those objects (its geometry, math properties, ...)
> * Draw/Animate those objects in a decoupled way (just painter/opengl code)
> ... this way we can use the code on widgets or other kind of GUI controls.
> Also, the colors of what be painted (objects and its attributes, drawing
> area, ...) will be chosen carefully to respect accessibility: in the same
> way you can change the colors of the background area in KmPlot, the library
> will expose the necessary API for this kind of customization.
> * Manage the repository of objects (GHNS comes to my mind) The text of the
> repository files will be translated by our exceptional l10n team. For
> example if one repository file contains the words "Spiral of Archimedes"
> this should be translated.
>
> Currently Khipu is in playground and analitzaplot is in a branch of analitza
> (the branch is called aucahuasi/analitzaplot)
>
> Remember this is a work in process (Khipu and analitzaplot) and even the
> library may change right now, however you can see a preview of the API in
> [3]
>
> Finally, I hope others applications can use this library to visualize math
> concepts (for example: currently many backends of Cantor show only images
> and not a widget that improve the graphical result) I ask to you: take a
> look in the work and tell me what do you think; I'm very open to listen
> others ideas, so please help me with yours.

Let me clarify one thing: have the features from kmplot been moved to
kalgebra?  Are the additional plotting types it seems this provides
being integrated into kalgebra?

I can fully understand the desire to have a teaching application based
on the plotting library.  However, I think it is important not to
forget that a major goal of teaching plotting is so people can use
those plots for practical purposes.  So I think it would be a mistake
to focus exclusively on the teaching and neglect the people who
actually need to use those plots in everyday life.

-Todd


More information about the kde-edu mailing list