What is KML?
|

|
KML is an acronym of Keyed Modeling
Language. Despite its name, it is not a language in the same sense as VRML,
Postscript, etc. It is more an object model or a set of object models. With twenty years experience
in programming CAD applications, my desire was creating a set of tools containing 90% of any
CAD, CAM, robotics or simulation application.
- KML is object oriented. CAD objects include:
text, trajectories, surfaces and parametric solids. Texts use a professional font type, conversion from Windows ttf
is done automatically. The trajectory model uses an abstract object called a polytrajectory
(includes linear, circular and spline interpolation). The surface model is called a polysurface. A polysurface can be
made of: point clouds, facets or NURBS. Parametric solids are parametrized through kml-mechanisms, kmechs
for short.
- A kmech is the definition of a conversion from one coordinate system to an other.
Kmechs can be nested to any level. Kmechs may have their own time scales, may be synchronized or may be part of a timing hierarchy.
Kmechs have a common interface to compute forward and reverse kinematics and can also have: grammar (machine language), solvers,
dynamics, etc.
- KML has just one
MAI compatible reusable Zoom window for any application. These zoom window uses
OpenGL. It has dynamic viewing functionality together with a new concept called
solid selection. Multiple views are guaranteed by MAI.
- KML has a native, binary, compressed and
open file format. Importing and exporting geometry to any other file format is done via KML drivers. All
KML applications share the same drivers and support updating the drivers from the internet. These drivers are Windows
dlls using a COM model and can be created with most programming languages.
- KML has just one
reusable editor. This editor supports: a command model, a toolbar model, selection commands, undo/redo functionality,
support for external commands, user options, etc. Any other command can be internal (the editor is inherited
by an object containing more commands) or external, also called a ktoolkit.
- A ktoolkit
is a set of commands that can be loaded into any KML application. Ktoolkits are Windows dlls using a COM model and can be
created with most programming languages.
|
|
KML for the user
|

|
For the user KML warranties a
stable, verified, top-level application, since 90% of it is made of reusable standard parts.
This allows a much higher level of quality when developing custom CAD applications and a great reduction in development time and cost.
A KML platform also warranties support for new file formats
or new versions of existing ones, since KML drivers are always under development, even when the application is finished.
It is also a platform for continuous development by the use of customized or general purpose
ktoolkits. |
|
KML plug-ins
|

|
There are three types of KML plug-ins:
- kmechs: Are kml mechanisms.
- drivers: Are import/export filters for
industry standard file formats such as: 3dm, 3ds, Ascii, Dxf, Iges, Iso, Kml, Lin, Plf, Stl, Tiff, Vda, Vmp, Vpr or Vrml
- ktoolkits: Are sets of commands adding functionality to kml-based applications.
KML plug-ins, mostly drivers, are available for free download at:
dyBOT/drivers
|
|
KML models
|

|
A collection of free materials
and models in .kml file format are available for download at:
dyBOT/models
|
|
KML programming
|

|
No KML programming product has been
developed yet.
If you are interested in writing KML applications, please, contact us at:
kml@dybot.com |
|