We have moved to https://dokuwiki.librecad.org/

Lots of content was already moved to the new wiki, but there is still work to do. If you want to contribute, please register a new account at https://dokuwiki.librecad.org/

This wiki will be kept for a while to keep search engine results valid. Moved sites may be deleted here in future.

Difference between revisions of "GSoC 2014"

From LibreCAD wiki
Jump to: navigation, search
(Put in Category:Developers)
 
(6 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
[[File:GSOC_2014_logo.jpg|100px|GSoC 2014 logo]]
 
[[File:GSOC_2014_logo.jpg|100px|GSoC 2014 logo]]
  
= LibreCAD Projects =
+
= LibreCAD Projects Ideas =
  
 
LibreCAD is a free Open Source CAD application for Windows, Apple and Linux. Support and documentation is free from our large, dedicated community of users, contributors and developers.
 
LibreCAD is a free Open Source CAD application for Windows, Apple and Linux. Support and documentation is free from our large, dedicated community of users, contributors and developers.
Line 19: Line 19:
  
 
|- bgcolor=#fafafa
 
|- bgcolor=#fafafa
|width=62%|'''[[SmartSnap]]:''' Brief explanation: Similar to feet and inches support, support for supplying LibreCAD with different units. For example if LibreCAD was set to 'foot' in the unit setup, it should be possible to enter a unit of [1" + 2'], or [1.2meter]. LibreCAD would then convert the entered units to the unit LibreCAD is operating/set for. Various measuring system should be supported.
+
|width=62%|'''[[SmartSnap]]:''' Currently LibreCAD has various snap capabilities, but they are only directly on entities, or on the grid.
 +
With smart snap LibreCAD can find endpoints, length, arc sizes of the 'same' at different locations. This allows for much faster creating of drawings because entering of new entities require less steps. Each time LibreCAD finds a smart snap, the point or entry would light up on the screen showing the users the snap interaction.
 
|align=center|C++
 
|align=center|C++
 
|align=center|MEDIUM
 
|align=center|MEDIUM
Line 25: Line 26:
 
|-
 
|-
  
|- bgcolor=#fafafa
+
|- bgcolor=#ffffff
 
|width=62%|'''[[Support for multiple units upon data entry]]:'''  Similar to [http://sourceforge.net/tracker/index.php?func=detail&aid=3399363&group_id=342582&atid=1433847 feet and inches support], support for supplying LibreCAD with different units. For example if LibreCAD was set to 'foot' in the unit setup, it should be possible to enter a unit of [1" + 2'], or [1.2meter]. LibreCAD would then convert the entered units to the unit LibreCAD is operating/set for. Various measuring system should be supported.
 
|width=62%|'''[[Support for multiple units upon data entry]]:'''  Similar to [http://sourceforge.net/tracker/index.php?func=detail&aid=3399363&group_id=342582&atid=1433847 feet and inches support], support for supplying LibreCAD with different units. For example if LibreCAD was set to 'foot' in the unit setup, it should be possible to enter a unit of [1" + 2'], or [1.2meter]. LibreCAD would then convert the entered units to the unit LibreCAD is operating/set for. Various measuring system should be supported.
 
|align=center|C++
 
|align=center|C++
Line 33: Line 34:
  
 
|}
 
|}
 +
 +
 +
 +
= HOW TO SUBMIT A PATCH? =
 +
1) To create patch first clone our repository and make a new branch
 +
<pre>$git clone https://github.com/LibreCAD/LibreCAD.git
 +
$cd LibreCAD
 +
$git checkout -b new_branch</pre>
 +
2) Update your code in new branch<br>
 +
3) Create a patch:<br>
 +
Assuming your changes are in new branch and didn’t yet merge it to master branch.
 +
<pre>$git format-patch master --stdout > my_patch.patch</pre>
 +
This will create a new file my_patch.patch with all changes from new_branch<br>
 +
Now, you have a patch for the fix you wrote. Send it to the maintainer of the project …
 +
 +
It's recommended to use github's pull requests instead of patches: [https://help.github.com/articles/using-pull-requests Using pull requests]
 +
 +
[[Category:Developers]]

Latest revision as of 18:33, 25 April 2015

GSoC 2014 logo

LibreCAD Projects Ideas

LibreCAD is a free Open Source CAD application for Windows, Apple and Linux. Support and documentation is free from our large, dedicated community of users, contributors and developers.

Languages Difficulty Contacts
LibreCAD 3 kickoff: LibreCAD is a popular 2D CAD tool but is based on a old (10 years old) codebase that is hard to add features to. LibreCAD 3 aim's to completely rewrite LibreCAD in different different libraries to make coding against librecad easer. C++ MEDIUM R. van Twisk
SmartSnap: Currently LibreCAD has various snap capabilities, but they are only directly on entities, or on the grid.

With smart snap LibreCAD can find endpoints, length, arc sizes of the 'same' at different locations. This allows for much faster creating of drawings because entering of new entities require less steps. Each time LibreCAD finds a smart snap, the point or entry would light up on the screen showing the users the snap interaction.

C++ MEDIUM dli (Dongxu Li < dongxuli2011 at gmail >
Support for multiple units upon data entry: Similar to feet and inches support, support for supplying LibreCAD with different units. For example if LibreCAD was set to 'foot' in the unit setup, it should be possible to enter a unit of [1" + 2'], or [1.2meter]. LibreCAD would then convert the entered units to the unit LibreCAD is operating/set for. Various measuring system should be supported. C++ MEDIUM R. van Twisk <gsoc_2014@rvt.dds.nl>,dli (Dongxu Li < dongxuli2011 at gmail >


HOW TO SUBMIT A PATCH?

1) To create patch first clone our repository and make a new branch

$git clone https://github.com/LibreCAD/LibreCAD.git
$cd LibreCAD
$git checkout -b new_branch

2) Update your code in new branch
3) Create a patch:
Assuming your changes are in new branch and didn’t yet merge it to master branch.

$git format-patch master --stdout > my_patch.patch

This will create a new file my_patch.patch with all changes from new_branch
Now, you have a patch for the fix you wrote. Send it to the maintainer of the project …

It's recommended to use github's pull requests instead of patches: Using pull requests