Description |
---|
Filter wires from sketches, 2D offsets, scales, rearranges wire order Macro version: 0.2023.10.19 Last modified: 2022-10-19 FreeCAD version: python 3 versions Download: ToolBar Icon Author: TheMarkster |
Author |
TheMarkster |
Download |
ToolBar Icon |
Links |
Full Documentation on Github Macros recipes How to install macros How to customize toolbars |
Macro Version |
0.2023.10.19 |
Date last modified |
2022-10-19 |
FreeCAD Version(s) |
python 3 versions |
Default shortcut |
None |
See also |
None |
WireFilter is a macro that can be used to filter certain wires from a sketch. It can also be used on any object with wires, such as a solid. With WireFilter you can do a 2D offset of a wire, you can scale the wire, you can use one of 4 different facemakers (Part::FaceMakerBullseye, Part::FaceMakerCheese, Part::FaceMakerSimple, or Part::FaceMakerExtrusion) if you want to make a face. You can also reset the wire order, which can be useful where a loft is criss-crossing because the wire order is different with the 2 sketches being used.
Examples and full documentation can be found on github: WireFilter.
In the screenshot below, WireFilter is used to make faces from a bullseye sketch (with nested holes within holes) for use with a PartDesign::Pad. Normally, Pad cannot manage such sketches, but if we make the face for it (using FaceMakerBullseye) and select the faces for the Pad it will be able to pad the WireFilter.
Macro WireFilter screenshot
Sometimes Pad cannot find the correct normal and the WireFilter is padded off in the wrong direction. This can be fixed by toggling the Fix Normal property of the WireFilter object, which sets the Pad's custom direction to the correct normal. This also works for Extrude when it fails to find the correct normal.
Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro
# This code is copied instead of the original macro code # to guide the user to the online download page. # Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki # or if the RAW code URL is somewhere else in the wiki. from PySide import QtGui, QtCore diag = QtGui.QMessageBox(QtGui.QMessageBox.Information, "Information", "This macro must be downloaded from this link\n" "\n" "https://gist.github.com/mwganson/0aedd5e9057650d0a1f0483f3cc2fa6c/raw/28575fbb2042790d779bcd293c048a4123f4a771/wirefilter.FCMacro" + "\n" "\n" "Quit this window to access the download page") diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) diag.setWindowModality(QtCore.Qt.ApplicationModal) diag.exec_() import webbrowser webbrowser.open("https://gist.github.com/mwganson/0aedd5e9057650d0a1f0483f3cc2fa6c/raw/28575fbb2042790d779bcd293c048a4123f4a771/wirefilter.FCMacro")
Macro Wirefilter.FCMacro