Alpha 3
This commit is contained in:
parent
9d9c3f819d
commit
f98f3193cb
@ -757,7 +757,7 @@ class App:
|
||||
self.units_label.set_text("[" + self.options["units"] + "]")
|
||||
|
||||
#### Check for updates ####
|
||||
self.version = 2
|
||||
self.version = 3
|
||||
t1 = threading.Thread(target=self.versionCheck)
|
||||
t1.daemon = True
|
||||
t1.start()
|
||||
@ -937,8 +937,6 @@ class App:
|
||||
percentage += delta
|
||||
GLib.idle_add(lambda: app_obj.set_progress_bar(percentage, "Re-plotting..."))
|
||||
|
||||
#app_obj.plotcanvas.auto_adjust_axes()
|
||||
#self.on_zoom_fit(None)
|
||||
GLib.idle_add(app_obj.plotcanvas.auto_adjust_axes)
|
||||
GLib.idle_add(lambda: self.on_zoom_fit(None))
|
||||
GLib.timeout_add(300, lambda: app_obj.set_progress_bar(0.0, ""))
|
||||
@ -2308,7 +2306,7 @@ class App:
|
||||
"""
|
||||
Delete the currently selected FlatCAMObj.
|
||||
|
||||
:param widget: The widget from which this was called.
|
||||
:param widget: The widget from which this was called. Ignored.
|
||||
:return: None
|
||||
"""
|
||||
|
||||
@ -2852,7 +2850,6 @@ class Measurement:
|
||||
def on_click(self, event):
|
||||
if self.point1 is None:
|
||||
self.point1 = (event.xdata, event.ydata)
|
||||
return
|
||||
else:
|
||||
self.point2 = copy.copy(self.point1)
|
||||
self.point1 = (event.xdata, event.ydata)
|
||||
|
74
FlatCAM.ui
74
FlatCAM.ui
@ -2749,6 +2749,11 @@ this object.</property>
|
||||
<object class="GtkLabel" id="label84">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_markup" translatable="yes">The object that you want to flip around,
|
||||
usually the Gerber object defining the
|
||||
bottom copper layer. You can also flip
|
||||
an Excellon object in case you want to drill
|
||||
from the bottom side.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="xpad">3</property>
|
||||
<property name="label" translatable="yes">Bottom Layer:</property>
|
||||
@ -2780,6 +2785,8 @@ this object.</property>
|
||||
<object class="GtkLabel" id="label85">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_markup" translatable="yes"><b>X</b> flips from top to bottom,
|
||||
<b>Y</b> flips from left to right.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="xpad">3</property>
|
||||
<property name="label" translatable="yes">Mirror Axis:</property>
|
||||
@ -2840,6 +2847,8 @@ this object.</property>
|
||||
<object class="GtkLabel" id="label86">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_markup" translatable="yes">How the location of the axis
|
||||
is specified.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="xpad">3</property>
|
||||
<property name="label" translatable="yes">Axis location:</property>
|
||||
@ -2862,6 +2871,8 @@ this object.</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_markup" translatable="yes">The axis must pass through the
|
||||
specified point.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
@ -2879,6 +2890,8 @@ this object.</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="tooltip_markup" translatable="yes">The axis cuts a box (some Geometry object
|
||||
in the project) exactly in the middle.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<property name="group">rb_mirror_point</property>
|
||||
@ -2901,6 +2914,15 @@ this object.</property>
|
||||
<object class="GtkLabel" id="label87">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_markup" translatable="yes"><b>Point:</b> Click on the desired point on the plot.
|
||||
This copies the point to the clipboard. Then paste it
|
||||
in the box by right-clicking and choosing paste, or
|
||||
hitting Control-v.
|
||||
|
||||
<b>Box:</b> Choose an object in the project
|
||||
that you want to use as a box for specifying
|
||||
the flipping axis. If the object is not a rectangle,
|
||||
a bounding box arounf the object is calculated.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="xpad">3</property>
|
||||
<property name="label" translatable="yes">Point/Box:</property>
|
||||
@ -2932,6 +2954,14 @@ this object.</property>
|
||||
<object class="GtkLabel" id="label89">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_markup" translatable="yes">List of coordinates where to drill alignment
|
||||
holes, in the format <b>(x1, y1), (x2, y2)</b>, etc.
|
||||
You can click on the plot and paste each
|
||||
coordinate here.
|
||||
|
||||
All <b>coordinates are duplicated</b> and mirrored
|
||||
automatically around the axis so drill pattens are
|
||||
identical when flipping your board around.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="xpad">3</property>
|
||||
<property name="label" translatable="yes">Algnmt holes:</property>
|
||||
@ -2960,6 +2990,8 @@ this object.</property>
|
||||
<object class="GtkLabel" id="label90">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_markup" translatable="yes">Diameter of the drill for
|
||||
the aligment holes.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="xpad">3</property>
|
||||
<property name="label" translatable="yes">Drill diam.:</property>
|
||||
@ -3006,6 +3038,9 @@ this object.</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="tooltip_markup" translatable="yes">Creates an Excellon object with
|
||||
the specified holes and their
|
||||
mirror pairs.</property>
|
||||
<property name="halign">end</property>
|
||||
<signal name="activate" handler="on_create_aligndrill" swapped="no"/>
|
||||
<signal name="clicked" handler="on_create_aligndrill" swapped="no"/>
|
||||
@ -3019,11 +3054,14 @@ this object.</property>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="button18">
|
||||
<property name="label" translatable="yes">Create Mirror</property>
|
||||
<property name="label" translatable="yes">Mirror Object</property>
|
||||
<property name="width_request">120</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="tooltip_markup" translatable="yes">Mirrors the object specified in
|
||||
<b>Bottom Layer</b> around the
|
||||
specified axis.</property>
|
||||
<property name="halign">end</property>
|
||||
<signal name="activate" handler="on_create_mirror" swapped="no"/>
|
||||
<signal name="clicked" handler="on_create_mirror" swapped="no"/>
|
||||
@ -3091,6 +3129,8 @@ this object.</property>
|
||||
<property name="label">gtk-new</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_text" translatable="yes">New project. Clears all
|
||||
objects and options.</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="use_stock">True</property>
|
||||
<signal name="activate" handler="on_file_new" swapped="no"/>
|
||||
@ -3101,6 +3141,9 @@ this object.</property>
|
||||
<property name="label">Open Gerber</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Load a Gerber file and create
|
||||
a Gerber Object in the current
|
||||
project.</property>
|
||||
<property name="image">image2</property>
|
||||
<property name="use_stock">False</property>
|
||||
<signal name="activate" handler="on_fileopengerber" swapped="no"/>
|
||||
@ -3111,6 +3154,9 @@ this object.</property>
|
||||
<property name="label">Open Excellon</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Load an Excellon file and create
|
||||
an Excellon Object in the current
|
||||
project.</property>
|
||||
<property name="image">image1</property>
|
||||
<property name="use_stock">False</property>
|
||||
<signal name="activate" handler="on_fileopenexcellon" swapped="no"/>
|
||||
@ -3121,6 +3167,9 @@ this object.</property>
|
||||
<property name="label">Open G-Code</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Load a G-Code file and create
|
||||
a CNCJob Object in the current
|
||||
project.</property>
|
||||
<property name="image">image3</property>
|
||||
<property name="use_stock">False</property>
|
||||
<signal name="activate" handler="on_fileopengcode" swapped="no"/>
|
||||
@ -3230,8 +3279,10 @@ this object.</property>
|
||||
<property name="label">gtk-delete</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="tooltip_text" translatable="yes">Deletes the selected object.</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="use_stock">True</property>
|
||||
<signal name="activate" handler="on_delete" swapped="no"/>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
@ -5059,6 +5110,27 @@ defaults.</property>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
|
13
README
13
README
@ -5,15 +5,4 @@ FlatCAM: 2D Post-processing for Manufacturing
|
||||
|
||||
FlatCAM is a program for preparing CNC jobs for making PCBs on a CNC router.
|
||||
Among other things, it can take a Gerber file generated by your favorite PCB
|
||||
CAD program, and create G-Code for Isolation routing. But there's more. See
|
||||
the features list below.
|
||||
|
||||
* Powerful user interface for visualization.
|
||||
* Viewers for: Gerber, Excellon, G-Code.
|
||||
* Create isolation routing geometry from Gerber.
|
||||
* Create optimized G-Code from geometry.
|
||||
* Double sided PCB tools.
|
||||
* Clearing copper areas.
|
||||
* Measuring tool (planned).
|
||||
* PCB cutout tool.
|
||||
* Table flattening tool.
|
||||
CAD program, and create G-Code for Isolation routing. But there's more.
|
@ -1 +1 @@
|
||||
{"gerber_cutouttooldia":0.07, "geometry_paintoverlap": 0.15, "geometry_plot": true, "excellon_feedrate": 5.0, "gerber_plot": true, "gerber_mergepolys": true, "excellon_drillz": -0.1, "geometry_feedrate": 3.0, "units": "IN", "excellon_travelz": 0.1, "gerber_multicolored": false, "gerber_solid": true, "gerber_isopasses": 1, "excellon_plot": true, "gerber_isotooldia": 0.016, "cncjob_tooldia": 0.016, "geometry_travelz": 0.1, "gerber_cutoutmargin": 0.2, "excellon_solid": false, "geometry_paintmargin": 0.01, "geometry_cutz": -0.002, "geometry_cnctooldia": 0.016, "geometry_painttooldia": 0.0625, "gerber_gaps": "4", "gerber_bboxmargin": 0.0, "cncjob_plot": true, "gerber_cutoutgapsize": 0.15, "gerber_isooverlap": 0.17, "gerber_bboxrounded": false, "gerber_noncopperrounded": false, "geometry_multicolored": false, "gerber_noncoppermargin": 0.0, "geometry_solid": false}
|
||||
{"gerber_noncopperrounded": false, "geometry_paintoverlap": 0.15, "geometry_plot": true, "excellon_feedrate": 5.0, "gerber_plot": true, "gerber_mergepolys": true, "excellon_drillz": -0.1, "geometry_feedrate": 3.0, "units": "IN", "excellon_travelz": 0.1, "gerber_multicolored": false, "gerber_solid": true, "gerber_isopasses": 1, "excellon_plot": true, "gerber_isotooldia": 0.016, "gerber_bboxmargin": 0.0, "cncjob_tooldia": 0.016, "geometry_travelz": 0.1, "gerber_cutoutmargin": 0.2, "excellon_solid": false, "geometry_paintmargin": 0.01, "geometry_cutz": -0.002, "geometry_cnctooldia": 0.016, "gerber_cutouttooldia": 0.07, "gerber_gaps": "4", "geometry_painttooldia": 0.0625, "cncjob_plot": true, "gerber_cutoutgapsize": 0.15, "gerber_isooverlap": 0.15, "gerber_bboxrounded": false, "geometry_multicolored": false, "gerber_noncoppermargin": 0.0, "geometry_solid": false}
|
Loading…
Reference in New Issue
Block a user