Difference between revisions of "User:Gaganjyotsingh/librecadkernel"
Line 28: | Line 28: | ||
metainfo.* | metainfo.* | ||
+ | |||
+ | These files contains the classes which are metatypes for any entity. For example the pen color, line width, layer of entity. | ||
+ | |||
+ | Dochelpers : | ||
+ | |||
+ | These are the implementation files of the files in document folder( containing the virtual functions). | ||
+ | |||
+ | documentimpl | ||
+ | |||
+ | contains the following functions, | ||
+ | *addentity | ||
+ | *removeentity | ||
+ | *begin a process | ||
+ | *commiting a process | ||
+ | |||
+ | documentlayerimpl | ||
+ | *add entity // adds an entity to the layer | ||
+ | *remove entity // removes the entity from the layer | ||
+ | *find by id // Finds the entity by the unique ID specified |
Revision as of 05:17, 20 March 2014
LibreCAD Kernel Documentation/API Documentation for the usage with other softwares.
LibreCAD kernel is a library to perform 2D operations. Rightnow it supports the basic entities like circle, line, arc, ellipse ( Although can be extended to b-splines, beizer curves ) and the code is built in C++ and Qt. .
It now follows a document based approach and has been designed to be very extensible.
It supports the operations of creating, deleting and trimming of entities. Has an undo-redo stack hence you can do unlimited undos and redos.
Things that are going to be implemented in GSoC are,
- support for moving entities from one position to another.
- Ability to copy entities any number of times.
- Scaling the entities.
- Rotating the entities with respect to some point.
- It will have support for text and dimensioning after the GSoC period.
Directory structure and operations,
Base directory :
cadentity.*
It is the base class for all entities and each entity is inherited from this class.
id.*
These file contain the class that generates a unique ID for every new entity so created.
metainfo.*
These files contains the classes which are metatypes for any entity. For example the pen color, line width, layer of entity.
Dochelpers :
These are the implementation files of the files in document folder( containing the virtual functions).
documentimpl
contains the following functions,
- addentity
- removeentity
- begin a process
- commiting a process
documentlayerimpl
- add entity // adds an entity to the layer
- remove entity // removes the entity from the layer
- find by id // Finds the entity by the unique ID specified