Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations IDS on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

SW Limitations. 2

Status
Not open for further replies.

MadMango

Mechanical
May 1, 2001
6,992
Most of us know of the "300 mates" limitation for assemblies. And we also know that our feature sketches shouldn't be too complicated.

Does anyone know how many sketch segments qualify as being too many? Also, is there a good way of finding the number of sketch segments in a sketch?

[green]"But what... is it good for?"[/green]
Engineer at the Advanced Computing Systems Division of IBM, 1968, commenting on the microchip.
Have you read faq731-376 to make the best use of Eng-Tips Forums?
 
Replies continue below

Recommended for you

Does anyone know how many sketch segments qualify as being too many?

The only way I can tell is when it gets slow - depending on complexity of the sketch. I know that's not a good answer, but that is the best way to tell. This will vary not only because of Complexity of the sketch but also hardware and other software running.

But hey I have been wrong before?

Also, is there a good way of finding the number of sketch segments in a sketch?

No there are no application within SW to do this. I'm sure it wouldn't be that hard for SW to put this feature in, or maybe if you ask TheTick really nice he will make something for you?

Regards,

Scott Baugh, CSWP [pc2]

faq731-376
 
There are a number of "Get____count" methods in the sketch API. Looks like one must tally up lines, arcs, etc. separately and then add tem up.

[bat]"An object at rest can not be stopped."[bat]
 
If you preselect them, you can use the (API) Selection Manager and get the number of selected items.

Ken
 
Most of us know of the "300 mates" limitation for assemblies.

For those of us that don't, could you please enlighten us?
Thanks,
Ken
 
This just means that your top-level mates should be no more than 300 mates. More mates can introduce errors in your assemblies.

[green]"But what... is it good for?"[/green]
Engineer at the Advanced Computing Systems Division of IBM, 1968, commenting on the microchip.
Have you read faq731-376 to make the best use of Eng-Tips Forums?
 
I've never heard this before (with an actual number). So since it's pretty much 3 mates per component, then it's recommended that any assembly have a max. of 100 components?

Is this something you follow or something you found out from other sources? I doubt SolidWorks would ever issue a statement like this, but I am all for finding ways to increase large assembly stability.

Thanks for the info.,
Ken
 
I believe it was posted by an offical SW source, but have myself only heard it through word-of-mouth.

A way to get beyond the limitation is to use more sub-assemblies in your top-level models, along with configurations to supress unrelated parts and features.

[green]"But what... is it good for?"[/green]
Engineer at the Advanced Computing Systems Division of IBM, 1968, commenting on the microchip.
Have you read faq731-376 to make the best use of Eng-Tips Forums?
 
MadMango
What kind of errors can we expect in the assembly?

Regards
 
Mostly rebuild errors and over constrained errors, not to mention a hit on computer performance.

[green]"But what... is it good for?"[/green]
Engineer at the Advanced Computing Systems Division of IBM, 1968, commenting on the microchip.
Have you read faq731-376 to make the best use of Eng-Tips Forums?
 
For those interested, here's a marco to count the number of sketch segments in an active feature sketch.

Code:
Option Explicit

Public Enum swSkSegments_e
    swSketchLINE = 0
    swSketchARC = 1
    swSketchELLIPSE = 2
    swSketchSPLINE = 3
    swSketchTEXT = 4
    swSketchPARABOLA = 5
End Enum

Dim Total As Integer



Sub main()
    Dim sSkSegmentsName(5)      As String
    
    Dim swApp                   As SldWorks.SldWorks
    Dim swModel                 As SldWorks.ModelDoc2
    Dim swSelMgr                As SldWorks.SelectionMgr
    Dim swFeat                  As SldWorks.feature
    Dim swSketch                As SldWorks.sketch
    Dim vSkSegArr               As Variant
    Dim vSkSeg                  As Variant
    Dim swSkSeg                 As SldWorks.SketchSegment
    Dim swSkLine                As SldWorks.SketchLine
    Dim swSkArc                 As SldWorks.SketchArc
    Dim swSkEllipse             As SldWorks.SketchEllipse
    Dim swSkSpline              As SldWorks.SketchSpline
    Dim swSkText                As SldWorks.SketchText
    Dim swSkParabola            As SldWorks.SketchParabola
    Dim vID                     As Variant
    Dim i                       As Long
    Dim bRet                    As Boolean
    Total = 0
  On Error GoTo huboalgo
    
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swSelMgr = swModel.SelectionManager
    Set swFeat = swSelMgr.GetSelectedObject4(1)
    Set swSketch = swFeat.GetSpecificFeature
   
    
    vSkSegArr = swSketch.GetSketchSegments
    For Each vSkSeg In vSkSegArr
        Set swSkSeg = vSkSeg
        Total = Total + 1
    Next vSkSeg
    MsgBox "Total of segments: " & Total, vbInformation, "SEGMENTS COUNT"
    GoTo THEEND
huboalgo:
    MsgBox "Please select an sketch", vbCritical, "MACRO ERROR"
THEEND:
End Sub

[green]"But what... is it good for?"[/green]
Engineer at the Advanced Computing Systems Division of IBM, 1968, commenting on the microchip.
Have you read faq731-376 to make the best use of Eng-Tips Forums?
 
TheTick- "word".

An add-in might be nice, depending on how much usability everyone thinks this little utility has. I'm happy with it as macro and could go either way, I won't look a gift horse in the mouth.

[green]"But what... is it good for?"[/green]
Engineer at the Advanced Computing Systems Division of IBM, 1968, commenting on the microchip.
Have you read faq731-376 to make the best use of Eng-Tips Forums?
 
Well, I've noticed some of my assemblies behave strangely (for example, as MadMango mentioned, overconstrained parts when it's obvious that there are mates missing to reach this state). Now I suspect the "300 mates" error.

Counting 300 mates it's not an appealing task. So this macro is most welcome. An add-in will be the cherry on top of the cake.

Thanks MadMango and TheTick.

Regards
 
macPT ... To find the number of top level mates all you have to do is run the Assembly statistics under the Tools menu.
The above macro is for counting the number of sketch segments ... sort of a Sketch statistics feature.

[cheers]
 
Thanks for that reminder [blue]Scott[/blue], it's posted.

[green]"But what... is it good for?"[/green]
Engineer at the Advanced Computing Systems Division of IBM, 1968, commenting on the microchip.
Have you read faq731-376 to make the best use of Eng-Tips Forums?
 
CBL
Damn! I should avoid late posts and sleep a bit more!

Regards
 
Addin update:

I finished programming, compiling, testing, packaging. All that's left is to update my website with a link to the new program. This should happen by Friday morning.

[bat]"An object at rest can not be stopped."[bat]
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor