Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
Best Of
Re: Product Catalog (New Custom Feature!) π
@eric_pesty & @Rhett_Robinson, We created a workflow for handling duplicate parts within the assembly such as (Frames, Pipe routing, etc..)
Check out π΅οΈAssembly Imposters (App + Feature)
It lets you tag parts in the part studio, then when you run the app in the assembly, it replaces the duplicate parts properly so that the BOM stays correct.
@anil_nakka547 99% of the time these are user errors, however I looked into it, and this actually may be a bug. The product catalog feature is also throwing the same edit logic error even though I haven't touched it since the video. I've created a support ticket. Will see what support says.
If i manually clear the array and then switch enum tabs, there is no error, but if i try to clear the array within edit logic, it goes crazy.
.
Re: How to make a slotted hole
πDon't get me wrong. I love the sheet metal environments in Onshape, it was one of the core reasons we switched to the software as an improvement from every other CAD system we were using before. It's just that the more useful a tool is the more I look for ways to use it outside the developers' original intended use case.
Re: Grid extrude with twist.
@charles_mcneice_ii I do stuff like this for the love of the game, just give me a shoutout in the video when you post it. I wanna see how these fly.
Re: How to bend a part along a projected curve
Ah to be a developer that can make tools that run without a feature tree, utterly unconcerned with build time. I'll definitely be stealing some inspiration from the Rhino UI for the final iteration of these tools but for now I needed direct control over all of my lattice points to prove some functionality. I think my next step is to poke at that Flex / Taper custom feature that's been floating around for awhile and rip out the surfacing core and replace it with proper FFD utils.
Re: A few more undocumented FeatureScript functions
Undocumented behaviour is usually a little harder to take advantage of. I've come across the hard coded feature names a few times.
There is some functionality that standard features have that I wish could make their way into general use, like multilingual support. Standard features are multilingual, Itd be great if I could make a multilingual custom feature.
I wrote an article a while back when I figured out why newSketch has a hidden parameter for specifically sheet metal, so sometimes you can take advantage of undocumented behaviour.
Re: A few more undocumented FeatureScript functions
Not undocumented functions but undocumented behavior of functions was discussed pretty widely in this thread.
There are apparently a number of hard-coded feature names in the standard library that change the behavior of the rest of the product. Some examples are that sheet metal contexts will never inherit the tree name unless your feature declaration is sheetMetalStart specifically, the in-context mate connector functionality discussed in that thread is only enabled when the feature declaration is mateConnector, you can't override the tree name of any computed feature name unless your feature declaration is either hole or routingCurve which have computed names but can be overridden by the user. I ran into an issue with library validation stuff where no copy of formedUtils would pass the sheet metal form library validation step even if it was unchanged from the original std.fs copy, it seems to be looking for the document ID to be referenced instead of the code.
I did find a lovely little operation called opSplitBySelfShadow that's gonna make its way into 456D Make. What it does is essentially a draft query where it takes an object as an input and returns all the faces that are visible from a direction and all the faces invisible from a direction, and will draw split lines on any shadowed faces from that direction that are included in the selection set. I originally was looking for a tool that would let me normalize geometry for my slices via this shadowing operation but discovered that it's actually also got some utility for stuff like 3d printer support generation potentially. Completely unused in the standard library right now.
A few more undocumented FeatureScript functions
Over on the SmartBench blog I've written another article discussing a few undocumented FeatureScript functions that I find useful.
While there are some hidden gems in the std code, just keep in mind that undocumented functions could produce unexpected results, or change without warning. Something to keep in mind if you use these in any business critical applications.
Are there any gems hidden in the featurescript std code that you've found to be useful?
Re: Shaders for three.js model viewer
I started working on my own version of this project just to get comfortable with the API and when I run a visualization on an assembly I found myself needing to do API calls to every part studio in the assembly to get the tessellation quality to work. This burned a bunch of my API budget and I was wondering if there's a better way to do it. Like hopefully a single API call to grab all the GLTFs in the assembly at decent quality as well as all the tessellated edges at the same quality. I'd settle for 2 calls. Gonna really put a damper on my application if it burns calls like they're candy.





