Difference between revisions of "User:Gaganjyotsingh/librecadkernel"

From BRL-CAD
Line 14: Line 14:
  
 
It will have support for text and dimensioning after the GSoC period.
 
It will have support for text and dimensioning after the GSoC period.
 
.
 
|-- base
 
|  |-- cadentity.cpp
 
|  |-- cadentity.h
 
|  |-- id.cpp
 
|  |-- id.h
 
|  |-- metainfo.cpp
 
|  `-- metainfo.h
 
|-- const.h
 
|-- dochelpers
 
|  |-- documentimpl.cpp
 
|  |-- documentimpl.h
 
|  |-- documentlayerimpl.cpp
 
|  |-- documentlayerimpl.h
 
|  |-- entitymanagerimpl.cpp
 
|  |-- entitymanagerimpl.h
 
|  |-- layermanagerimpl.cpp
 
|  |-- layermanagerimpl.h
 
|  |-- undomanagerimpl.cpp
 
|  `-- undomanagerimpl.h
 
|-- document
 
|  |-- abstractdocument.cpp
 
|  |-- abstractdocument.h
 
|  |-- basemanager.h
 
|  |-- documentlayer.h
 
|  |-- entitymanager.h
 
|  |-- layermanager.h
 
|  |-- selectionmanager.h
 
|  `-- undomanager.h
 
|-- events
 
|  |-- absoleteentityevent.h
 
|  |-- addentityevent.h
 
|  |-- beginprocessevent.h
 
|  |-- commitprocessevent.h
 
|  |-- removeentityevent.h
 
|  `-- replaceentityevent.h
 
|-- functions
 
|  |-- intersect.cpp
 
|  |-- intersect.h
 
|  |-- trim.cpp
 
|  `-- trim.h
 
|-- geometry
 
|  |-- geoarc.cpp
 
|  |-- geoarc.h
 
|  |-- geoarea.cpp
 
|  |-- geoarea.h
 
|  |-- geocircle.cpp
 
|  |-- geocircle.h
 
|  |-- geocoordinate.cpp
 
|  |-- geocoordinate.h
 
|  |-- geoellipse.cpp
 
|  |-- geoellipse.h
 
|  |-- geotext.cpp
 
|  |-- geotext.h
 
|  |-- geovector.cpp
 
|  `-- geovector.h
 
|-- interface
 
|  |-- entitydispatch.h
 
|  |-- entityvisitor.h
 
|  |-- metatype.h
 
|  |-- snapable.h
 
|  `-- variantable.h
 
|-- math
 
|  |-- geointersect.cpp
 
|  `-- geointersect.h
 
|-- meta
 
|  |-- color.cpp
 
|  |-- color.h
 
|  |-- layer.cpp
 
|  |-- layer.h
 
|  |-- linewidth.cpp
 
|  |-- linewidth.h
 
|  |-- pen.cpp
 
|  `-- pen.h
 
|-- operations
 
|  |-- createentities.cpp
 
|  |-- createentities.h
 
|  |-- deleteentities.cpp
 
|  |-- deleteentities.h
 
|  |-- moveentities.cpp
 
|  |-- moveentities.h
 
|  |-- operation.h
 
|  |-- trimentity.cpp
 
|  |-- trimentity.h
 
|  `-- undoable.h
 
|-- primitive
 
|  |-- arc.cpp
 
|  |-- arc.h
 
|  |-- circle.cpp
 
|  |-- circle.h
 
|  |-- ellipse.cpp
 
|  |-- ellipse.h
 
|  |-- line.cpp
 
|  |-- line.h
 
|  |-- text.cpp
 
|  `-- text.h
 
`-- vo
 
    |-- entitycoordinate.h
 
    `-- entitydistance.h
 

Revision as of 05:56, 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.