├── awesome.png └── README.md /awesome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dcowden/featurescript/HEAD/awesome.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Awesome FeatureScripts for Onshape 2 | ================================== 3 | 4 | ![ga tracker](https://www.google-analytics.com/collect?v=1&a=257770996&t=pageview&dl=https%3A%2F%2Fgithub.com%2Fdcowden%2Ffeaturescript&ul=en-us&de=UTF-8&cid=978224512.1377738459&tid=UA-115436381-1&z=887657232 "ga tracker") 5 | ![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg) 6 | ![FeatureScripts](https://img.shields.io/badge/FeatureScripts-95-blue.svg) 7 | 8 | ![Awesome](awesome.png) 9 | 10 | FeatureScript is a way to extend [Onshape](http://www.onshape.com) with really cool custom features. Sadly, Onshape does not provide a 'Featurescript Store' that lists all of the really good ones. Its official [list of FeatureScripts](https://www.onshape.com/featurescript) is not comprehensive or categorized. Onshape, however, does have another [FeatureScript](https://cad.onshape.com/FsDoc/) page with [tutorials](https://cad.onshape.com/FsDoc/tutorials/create-a-slot-feature.html) and [documentation](https://cad.onshape.com/FsDoc/library.html). You can also view the [Onshape Standard Library Source](https://cad.onshape.com/documents/12312312345abcabcabcdeff). 11 | 12 | ### Road Map 13 | This list is and will always be community edited. Future plans include adding authors, pictures, and a rating/voting system. 14 | 15 | #### Submitting Changes/Additions 16 | Feedback is welcome! Please [log an issue](https://github.com/dcowden/featurescript/issues/new) or submit a Pull Request if you have changes you recommend. 17 | 18 | Joinery 19 | ------- 20 | 21 | #### [Break off Tabs](https://cad.onshape.com/documents/eea009fcf35a0cd683265767) 22 | Creates sheet metal tabs that easily break off. 23 | 24 | #### [Box/Dovetail Joint](https://cad.onshape.com/documents/57612867e4b018f59e4d52ce) 25 | Creates a finger joint or dovetail joint between two parts. 26 | 27 | #### [Butt Joint With Pin](https://cad.onshape.com/documents/deaa950158a21eba4f7b2cda) 28 | Creates a butt joint between two parts, optionally adding a pin. It can do multiple parts. 29 | 30 | #### [Dogbone and Overcut](https://cad.onshape.com/documents/51695bc13e3d9fb286023c70) 31 | Creates dogbones and overcuts for corners. 32 | 33 | #### [Kerf Compensation](https://cad.onshape.com/documents/57df36a88f63301089e8ac78) 34 | Offsets all cut faces of a planar part to compensate for cutting kerf. 35 | 36 | #### [Featurescript Laser Joint](https://cad.onshape.com/documents/578830e4e4b0e65410f9c34e) 37 | Creates finger joints from overlapping geometry. 38 | 39 | #### [Lap Joint](https://cad.onshape.com/documents/578ce95de4b0e425c1f00cda) 40 | Creates a lap joint between two parts with rectangular sections. 41 | 42 | #### [Mortise and Tenon](https://cad.onshape.com/documents/57ebf15e06acf910d5ac1b09) 43 | Creates a mortise and tenon joint. 44 | 45 | #### [Rabbet Joint](https://cad.onshape.com/documents/723f38c9725c6634d3ecef92) 46 | Creates a rabbet joint. 47 | 48 | #### [Snap Hook](https://cad.onshape.com/documents/5738c1f6e4b06c68b35e66aa) 49 | Creates a snap hook, a common fastening feature in plastic part design. 50 | 51 | #### [T-slot Joint](https://cad.onshape.com/documents/5791a167e4b03c2aa6af3b35) 52 | Creates a T-slot bolted connection between two planar parts. 53 | 54 | Surfaces, Curves, and Geometry 55 | ------------------------------ 56 | 57 | #### [3D Points](https://cad.onshape.com/documents/502108ab33bd9af500b73c1a) 58 | Import 3d points from text input. 59 | 60 | #### [3D Spline](https://cad.onshape.com/documents/573f7b36e4b02e83c71782fc) 61 | Creates an optionally closed spline through a sequence of vertices. 62 | 63 | #### [3D Spiral](https://cad.onshape.com/documents/59007ff281e43510ea3797a2) 64 | Creates a circular spiral along some spatial curve. 65 | 66 | #### [Contour Spiral](https://cad.onshape.com/documents/59007ff281e43510ea3797a2) 67 | Creates a spiral along the curve with user-defined cross section profile. 68 | 69 | #### [Curve Generator](https://cad.onshape.com/documents/d8aab1e0e7ae10038a6830e0) 70 | Generates parametric curves based on sketch relations between variable-driven geometrical constraints and a point. 71 | 72 | #### [Enhanced Planes](https://cad.onshape.com/documents/0de04acb5bac92ca16796edf) 73 | Create planes tangent to surfaces and other ways. 74 | 75 | #### [Extend Surface](https://cad.onshape.com/documents/b1b694bd5db0f702f9dc4b3b) 76 | Extends existing surface bodies. 77 | 78 | #### [Extrude Vertex](https://cad.onshape.com/documents/c5243aa82f2e404377db3017) 79 | Extrudes vertices in a specified direction to create a curve. It has second direction as well. 80 | 81 | #### [Fit Spline](https://cad.onshape.com/documents/4921880a2a6769256992599d) 82 | Takes one or more splines and fits one spline through them. 83 | 84 | #### [Flex FS](https://cad.onshape.com/documents/0bb13c1b6ed6d4a6dd75cf99) 85 | Takes sketch edges or regions and transforms them like if target curve would become a X axis of the sketch. It bends the sketch along some curve, to make cams or spread text over a spline. 86 | 87 | #### [Multi-Plane](https://cad.onshape.com/documents/575857fae4b06a2590ec9d29) 88 | Creates multiple, evenly spaced planes from a single reference plane or open/closed 2D or 3D edge. 89 | 90 | #### [Multi-Plane 2](https://cad.onshape.com/documents/578d3ba3e4b0fe44cbff7c02) 91 | This is the same as the Multi-Plane custom feature, but with a rotated plane array option. 92 | 93 | #### [NACA Airfoil](https://cad.onshape.com/documents/972dc31f395640d97dd6edca) 94 | Create an NACA airfoil by reading a CSV file. 95 | 96 | #### [Ortho Lines](https://cad.onshape.com/documents/5a344daad1ec87e14cdb6dc6) 97 | Quickly create orthogonal lines in the same plane. 98 | 99 | #### [Offset Faces](https://cad.onshape.com/documents/323312569b42b381b93ee95c) 100 | Offsets one or more faces. 101 | 102 | #### [Parametric Curve](https://cad.onshape.com/documents/578ff8b3e4b0e65410fcfda3) 103 | Creates curves described by equations. 104 | 105 | #### [Parametric Surface](https://cad.onshape.com/documents/57a62df8e4b03de4c9fcf154) 106 | Creates a surface driven by an equation of the form z = f(x,y). 107 | 108 | #### [Radiate Surface](https://cad.onshape.com/documents/0afe59275b703fb163481cb2) 109 | Creates a surface that originates from a selection of edges, and is always parallel to a selected plane. 110 | 111 | #### [RectToPolar](https://cad.onshape.com/documents/0bb13c1b6ed6d4a6dd75cf99) 112 | Creates flat cam profiles based on the 2d sketch with law of motion and sketch coordinate system (defined by mc). 113 | 114 | #### [Revolved Curve](https://cad.onshape.com/documents/57888f0ae4b0e65410f9ee45) 115 | Adds a revolved 3D curve with one of several shape profiles and configurable size, location, and pitch. 116 | 117 | #### [Sculpt Face](https://cad.onshape.com/documents/b8730d44070bc0466ad80444) 118 | Allows you to sculpt a face by adjusting the underlying surface using manipulators. 119 | 120 | #### [Sketch Wrapper](https://cad.onshape.com/documents/0bb13c1b6ed6d4a6dd75cf99) 121 | Wraps sketched curves around cone and cylinder surfaces like 3d curves. 122 | 123 | #### [Surface Pattern](https://cad.onshape.com/documents/6988ff60065e4c34350ca5e1) 124 | Patterns a part across a surface of a body, either subtracting the part from the body or adding to it. 125 | 126 | #### [Tangent Plane](https://cad.onshape.com/documents/68455a5d522e81cd65a35211) 127 | Creates tangent planes to any surface with an orientation option of any vertex, plane or face. 128 | 129 | #### [Sweep Normal](https://cad.onshape.com/documents/ba3c5f086342a4d4d9c66071) 130 | Maintains a sweep profile's normalcy relative to a reference surface instead of the sweep path. 131 | 132 | #### [Variable Section Sweep](https://cad.onshape.com/documents/2d81c59d7fc5df36ecbaecf3) 133 | Proof of concept that creates a loft by a number of sketch cross sections along some curve varying value of sketch variables via reference control curves. 134 | 135 | Manufacturing and 3d Printing Features 136 | -------------------------------------- 137 | 138 | #### [End Flange](https://cad.onshape.com/documents/57886436e4b038b786de90ff) 139 | Allows you to add a flange onto a planar surface of a solid body. 140 | 141 | #### [Full Round Fillet](https://cad.onshape.com/documents/3d52520839c0fa3587798c0f) 142 | Creates fully rounded fillets. 143 | 144 | #### [Hex Infill](https://cad.onshape.com/documents/5729ffb4e4b077d8431a8cea) 145 | Creates an internally sparse structure of regular hexagons. 146 | 147 | #### [Lighten](https://cad.onshape.com/documents/573f7d70e4b0fddafb52148c) 148 | Creates pockets to lighten a solid part. 149 | 150 | #### [Part Draft](https://cad.onshape.com/documents/578ceef1e4b01a7c3b1f353f) 151 | Adds a draft to an entire part all at once. 152 | 153 | #### [Pocket Holes](https://cad.onshape.com/documents/5789a3c4e4b0e65410faa582) 154 | Creates pocket holes according to the thickness and the length of the part. 155 | 156 | #### [Pocket Holes](https://cad.onshape.com/documents/5c9f5a0c9e9568a64f8fce0f) 157 | Creates pocket holes from vertices. 158 | 159 | 160 | #### [Ports](https://cad.onshape.com/documents/bdb01b008db20251b8a967ad) 161 | Creates SAE J1926 straight thread ports. 162 | 163 | #### [Round Emboss](https://cad.onshape.com/documents/c906e2264d158509753b1bdb) 164 | Creates round formed embosses with the specified height, diameter, and draft angle. Both planar and non-planar surfaces are supported. 165 | 166 | #### [Setback Fillet](https://cad.onshape.com/documents/833dffabd805010ce935bee2) 167 | Converts standard 3-surface spherical corner fillets into setback fillets 168 | 169 | Primitives 170 | ---------- 171 | 172 | #### [Bricks](https://cad.onshape.com/documents/573b8871e4b0fddafb4e953e) 173 | Creates building bricks in various styles and sizes. 174 | 175 | #### [Convex Polyhedron](https://cad.onshape.com/documents/cc448676dec18cad9d8b2b57) 176 | Creates a maximum convex solid for any orderless set of 3D vertices. 177 | 178 | #### [Torus, Dome, and Sphere](https://cad.onshape.com/documents/05a8f21030b0b305f4416e1a) 179 | Creates simple tori, domes and spheres. 180 | 181 | Structures 182 | ---------- 183 | 184 | #### [Airfoil](https://cad.onshape.com/documents/4bf18c75321ea2c8c2ea770d) 185 | Creates Aerofoils from NACA 4 digit standard or any Aerofoil in the UIUC Aerofoil Database, loft between them and then break the created wing into structural components. 186 | 187 | #### [ANSI Steel Generator](https://cad.onshape.com/documents/b66d1ff63684957c167272d8) 188 | Creates standard AISC structure steel shapes. 189 | 190 | #### [8020 Profile Generator](https://cad.onshape.com/documents/ccf713ca7463aeb3cbebce26) 191 | Creates 8020 Inc profiles. 192 | 193 | #### [Beams](https://cad.onshape.com/documents/e15c2c668d138f01242d0c80) 194 | Creates structural steel frames. 195 | 196 | #### [Australian Beams](https://cad.onshape.com/documents/cfcc264d41817d876589755c) 197 | Creates structural frames. Has options for material, custom profiles and more. 198 | 199 | Fasteners, Threads, and Hardware 200 | -------------------------------- 201 | 202 | #### [ANSI Washers](https://cad.onshape.com/documents/867babd232327bab6de5d8ec) 203 | Creates standard sized ANSI washers. 204 | 205 | #### [Fix PCB](https://cad.onshape.com/documents/9a9b81d17d4b69e58ad9b0b0) 206 | Automate the geometric simplification of imported electrical components attached to a single PCB. 207 | 208 | #### [O-Ring Generator](https://cad.onshape.com/documents/ae242486af63d55695d994a6) 209 | Creates O-rings that will fit into existing grooves. 210 | 211 | #### [Socket Head Cap Screw creator](https://cad.onshape.com/documents/2d7e0a6b68c2039da4221ebc) 212 | Creates socket head cap screws, plus the associated taps and counterbores. 213 | 214 | #### [Thread Creator](https://cad.onshape.com/documents/6b640a407d78066bd5e41c7a) 215 | Creates internal and external threads. 216 | 217 | Gears, Drives, Shafts, and Pulleys 218 | ---------------------------------- 219 | 220 | #### [Belt](https://cad.onshape.com/documents/57886eace4b0e425c1ef548a) 221 | Creates a belt around any number of pulleys. 222 | 223 | #### [Drive Train Generator](https://cad.onshape.com/documents/6527d86ca7126bbe5b04ca08) 224 | Creates gear drive trains based on sketch points selected and a final desired reduction ratio. An optional optimization algorithm can be enabled to make precise reductions. 225 | 226 | #### [Metric Keys](https://cad.onshape.com/documents/06f4d2c9a0d032207955bba4) 227 | Creates metric keys for shaft assembly. 228 | 229 | #### [Planetary Gears](https://cad.onshape.com/documents/b55a80bb510b8ff5cb20fd9a) 230 | Creates an epicyclic, or planetary, gear transmission using true involute gears. 231 | 232 | #### [Spur Gear](https://cad.onshape.com/documents/5742c8cde4b06c68b362d748) 233 | Creates mathematically correct spur gears with optional center bore hole and keyway. 234 | 235 | #### [Straight Spline](https://cad.onshape.com/documents/5848a5f5f680f5104c2bb48d) 236 | Creates an SAE Standard Straight Spline on the end of shafts. 237 | 238 | #### [Syncro Rotator](https://cad.onshape.com/documents/a0adddcc041efb15f8c3ad2a) 239 | Creates gear profiles automatically from another object. 240 | 241 | #### [Wave Spring](https://cad.onshape.com/documents/5720a838e4b0c6d25c8c1ff1) 242 | Creates a wave spring at the origin with mate connectors at either end for easy transform or assembly. 243 | 244 | #### [Wiring](https://cad.onshape.com/documents/6dff8f67e2ef0b33193a10d2) 245 | Creates wire bundles that go through sketch points in 3D space. 246 | 247 | #### [Hose Routing](https://cad.onshape.com/documents/54d06a3b8abd1fcb0daba26b/) 248 | Route hoses through points in 3D space, controlling straightness and measuring minimum bend radius. Similar to the Wiring featurescript (above). More details [on the forum](https://forum.onshape.com/discussion/11110/new-featurescript-hose-routing/p1) 249 | 250 | Text and Decorative 251 | ------------------- 252 | 253 | #### [Curved Text](https://cad.onshape.com/documents/cfec40e2b66bb4ddb2f3414b) 254 | Creates embossed or raised text on flat and curved surfaces. 255 | 256 | Patterning 257 | ---------- 258 | 259 | #### [Circular Pattern](https://cad.onshape.com/documents/57b7740ce4b002b1d76d73b8) 260 | Adds radial direction and seed location options to Onshape’s standard circular pattern. 261 | 262 | #### [Curve Pattern Normal](https://cad.onshape.com/documents/57ef018093832a1090983bfe) 263 | Allows you to orient the seed features/bodies/surfaces to maintain their normal position relative to a reference surface. 264 | 265 | #### [Fill Pattern](https://cad.onshape.com/documents/57361ad4e4b00e5012c3857c) 266 | Patterns faces within a target face while avoiding the boundary of the face. 267 | 268 | #### [Linear Pattern](https://cad.onshape.com/documents/71cc9029c61a48f5de3430d3) 269 | Adds a third direction to Onshape's standard linear pattern. 270 | 271 | #### [Linear Pattern with Seed Location](https://cad.onshape.com/documents/57b77f0de4b0a399ffb138eb) 272 | Adds ability to select seed location to linear pattern 273 | 274 | #### [Parameter Pattern](https://cad.onshape.com/documents/d66ea5fec7a939e866ecbd6f) 275 | Creates "configurations" of geometry with predefined references to a set of user-defined variables. 276 | 277 | #### [Point Pattern](https://cad.onshape.com/documents/9fca78cb66a0bc83e359eb3e) 278 | Patterns parts at sketch vertices. 279 | 280 | #### [Transform Pattern](https://cad.onshape.com/documents/25a0a6dfaa76e64574a5e0db) 281 | Transforms faces, bodies or features to the positions defined by vertices or mate connectors. For body transfoms allows new/add/remove/intersect options. 282 | 283 | Sheet Metal 284 | ----------- 285 | 286 | #### [Sheet Metal Flange Plus](https://cad.onshape.com/documents/b4b180faf4fe467356a58c21) 287 | A feature that allows you to set the distance of a flange from the inside instead of the outside of the sheet metal part. This acts like the Solidworks flange feature. 288 | 289 | #### [Sheet Metal Shaped Flange](https://cad.onshape.com/documents/602655eff016f183fc184978) 290 | A feature that allows the user to sketch a shape for a flange. 291 | 292 | #### [Sheet Metal Hem](https://cad.onshape.com/documents/9190d114354a31d33ed2eb4f) 293 | A feature that adds a hem onto a sheet metal part. Currently supports rolled, closed and open hems. 294 | 295 | #### [Sheet Metal Model Plus](https://cad.onshape.com/documents/a39db7615a2a945ffb7076c3) 296 | An extended version of the "Sheet Metal Model" feature that adds an option for bend allowance. 297 | 298 | #### [Sheet Metal Overcut / Dogbone](https://cad.onshape.com/documents/b99915c0b73924ca981bc57f) 299 | A feature that creates overcuts and dogbones that are compatible with sheet metal. When creating dogbones, you can use a manipulator to change the direction of separate dogbones. 300 | 301 | Analysis 302 | -------- 303 | 304 | #### [Auto Layout](https://cad.onshape.com/documents/576e01dbe4b0cc2e7f46a55d) 305 | Nests flat parts into a set of flat sheets for cutting out. 306 | 307 | #### [Compare](https://cad.onshape.com/documents/4112c3e76815ff51c3cb083a) 308 | Compares the geometry of 2 parts (or groups of parts), and if there are differences, creates composite part(s) containing those differences. Useful for assessing students or in other situations where you need to ensure part geometry has been modelled accurately. 309 | 310 | #### [Calculate Bounds](https://cad.onshape.com/documents/2ce3e64026df1ac7e63b98bd) 311 | Calculates the bounds of the selected objects. 312 | 313 | #### [Measure Distance](https://cad.onshape.com/documents/572b968ce4b07aad125dbaaf) 314 | Measures the distance between two things in a Part Studio and assigns the result to a variable. 315 | 316 | #### [Measure Value](https://cad.onshape.com/documents/77baa8153589a7fc5f289829) 317 | Measures distance, angle, perimeter, area or volume for selected entities and saves the result to the variable. 318 | 319 | #### [Ray Tracer](https://cad.onshape.com/documents/258a19506c555f400614c944) 320 | Simulates a ray of light reflecting off objects and refracting through them. 321 | 322 | #### [Tracer FS](https://cad.onshape.com/documents/2e01af46ce2cd5b90ee41156) 323 | Traces geometrical parameters of the motion of a flat mechanism defined by sketch, prints them to the console and creates a dependency graph on XY work plane. 324 | 325 | #### [Graphic dependency](https://cad.onshape.com/documents/7ae741a97b8c8be22417809c) 326 | Defines dependency between a pair of variables by means of sketched law curve. 327 | 328 | Misc 329 | ---- 330 | 331 | #### [Onshape Standard Library Source (std)](https://cad.onshape.com/documents/12312312345abcabcabcdeff) 332 | The Onshape Standard Library Source Code. 333 | --------------------------------------------------------------------------------